在深入之前,如果您想要一个简短的答案,这里是 Kerberoasting 的简要版本。

  • 它是什么: Kerberoasting 是一种后利用技术,攻击者通过 Kerberos 请求服务账户票证并离线破解以收集凭据。
  • MITRE ATT&CK 关联: 它被归类于凭据访问策略下的 T1558.003(窃取或伪造 Kerberos 票证 > Kerberoasting)。
  • 工作原理: 任何经过身份验证的域用户都可以请求服务主体名称(SPN)的票证授权服务(TGS)票证,提取加密部分,并使用 Hashcat 或 John the Ripper 等工具离线破解 NTLM 哈希。
  • 危险原因: 它隐蔽、快速且有效——通常使攻击者能够在不触发即时警报的情况下提升到域管理员权限。
  • 使用者: 它被红队和像 APT40 这样的威胁行为者广泛使用,以实现横向移动并在数小时内获得提升的访问权限。
  • Kerberoasting 与 Golden Ticket 攻击对比:
    • Kerberoasting: 此攻击不需要提升权限;它依赖于 SPN 服务票证和密码破解。
    • Golden Ticket: 此攻击需要域管理员访问权限;攻击者使用 KRBTGT 哈希伪造票证授权票证(TGT),冒充任何用户或服务。
  • 防止和缓解 Kerberoasting: 使用强密码,使用 gMSAs 自动轮换,审计 SPN,执行最小权限访问,修补漏洞,启用 MFA,并监控异常的 TGS 请求。
  • 入侵指标(IoCs): 异常的 TGS 请求(4769)、预认证失败尝试(4771)、RC4-HMAC 使用以及访问非活动或蜜罐 SPN。
  • Log360 的帮助:
    • 它通过监控 SPN 枚举、异常 TGS 模式和事件 4769 与 4771(尤其是使用 RC4 加密的)来检测 Kerberoasting。
    • 它将发现映射到 MITRE T1558.003,提供取证审计轨迹,自动化事件响应,并关联信号以揭示隐蔽的横向移动。

这个简短版本让您一目了然掌握要点。欲了解详细见解和技术演示,请继续阅读。

Kerberoasting 攻击:详解

想象一个攻击者悄无声息地穿行于您的网络,他们的目标不是立即破坏,而是获取您数字域的钥匙。Kerberoasting,也称为 Kerberoast 攻击,是一种 Active Directory (AD) 攻击,攻击者请求 SPN 的服务票证哈希并离线暴力破解以恢复明文服务账户密码。由于每个经过身份验证的域用户都可以合法请求这些票证,该技术通常在密码被破解并用于横向移动或权限提升之前不会被发现。

了解 Kerberos 认证协议

要真正理解 Kerberoasting 攻击的机制,您必须首先了解 Kerberos 认证协议的关键组件和核心原理。它通常简称为 Kerberos,作为一个受信任的第三方,支持用户与服务之间的安全通信,而无需频繁传输密码。

该协议中的一些关键组件包括:

  • KDC: 认证和票证颁发的中央权威机构,包含认证服务(AS)和票证授权服务(TGS)。
  • TGT: 初次登录后获得的可重用票证,允许用户在不重新认证的情况下请求服务票证。
  • TGS: KDC 组件,负责在验证 TGT 后颁发服务票证。
  • SPN: 在 AD 中为服务账户注册的唯一标识符(例如 MSSQLSvc/sqlserver.domain.com)。SPN 将服务请求映射到正确的服务账户。
  • TGS 票证或服务票证: 用于认证特定服务的票证。这是 Kerberoasting 攻击的主要目标。

典型的 Kerberos 认证协议涉及以下关键步骤:

  • 用户登录和认证服务请求: 用户使用凭据进行身份验证,系统向 KDC 请求 TGT。
  • TGT 颁发: KDC 中的 AS 验证凭据并颁发 TGT,该票证使用用户密码哈希加密,作为未来票证请求的身份凭证。
  • 请求服务访问: 当用户需要访问特定服务(如数据库或 Web 应用)时,系统向 TGS(KDC 的一部分)出示 TGT,并请求该服务的 TGS 或服务票证。
  • 访问授权: TGS 颁发请求的服务票证,关键是用目标服务账户的秘密(其 NTLM 哈希)加密。客户端随后使用该 TGS 票证直接认证到目标服务。

MITRE ATT&CK 框架中的 Kerberoasting

Kerberoasting 是 MITRE ATT&CK 框架中定义明确的后利用技术,技术 ID 为 T1558.003。了解其在框架中的位置有助于安全专业人员将该攻击置于更广泛的对手策略和技术谱系中。

