Kerberoasting
Kerberoasting 是什么?
Kerberoasting一种针对服务账户的离线口令破解攻击:申请 Kerberos 服务票据并对其加密部分进行离线破解,以还原明文密码。
Kerberoasting 利用了域内任意已认证用户都可以为任意 SPN 申请 TGS,而该 TGS 是以服务账户的密码哈希加密的这一特性。攻击者枚举 SPN,通常使用 Rubeus 或 Impacket 的 GetUserSPNs 请求 TGS 票据,然后将其导出并用 Hashcat 或 John the Ripper 离线破解。弱口令或长期未轮换的服务账户密码常常数小时即可被破出。MITRE ATT&CK 将其归为 T1558.003(Steal or Forge Kerberos Tickets: Kerberoasting)。常见防御包括:为服务账户使用长随机口令或 gMSA、仅启用 AES Kerberos、避免在特权账户上设置 SPN,并对大量使用 RC4 加密的 TGS 请求告警。
● 示例
- 01
用低权限用户运行 Rubeus kerberoast 收集 TGS,然后用 Hashcat 破解。
- 02
发现某个 Domain Admin 账户带有 SPN 且口令较弱,从而直接升至域控制权。
● 常见问题
Kerberoasting 是什么?
一种针对服务账户的离线口令破解攻击:申请 Kerberos 服务票据并对其加密部分进行离线破解,以还原明文密码。 它属于网络安全的 攻击与威胁 分类。
Kerberoasting 是什么意思?
一种针对服务账户的离线口令破解攻击:申请 Kerberos 服务票据并对其加密部分进行离线破解,以还原明文密码。
Kerberoasting 是如何工作的?
Kerberoasting 利用了域内任意已认证用户都可以为任意 SPN 申请 TGS,而该 TGS 是以服务账户的密码哈希加密的这一特性。攻击者枚举 SPN,通常使用 Rubeus 或 Impacket 的 GetUserSPNs 请求 TGS 票据,然后将其导出并用 Hashcat 或 John the Ripper 离线破解。弱口令或长期未轮换的服务账户密码常常数小时即可被破出。MITRE ATT&CK 将其归为 T1558.003(Steal or Forge Kerberos Tickets: Kerberoasting)。常见防御包括:为服务账户使用长随机口令或 gMSA、仅启用 AES Kerberos、避免在特权账户上设置 SPN,并对大量使用 RC4 加密的 TGS 请求告警。
如何防御 Kerberoasting?
针对 Kerberoasting 的防御通常结合技术控制与运营实践,详见上方完整定义。
● 相关术语
- identity-access№ 584
Kerberos
基于票据的网络认证协议,利用对称加密和受信的密钥分发中心实现跨服务的安全单点登录。
- identity-access№ 013
Active Directory
微软面向 Windows 网络的企业级目录服务,为用户、计算机和资源提供集中式身份验证、授权与策略管理。
- identity-access№ 1011
服务账户
由应用程序、脚本或服务使用的非人类身份,通常用于在没有交互登录的情况下向其他系统进行认证。
- attacks№ 1045
白银票据
使用目标服务账户哈希伪造的 Kerberos 服务票据(TGS),可隐蔽地访问该特定服务。
- defense-ops№ 467
Hashcat
基于 GPU 加速的开源密码恢复工具,支持字典、规则、掩码与混合攻击,可破解数百种哈希和认证算法。
- defense-ops№ 229
凭据访问
MITRE ATT&CK 战术 TA0006,涵盖窃取账户名、口令、令牌等机密信息的各种技术。
● 参见
- № 107BloodHound
- № 682Mimikatz
- № 487蜜罐用户(Honeyuser)