Kaiten —— 一个工作流管理系统。 Kaiten 中的一个漏洞允许攻击者绕过 PIN 码认证机制。该应用要求用户在输入登录凭证后,输入发送到其邮箱的6位 PIN 码进行授权。然而,请求限制机制可以被轻松绕过,使得攻击者能够进行暴力破解攻击,猜出正确的 PIN 码并未经授权访问应用。
详细信息:
认证机制使用发送到邮箱的单因素,没有任何密码 :)
通过使用 X-Forwarded-For 头可以绕过速率限制,该头允许 X-RateLimit-Remaining 计数器重置。

这种方法使得可以持续发送请求而不收到 HTTP 429 Too Many Requests 响应,通常多次尝试后会收到该响应。

此外,请求新的 PIN 码也没有限制 => 攻击者可以使用暴力破解攻击猜测 PIN 码。PIN 码的有效期为5分钟,攻击者有5分钟的时间尝试猜测6位 PIN 码。 在 ~150 RPS 下,攻击者可以尝试 ~45,000 个 PIN 码。经过所有尝试,通过数学计算,50% 的成功概率可在33分钟内达到,100% 需4小时。
受影响版本:
<= 57.131.12
链接:
简单下载 bash 脚本并使用选定的用户名运行 (仅登录名,不是邮箱!)
bash CVE-2024-41276.sh <input_user> <kaiten.example.com>
结果: 成功结果 => 获取有效的 cookie 以供进一步使用