MITRE ATT&CK 映射

技术 ID 描述
Kerberoasting T1558.003 攻击者请求具有 SPN 的账户的服务票据(TGS 票据),提取它们,并尝试离线破解密码。

MITRE ATT&CK 框架提供了关于攻击者如何利用 Kerberoasting 作为其入侵后活动的一部分的宝贵见解,通常用于凭据访问和 权限提升

Kerberoasting 是如何工作的?

了解什么是 Kerberoasting 以及 Kerberoasting 如何工作,是识别 Kerberos 攻击中关键 IoC 的第一步。Kerberoasting 的漏洞在于 TGS 票据的加密方式。由于服务本身需要解密该票据,加密密钥是从服务账户的密码哈希(NTLM 哈希)派生的。Kerberoasting 攻击巧妙地利用这一点,通过获取这些票据并尝试离线破解它们。

以下是典型 Kerberoast 攻击的分步解析:

阶段 1:初始立足点: 在此阶段,攻击者通过入侵低权限用户账户或其他初始访问方式,获得对域的合法访问权限。

常见技术包括:

  • 网络钓鱼 通过欺骗性电子邮件窃取用户凭据。
  • 凭据填充 或暴力破解: 使用泄露或弱密码凭据。
  • 利用配置错误: 利用不安全的用户权限或域信任设置。

MITRE ATT&CK 框架关联

阶段 2:SPN 枚举: 一旦进入网络,攻击者枚举在 AD 中注册了 SPN 的服务账户。这些账户通常与以用户身份运行的服务相关联——其中许多具有高权限。

常用工具:

  • setspn.exe(本地工具)
  • PowerShell 脚本
  • GetUserSPNs.py(Impacket)

MITRE ATT&CK 框架关联

阶段 3: TGS 请求与获取:攻击者请求已识别 SPN 的 TGS 票据。这些票据使用服务账户密码的 NTLM 哈希加密,是离线破解的目标。

关键点:

  • 这是合法的 Kerberos 操作,因此可避免检测。
  • 请求这些票据不需要提升权限。

MITRE ATT&CK 框架关联

阶段 4:票据提取: 攻击者使用以下工具从内存中提取 TGS 票据或保存到磁盘:

  • Mimikatz
  • Rubeus
  • Impacket 的 GetUserSPNs

票据现已准备好进行离线密码破解,并以 .kirbi 或 .ccache 等格式保存。

MITRE ATT&CK 框架关联

阶段 5 :离线破解: 虽然这不是 Kerberos 协议流程的一部分,但这是关键阶段,攻击者使用密码破解工具(如 Hashcat 或 John the Ripper)对加密的 TGS 票据进行 暴力破解 服务账户密码。一旦成功,攻击者将获得潜在高权限账户的明文凭据。

MITRE ATT&CK 框架关联

如果破解成功,攻击者将获得潜在高权限服务账户的明文凭据。这可能使他们能够在网络中横向移动、提升权限、访问敏感数据,并最终实现其目标。

为什么 Kerberoasting 是一个危险的威胁?

Kerberoasting 的有效性源于多个因素:

  • 隐蔽性: 请求服务票据(TGS-REQ)是正常的 Kerberos 操作,使得 Kerberoasting 攻击的初始阶段难以在没有特定监控的情况下被检测到。
  • 离线破解: 一旦获得票据,密码破解在离线进行,不会在 Active Directory 环境中产生额外的网络流量或可疑活动。
  • 高价值目标: 服务账户通常以其管理的服务所需的提升权限运行,如数据库、Web 服务器或备份,使其成为攻击者寻求提升访问权限的主要目标。
  • 速度(针对弱密码): 如果服务账户密码弱或易猜测,破解过程可以非常快速完成。

Kerberoasting 不仅仅是一个理论威胁。以下是一些展示其有效性的实际 Kerberoasting 案例:

  • APT40 这个总部位于中国的组织被观察到使用 Rubeus 等工具进行 Kerberoasting,以提升目标网络中的权限。
  • 红队模拟 渗透测试人员经常演示 Kerberoasting 的执行难度很低,通常通过利用弱服务账户密码,在数小时内导致域管理员权限被攻破。
  • NotPetya 或 Nyetya 虽然尚未确定归属,但分析表明该破坏性恶意软件可能利用了 Kerberos 滥用技术,可能包括 Kerberoasting,用于横向移动

Kerberoasting 与 Golden Ticket 攻击:理解二者的区别

