用户帐户暴露于 Kerberoasting 攻击
编辑用户帐户暴露于 Kerberoasting 攻击
编辑检测用户帐户的 servicePrincipalName 属性何时被修改。攻击者可以滥用对用户的写入权限来配置服务主体名称(SPN),以便他们可以执行 Kerberoasting 攻击。管理员也可以出于合法目的进行此配置,从而使帐户暴露于 Kerberoasting 攻击。
规则类型: 查询
规则索引:
- winlogbeat-*
- logs-system.*
- logs-windows.*
严重性: 高
风险评分: 73
运行频率: 5 分钟
搜索索引的时间范围: now-9m (日期数学格式,另请参阅 额外的回溯时间
)
每次执行的最大警报数: 100
参考:
- https://www.thehacker.recipes/ad/movement/access-controls/targeted-kerberoasting
- https://www.qomplx.com/qomplx-knowledge-kerberoasting-attacks-explained/
- https://www.thehacker.recipes/ad/movement/kerberos/kerberoast
- https://attack.stealthbits.com/cracking-kerberos-tgs-tickets-using-kerberoasting
- https://adsecurity.org/?p=280
- https://github.com/OTRF/Set-AuditRule
标签:
- 域: 端点
- 操作系统: Windows
- 用例: 威胁检测
- 策略: 凭证访问
- 数据源: Active Directory
- 资源: 调查指南
- 用例: Active Directory 监控
- 数据源: 系统
版本: 213
规则作者:
- Elastic
规则许可证: Elastic License v2
调查指南
编辑分类和分析
调查暴露于 Kerberoasting 攻击的用户帐户
服务主体名称 (SPN) 是 Kerberos 客户端用来唯一标识 Kerberos 目标计算机的服务实例的名称。
默认情况下,只有计算机帐户具有 SPN,这不会造成重大风险,因为计算机帐户具有默认的域策略,每 30 天轮换其密码,并且密码由 120 个随机字符组成,使其不易受到 Kerberoasting 攻击。
分配了 SPN 的用户帐户被视为服务帐户,并且整个域都可以访问它。如果目录中的任何用户请求票据授权服务 (TGS),域控制器将使用执行该服务的帐户的密钥对其进行加密。攻击者可以利用此信息执行 Kerberoasting 攻击,因为人为定义的密码可能不太复杂。
对于无法避免在用户帐户上使用 SPN 的情况,Microsoft 提供了组托管服务帐户 (gMSA) 功能,该功能可确保帐户密码强大并且定期自动更改。更多信息请参阅 此处。
攻击者还可以执行“目标 Kerberoasting”,这包括将伪造的 SPN 添加到他们具有写入权限的用户帐户,使其可能容易受到 Kerberoasting 攻击。
可能的调查步骤
- 确定执行操作的用户帐户,并确定它是否应该执行此类操作。
- 联系帐户所有者并确认他们是否了解此活动。
- 调查目标帐户是否是特权组(域管理员、企业管理员等)的成员。
- 调查是否已请求目标帐户的票据。
- 调查过去 48 小时内与用户/主机相关的其他警报。
误报分析
- 将用户帐户用作服务帐户是一种不良的安全做法,不应在域中允许。安全团队应映射和监视任何潜在的良性真阳性 (B-TP),尤其是在帐户具有特权的情况下。定义此类设置的域管理员可能会使域面临风险,因为用户帐户不具有与计算机帐户相同的安全标准(计算机帐户具有长而复杂且经常更改的随机密码),从而使其容易受到凭据破解攻击(Kerberoasting、暴力破解等)。
响应和补救
- 根据分类结果启动事件响应流程。
- 调查攻击者破坏或使用的系统上的凭证暴露情况,以确保识别所有受损帐户。重置这些帐户和其他可能受损的凭证(例如电子邮件、业务系统和 Web 服务)的密码。优先处理特权帐户。
- 隔离相关主机以防止进一步的入侵后行为。
- 确定攻击者滥用的初始向量,并采取措施防止通过同一向量再次感染。
- 使用事件响应数据,更新日志记录和审计策略,以提高平均检测时间 (MTTD) 和平均响应时间 (MTTR)。
设置
编辑设置
必须为“审核目录服务更改”日志策略配置(成功,失败)。使用高级审核配置实现日志策略的步骤
Computer Configuration > Policies > Windows Settings > Security Settings > Advanced Audit Policies Configuration > Audit Policies > DS Access > Audit Directory Service Changes (Success,Failure)
上述策略不涵盖用户对象,因此使用 https://github.com/OTRF/Set-AuditRule 设置 AuditRule。 由于这指定了 servicePrincipalName 属性 GUID,因此预期噪声较低。
Set-AuditRule -AdObjectPath 'AD:\CN=Users,DC=Domain,DC=com' -WellKnownSidType WorldSid -Rights WriteProperty -InheritanceFlags Children -AttributeGUID f3a64788-5306-11d1-a9c5-0000f80367c1 -AuditFlags Success
规则查询
编辑event.action:("Directory Service Changes" or "directory-service-object-modified") and event.code:5136 and winlog.event_data.OperationType:"%%14674" and winlog.event_data.ObjectClass:"user" and winlog.event_data.AttributeLDAPDisplayName:"servicePrincipalName"
框架: MITRE ATT&CKTM
-
策略
- 名称: 凭证访问
- ID: TA0006
- 参考 URL: https://attack.mitre.org/tactics/TA0006/
-
技术
- 名称: 窃取或伪造 Kerberos 票据
- ID: T1558
- 参考 URL: https://attack.mitre.org/techniques/T1558/
-
子技术
- 名称: Kerberoasting
- ID: T1558.003
- 参考 URL: https://attack.mitre.org/techniques/T1558/003/