关于 performing-kerberoasting-attack
面向 Active Directory 安全测试的 Kerberoasting 技能,介绍 SPN 发现、票据提取、离线破解和凭据验证流程,适用于获授权的评估。
主要功能
- 01枚举 SPN 账户
- 02请求并提取 TGS 票据
- 03离线破解票据
- 04验证凭据并评估权限
适用场景
- 01在授权的 AD 测试中评估 Kerberoasting 风险
- 02审查服务账户的弱密码风险
- 03调查相关事件响应告警
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ mukul975/ anthropic-cybersecurity-skills --skill performing-kerberoasting-attack安装后在 Claude Code 中输入/performing-kerberoasting-attack确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
LICENSEassets/template.mdreferences/api-reference.mdstandards.mdworkflows.mdscripts/agent.pyprocess.py详细介绍
执行 Kerberoasting 攻击
法律声明: 本技能仅用于经授权的安全测试和教育目的。未经授权对您不拥有或未获得书面许可测试的系统使用本技能属于违法行为,可能违反计算机欺诈相关法律。
概述
Kerberoasting 是一种后渗透技术,通过为设置了服务主体名称(SPN)的账户请求 Kerberos TGS(Ticket Granting Service,票据授予服务)票据,来攻击 Active Directory 中的服务账户。这些票据使用服务账户的 NTLM 哈希加密,因此可以在不产生失败登录事件的情况下进行离线暴力破解。这是 AD 环境中最常见的权限提升路径之一,因为任何域用户都可以请求 TGS 票据。
使用时机
- 当开展涉及执行 Kerberoasting 攻击的安全评估时
- 当遵循相关安全事件的事件响应流程时
- 当执行计划内的安全测试或审计活动时
- 当通过实际操作测试验证安全控制措施时
前提条件
- 熟悉红队相关概念和工具
- 可访问测试或实验环境以安全执行
- 已安装 Python 3.8+ 及所需依赖项
- 为任何测试活动获得适当授权
MITRE ATT&CK 映射
- T1558.003 - Steal or Forge Kerberos Tickets: Kerberoasting
- T1087.002 - Account Discovery: Domain Account
- T1069.002 - Permission Groups Discovery: Domain Groups
工作流
阶段 1:SPN 枚举
- 使用 LDAP 查询枚举设置了 SPN 的账户
- 筛选用户账户(而非计算机账户)
- 识别具有高权限的账户(adminCount=1)
- 优先考虑密码策略较弱的账户
阶段 2:请求 TGS 票据
- 为识别出的 SPN 账户请求 TGS 票据
- 以可破解格式(兼容 hashcat/john)提取票据数据
- 尽可能确保请求 RC4 加密(更易于破解)
- 记录所有请求的票据
阶段 3:离线破解
- 对 RC4 票据使用 hashcat 模式 13100(Kerberos 5 TGS-REP etype 23)
- 对 AES-128 使用 hashcat 模式 19700(Kerberos 5 TGS-REP etype 17)
- 对 AES-256 使用 hashcat 模式 19800(Kerberos 5 TGS-REP etype 18)
- 根据密码策略应用有针对性的字典和规则
阶段 4:凭据验证
- 针对域验证破解出的凭据
- 评估被攻陷账户的访问级别
- 将账户映射到 BloodHound 攻击路径
- 记录以供项目报告使用
工具与资源
| 工具 | 用途 | 平台 |
|---|---|---|
| Rubeus | Kerberoasting 和票据操作 | Windows (.NET) |
| Impacket GetUserSPNs.py | 远程 Kerberoasting | Linux/Python |
| PowerView | SPN 枚举 | Windows (PowerShell) |
| hashcat | 离线密码破解 | 跨平台 |
| John the Ripper | 离线密码破解 | 跨平台 |
检测指标
- 事件 ID 4769:使用 RC4 加密(0x17)的 Kerberos 服务票据请求
- 单个账户在短时间内发出异常 TGS 请求
- 针对用户通常不访问的服务的 TGS 请求
- 对票据请求设置告警的蜜罐 SPN 账户
验证标准
- 已枚举并记录 SPN 账户
- 已以可破解格式提取 TGS 票据
- 已使用适当的字典尝试离线破解
- 已验证破解出的凭据
- 已评估被攻陷账户的访问级别
评论
支持 Markdown