虽然 Kerberoasting 和 Golden Ticket 攻击 都是针对 AD 的 Kerberos 攻击,但它们有显著不同。

具体如下:

方面 Kerberoasting Golden Ticket 攻击
目标 从 Kerberos 服务票证中破解服务账户密码 伪造身份验证票证以冒充任何用户或服务
访问权限需求 任何域用户账户 访问 KRBTGT 账户哈希(需要域管理员或等效权限)
方法 请求与 SPN 关联的服务票证并离线破解 使用 KRBTGT 哈希伪造 TGT
检测难度 中等;异常的票证请求和 RC4 使用可被标记 高;如果精心伪造,伪造票证可模拟合法票证
影响 通过破解凭据实现横向移动和权限提升 完全域控制;攻击者可冒充任何人并访问任何资源
持久性 低;依赖破解成功和服务账户访问 高;伪造票证可授予持久访问权限,即使账户已修复
常用工具 Rubeus、Impacket Kerberoasting、Invoke-Kerberoast Mimikatz Kerberoast、Rubeus
IoC(攻击指标) 高频 TGS 请求,使用 RC4 加密 异常长生命周期的 TGT,带有不常见值的伪造票证
缓解措施 强密码服务账户、gMSA 和 SPN 审计 重置 KRBTGT 密码两次,保护域控制器,监控 TGT 颁发

Kerberoasting 通常对权限较低的攻击者更易访问,常作为进一步攻破的跳板。Golden Ticket 攻击虽然影响更大,但需要更高权限。全面的安全策略必须同时应对两者。

如何防止和缓解 Kerberoasting

了解如何防止和缓解 Kerberoasting 对保护您的 AD 环境至关重要。以下是根据 MITRE ATT&CK 框架 的 Kerberoasting 防护和缓解策略:

Kerberoasting 攻击中的 IoCs 是什么?

及早检测 Kerberoasting 对保护您的 AD 环境至关重要。识别 Kerberoasting 攻击的细微迹象或 IoCs 可以防止攻击者利用被攻破的服务账户进行 横向移动权限提升

  • 监控异常的票据请求: 请求服务票据是正常行为,但针对特定服务账户或来自异常源机器的请求激增可能是 Kerberoasting 攻击的指标。
  • 分析安全日志: 检查事件 ID 4769(请求了 Kerberos 服务票据)的安全事件日志。查找如单一来源对同一 SPN 的高请求量或被攻破账户请求异常 SPN 的模式。
  • 实施网络流量分析: 深度包检测工具可能识别与 Kerberoasting 工具相关的模式,尽管这较为困难,因为初始请求是标准的 Kerberos 流量。
  • 监控遗留 Kerberos 配置: 使用 RC4-HMAC(EType 23)的遗留 Kerberos 配置是 Kerberoasting 的主要目标,因为这些票据更易破解。查找基于 RC4 的 TGS-REQ 消息和使用弱加密的 SPN,以发现配置错误或正在进行的攻击。
  • 检测异常的 LDAP 活动: 针对 ldap:///CN=Users,DC=... 路径使用过滤器 servicePrincipalName=* 的 LDAP 查询激增,可能表明典型的 Kerberoasting 侦察行为。
  • 识别来自单一主机的大量 AS‑REQ/TGS‑REQ: 来自单一工作站的大量身份验证请求(AS‑REQ 或 TGS‑REQ),尤其是在短时间内,可能表明正在使用自动化 Kerberoasting 工具。
  • 利用专用安全工具: 虽然 Kerberoast.py、Rubeus 或 Invoke-Kerberoast 等工具可用于识别易受攻击账户和审计 Kerberoasting 漏洞,安全信息和事件管理 (SIEM) 解决方案,如 ManageEngine Log360,以及 Active Directory 审计工具,内置规则和分析功能可识别潜在的 Kerberoasting 攻击。

Log360 如何帮助检测和响应 Kerberoasting

ManageEngine Log360 是一款集成了 集成 DLPCASB 功能 的统一 SIEM 解决方案,提供 威胁检测与响应关联分析、警报和报告。在深入介绍 Log360 如何帮助检测 Kerberoasting 之前,先了解一些 Windows 环境中与 Kerberos 相关的常见事件 ID。

事件ID 事件类型 描述
4768 成功或失败 当域控制器请求 Kerberos 身份验证票据(TGT)时记录此事件。
4769 成功或失败 当请求 Kerberos TGS 票据时记录此事件。
4770 成功 当 Kerberos 服务票据续订时记录此事件。
4771 失败 当 Kerberos 预认证失败时记录此事件。
4772 失败 当 Kerberos 身份验证票据请求失败时记录此事件。

