使用暴力破解攻击绕过 2FA
概述
Nagios Fusion 应用程序(版本 2024R1.2 和 2024R2)容易受到针对其双因素认证(2FA)机制的暴力破解攻击。具体而言,该 2FA 实现未充分实施速率限制或账户锁定机制,允许攻击者通过反复猜测一次性密码(OTP)来绕过 2FA。
观察到以下问题:
- 缺乏速率限制:2FA 端点不限制 OTP 提交尝试的次数。
- 锁定策略薄弱:多次 OTP 尝试失败后不会触发账户锁定,使暴力破解攻击能够得逞。
- 存在未授权访问风险:凭借充足的计算资源,攻击者可以绕过 2FA 并获取对敏感账户(包括管理员账户)的未授权访问。
此漏洞源于缺乏针对暴力破解攻击的适当防御措施,使得 2FA 机制在定向攻击面前形同虚设。
严重性
- 严重性:高
- CWE:CWE-307(主要);CWE-287(次要)
- CVSS 评分(v3.0):7.6 高
- CVSS 向量:AV:A/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
受影响组件
- 2FA 验证端点(例如 /verify-otp)
- 认证中间件
- 会话签发服务
- 速率限制/反自动化控制
受影响厂商/产品
- 产品名称:Nagios Fusion
- 受影响版本:2024R1.2 和 2024R2
- 已修复版本:2024R2.1
问题摘要
发生的情况:
- 用户尝试使用有效的用户名和密码登录。
- 系统提示从验证器应用/短信/电子邮件输入 OTP。
- 攻击者通过脚本向 /verify-otp 端点发送自动化请求。
- 由于缺乏速率限制和账户锁定,攻击者可以进行无限次猜测尝试。
- 在可行时间内,攻击者猜出正确的 OTP 并绕过 2FA。
安全防护缺口:
2FA 旨在增加熵值并降低暴力破解的可行性。若无适当的反自动化控制,OTP 将可被暴力破解,从而使第二重因素形同虚设。
滥用场景:
- 自动化撞库 + 暴力破解 OTP,实现大规模账户接管。
- 针对高价值账户的定向攻击,其密码已被钓鱼或泄露。
缓解建议
- 对 OTP 尝试按账户/IP/设备实施严格的速率限制。
- 在 N 次 OTP 尝试失败后锁定账户,并要求重新认证。
- 在重复失败时引入退避延迟(例如指数退避)。
披露时间线
📌 本仓库仅用于漏洞报告与 CVE 参考。