漏洞总结:MantisBT 账户接管漏洞 (CVE-2026-40596) 漏洞概述 该漏洞允许任何已认证用户通过更新其用户的 首选项注入任意 HTML 代码,从而实现账户接管。攻击者可以通过向 发送 POST 请求来更新 配置的值,而该值在输出时未经过验证或转义。 影响范围 受影响版本:MantisBT 2.11.0 及更早版本 严重程度:严重 可复现性:总是 影响:攻击者可以注入恶意 HTML/JavaScript 代码,导致跨站脚本攻击 (XSS),进而可能实现账户接管、创建后门账户等恶意行为。 修复方案 1. 验证 配置值:建议将 配置值限制为有效的字体名称列表,例如 。 2. HTML 实体编码:如果必须使用非白名单字体,应对 配置值进行 HTML 实体编码。 3. 内容安全策略 (CSP):建议限制 响应头,仅允许 、 、 和其他图像 MIME 类型(如 ),以减少 CSP 绕过风险。 4. CSRF 保护:确保登录页面包含 CSRF 令牌验证,防止跨站请求伪造攻击。 POC 代码 1. 初始 XSS 注入 2. 绕过 CSP 的 JavaScript 文件上传 3. JavaScript 文件载荷 4. 绕过 MIME 类型检查 5. 利用 CSRF 进行账户接管 6. Cookie 注入 XSS 载荷 7. 自动化 PoC 脚本 (poc.py) 附加信息 测试版本:2.29.0-dev (commit: https://github.com/mantisbt/mantisbt/commit/73d57992b5cb0b7b8e3a2f6a219071e0523) 标签:无 关联问题: - 0037016: CVE-2026-40597: Centers Security Policy bypass via attachments - 0037019: User's chosen font overwrites when saving preferences - 0037130: login_password_page.php: CSRF validation fails when called via auth_reauthenticate() since 2.28.2 - 0037135: Fix CSRF validation failure in anonymous login