以下是 Log360 如何帮助检测和缓解与 Kerberoasting 相关攻击的方法:

  • 针对 Kerberos 的实时检测和警报:Log360 enables 实时监控 of suspicious Kerberos TGS requests by analyzing event ID 4769. Since TGS requests are common, Log360 uses advanced correlation rules to raise alerts only when certain Kerberoasting indicators are detected, such as:
    • 短时间内大量 TGS 请求(典型的暴力破解模式)。
    • 使用 RC4 加密(加密类型 0x17)的 TGS 请求——已知的弱加密,攻击者常利用。
    • 请求以 $ 开头的服务名称,这是已知的异常模式。

    这些警报有助于检测试图提取服务票据进行离线破解的攻击者。

    以 Kerberos 为重点的实时检测警报
  • 基于诱骗的威胁检测与蜜罐 SPN: 安全团队可以配置带有假 SPN 的蜜罐 Kerberos 服务账户。Log360 通过事件 ID 4769 监控对这些诱饵 SPN 的访问尝试,这些是 侦察 或 Kerberoasting 活动的明确指标。
  • 通过内置报告进行深入调查:Log360 offers over 1,000 built-in reports, including Kerberos-specific reports that allow analysts to:
    • 跟踪所有 TGS 请求,并按加密类型、服务账户和来源筛选。
    • 检测带有 0x17 加密的事件 ID 4769,以标记可疑的基于 RC4 的票据请求。
    • 分析带有错误代码 0x18 的事件 ID 4771,表明因密码错误导致的身份验证失败——常见于密码喷洒和暴力破解尝试。
    • 监控指向重复 SPN 或票据重放的结果代码,如 0x8 和 0x22。
  • 与 MITRE ATT&CK 框架的 对齐: Log360 将 Kerberoasting 指标映射到 MITRE ATT&CK 技术,特别是 T1558.003,涉及窃取或伪造 Kerberos 票据。这帮助团队了解攻击在更广泛的 杀伤链 中的位置,并更有策略地响应。
  • 与 MITRE ATT&CK 框架的对齐
  • 自动化事件响应Once a Kerberoasting attempt is detected, Log360 can:
    • 自动化修复工作流。
    • 在您的帮助台系统中创建事件工单以分配解决方案。
    • 触发自动响应,如禁用账户、阻止 IP 或发送升级警报。
  • 基于关联的 威胁狩猎该解决方案的关联引擎结合多个数据点——Kerberos 日志、用户行为、加密类型和身份验证失败——将复杂攻击提炼为单一警报,使威胁检测高效且准确。

ManageEngine Log360 使组织能够通过实时警报、SPN 蜜罐、详细的 Kerberos 报告、MITRE ATT&CK 映射和自动化事件工作流,主动检测和缓解 Kerberoasting 攻击。

这些功能共同帮助阻止攻击者窃取服务票据和离线破解密码,从而增强您的 AD 安全态势。

担心您的 AD 环境中存在 Kerberoasting 攻击?

使用 Log360 的实时威胁检测、关联引擎和取证洞察,检测可疑票据请求,跟踪 SPN 活动,并阻止凭据盗窃。

常见问题解答

哪些事件 ID 对检测 Kerberoasting 有用?

Windows 安全日志中的事件 ID 4769(TGS 请求)是关键。关注 RC4 加密、服务账户请求和高请求频率。

如何监控服务账户的使用情况?

使用 EventLog Analyzer 或 Log360 等工具跟踪登录活动、SPN 变更和异常票据请求频率。

哪些加密类型易受攻击?

RC4-HMAC 明显较弱,更容易被破解。

gMSA 有帮助吗?

有,gMSA 自动化强密码的轮换,大大降低风险。

如何测试我的环境?

使用 Rubeus 或 Invoke-Kerberoast 等工具进行授权的内部评估,以识别易受攻击的账户和配置。

本页内容
 
  • 什么是 Kerberoasting?
  • 了解 Kerberos 认证协议
  • MITRE ATT&CK 框架中的 Kerberoasting
  • Kerberoasting 是如何工作的?
  • 为什么 Kerberoasting 是一个危险的威胁?
  • Kerberoasting 与 Golden Ticket 攻击:理解二者的区别
  • 如何防止和缓解 Kerberoasting
  • Kerberoasting 攻击中的 IoCs 是什么?
  • Log360 如何帮助检测和响应 Kerberoasting
  • 常见问题解答