Active Directory 中的密码喷洒检测

admin 2024年12月24日12:56:33评论10 views字数 3006阅读10分1秒阅读模式

Password Spraying Detection in Active Directory

密码喷洒检测对所有组织来说都是一项至关重要的能力。在密码喷洒攻击[1]中,攻击者试图通过在多个账户上尝试几个常见或弱密码来获取未经授权的访问,而不是针对单个账户使用多个密码。其理念是测试多个密码,希望某些用户选择了弱密码。

在 Active Directory (AD) 环境中,密码喷洒攻击尤其令人担忧,因为任何 AD 环境中的认证用户都可以使用 LDAP 查询账户。这使得具有最低权限的攻击者能够在多个账户上尝试常见或弱密码,而不会触发账户锁定策略(图 1)。

Active Directory 中的密码喷洒检测
图 1. 密码喷洒攻击示例

为什么密码喷洒检测至关重要?

微软估计,密码喷洒攻击占所有账户泄露事件的三分之一以上,突显了这种方法对组织构成的威胁。

密码喷洒攻击可能在域控制器 (DC) 的安全事件日志中产生大量活动,并产生大量网络流量(图 2)。

Active Directory 中的密码喷洒检测
图 2. 密码喷洒攻击后短时间内出现大量登录失败

大量的登录失败会产生明显的痕迹。因此,攻击者可能在密码喷洒攻击中引入延迟(图 3)。由于 DC 上的安全事件日志通常在几秒钟内生成,这种延迟有助于攻击与正常活动混合,降低被检测的可能性。

Active Directory 中的密码喷洒检测
图 3. 显示成功和失败尝试的密码喷洒攻击,每次间隔 10 秒

DC 上的日志显示这些失败的登录尝试的时间戳以固定间隔出现,这是由于在每次尝试之间引入了 10 秒的延迟。这种分散的时间使得活动比同时发生的多次失败登录尝试看起来不那么可疑(图 4)。

Active Directory 中的密码喷洒检测
图 4. 安全事件日志显示密码喷洒攻击期间的失败登录尝试,每次尝试之间间隔 10 秒

使用 Kerberos 预认证的密码喷洒

添加延迟使密码喷洒攻击看起来不那么可疑。然而,攻击仍会在 DC 上触发"账户登录失败"事件。

Kerberos 预认证可以使密码喷洒检测更加困难。使用此类预认证的失败尝试不会在安全事件日志中生成标准的登录失败事件。通过这种方式,攻击者可以猜测密码而不触发与失败登录尝试相关的典型警报(图 5)。

Active Directory 中的密码喷洒检测
图 5. 使用 Kerberos 预认证的密码喷洒攻击,每次间隔 10 秒

在这类攻击中,安全事件日志中不会看到典型的"账户登录失败"事件,而是会观察到"Kerberos 预认证失败"事件。这些事件包含十六进制值 0x18,表示输入了错误的密码(图 6)。

Active Directory 中的密码喷洒检测
图 6. Kerberos 预认证失败日志,事件 ID 4771,显示由于密码错误导致的失败尝试

使用随机化延迟间隔的密码喷洒

使密码喷洒检测更加困难的另一种方法是打破安全系统经常监控的可预测模式(图 7)。这种随机性使攻击与正常流量混合,使系统和安全团队更难检测和响应攻击。

Active Directory 中的密码喷洒检测
图 7. 展示尝试之间随机延迟的密码喷洒攻击

具有随机延迟的密码喷洒攻击仍会生成日志事件。然而,尝试之间的不规则时间间隔可能使密码喷洒检测更加困难。日志显示登录尝试不可预测地分散,而不是一致的模式,使攻击不那么显眼(图 8)。

Active Directory 中的密码喷洒检测
图 8. 失败的登录尝试与正常活动不可预测地混合,增加了区分密码喷洒攻击和合法登录尝试的难度

同样的概念可以应用于使用 Kerberos 预认证的密码喷洒攻击中的随机化延迟间隔。由于 4771 事件通常不会被密切监控,引入随机化延迟使检测比之前讨论的更加困难(图 9)。

Active Directory 中的密码喷洒检测
图 9. 通过 Kerberos 预认证进行的密码喷洒,使用随机延迟,试图模仿正常行为

如同前面的例子,每次登录尝试之间的延迟间隔随机化可以使这种活动在日志中看起来像正常行为(图 10)。

Active Directory 中的密码喷洒检测
图 10. 日志中的事件 4771 显示 Kerberos 预认证失败,由于随机化延迟可能与正常活动混合

密码喷洒检测的其他建议

为了降低密码喷洒攻击成功的风险,强制执行强密码策略很重要,包括在连续多次登录失败后实施账户锁定机制(临时或永久)。组织应确保通过默认域策略或 Active Directory 中的细粒度密码策略来执行此类密码策略。

使用 Entra ID P1 或具有适当 Enterprise Mobility + Security (EMS) 或 Microsoft 365 许可的组织可以通过为 Active Directory 部署 Entra Password Protection 或类似解决方案来获得额外的保护层。该工具主动防止用户创建或使用容易被猜测或在之前泄露中被泄露的密码。通过集成此解决方案,组织可以提高密码喷洒检测的成功率。

图 14 显示了一个示例,其中 Entra ID Password Protection 阻止用户设置不符合组织当前密码策略的密码。

Active Directory 中的密码喷洒检测
图 14. Entra ID Password Protection 阻止用户设置违反密码策略的密码

其他密码喷洒检测资源

  • 如何防御密码喷洒攻击[2]
  • 检测和防止基于身份的攻击[3]
  • Windows 密码策略(Microsoft Learn)[4]
  • 适用于 AD 域服务的 Microsoft Entra 密码保护(Microsoft Learn)[5]
  • ropnop/kerbrute[6]:执行 Kerberos 预认证暴力破解的工具 (github.com)
  • dafthack/DomainPasswordSpray[7]:用 PowerShell 编写的工具,用于对域用户执行密码喷洒攻击 (github.com) **注意:**默认情况下,此工具会自动从域中生成用户列表。要非常小心不要锁定账户!
  • 实施现代安全工具(MSEndpointMgr)[8]

参考资料

[1]

密码喷洒攻击:https://www.semperis.com/blog/how-to-defend-against-password-spraying-attacks/

[2]

如何防御密码喷洒攻击:https://www.semperis.com/blog/how-to-defend-against-password-spraying-attacks/

[3]

检测和防止基于身份的攻击:https://www.semperis.com/solutions/attack-pattern-detection/

[4]

Windows 密码策略(Microsoft Learn):https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-10/security/threat-protection/security-policy-settings/password-policy

[5]

适用于 AD 域服务的 Microsoft Entra 密码保护(Microsoft Learn):https://learn.microsoft.com/en-us/entra/identity/authentication/concept-password-ban-bad-on-premises

[6]

ropnop/kerbrute:https://github.com/ropnop/kerbrute

[7]

dafthack/DomainPasswordSpray:https://github.com/dafthack/DomainPasswordSpray

[8]

实施现代安全工具(MSEndpointMgr):https://msendpointmgr.com/2018/06/23/implementing-modern-security-tools-part-1/

原文始发于微信公众号(securitainment):Active Directory 中的密码喷洒检测

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2024年12月24日12:56:33
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   Active Directory 中的密码喷洒检测https://cn-sec.com/archives/3533217.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息