CVE-2026-45010phpMyFAQ 4.1.2之前的版本在/admin/check端点存在对过多认证尝试限制不当的漏洞。该端点接受任意用户ID参数,且缺乏会话绑定和速率限制。未经身份验证的攻击者可以通过发送带有顺序令牌值的POST请求,暴力破解任何用户的六位TOTP验证码,从而绕过双因素认证并获得完全的管理员访问权限。
该漏洞的核心在于phpMyFAQ 4.1.2之前版本中的`/admin/check`接口存在严重的逻辑缺陷。该接口用于验证用户的TOTP双因素认证代码,但在实现上存在两个关键问题:一是缺乏会话绑定,即验证端点不检查请求是否来自已建立的合法会话,允许未认证的匿名用户直接调用;二是未实施速率限制,这使得攻击者可以在极短时间内发送海量请求而不被阻断。
攻击者利用此漏洞的原理相对简单但极具破坏性。由于TOTP代码通常仅为6位数字,组合空间仅为1,000,000种可能。攻击者只需编写脚本,构造包含目标管理员用户ID和顺序递增的TOTP值的POST请求发送至`/admin/check`。通过暴力穷举,攻击者最终会命中正确的验证码。一旦验证成功,系统即认为通过了两因素认证,从而赋予攻击者完全的管理员访问权限,完全绕过了旨在保护账户安全的第二道防线。