AnhNg1410/Bludit-Exploitation

GitHub: AnhNg1410/Bludit-Exploitation

针对 Bludit CMS <= 3.21.1 存储型 XSS 与 CSRF 组合漏洞的 PoC 脚本,可将 Author 权限提升至 Administrator。

Stars: 1 | Forks: 0

# Blloit-Exploitation Bludit CMS 权限提升 PoC 脚本:利用存储型 XSS 和 CSRF 将用户权限从 Author 提升至 Administrator。 ### 概述 Bludit CMS v3.21.1 — 存储型跨站脚本攻击 (XSS) Exploit CWE : `CWE-79` (输入处理不当) CVSS 3.1 : `8.7` `(AV:N/AC:L/PR:L/UI:R/S:C/C:H/I:H/A:N)` 受影响版本 : Bludit CMS <= 3.21.1 (bl-kernel/) 漏洞 : 页面内容未经清理即被存储,并通过关闭了安全模式 (safe mode) 的 Parsedown 进行渲染。 影响 : 经过身份验证的 Author 及以上权限用户可以注入任意 JavaScript,这些代码会在所有访问者(包括 Administrator)的浏览器中执行。结合贯穿整个会话生命周期的 CSRF token → 实现完全接管管理员账户。 环境要求 : `pip install requests beautifulsoup4` 用法 : ``` python3 exploit.py --target http://127.0.0.1:8080 --username --password --attacker --payload ``` - 使用 `python3 exploit.py --help` 获取更多详细信息。 ### 注意 JavaScript Payload 模板 所有 Payload 均使用单引号的 HTML 属性 (`onerror='...'`),以便双引号能在 JS 字符串和正则表达式字面量中原生使用。这避免了之前破坏 Payload 的 `\x22` 转义问题。 数据窃取使用了带有 URLSearchParams 主体的 navigator.sendBeacon()。Content-Type 会变为 `application/x-www-form-urlencoded` —— 这是一种“简单”的 CORS 类型,不会触发 OPTIONS 预检请求,而不像带有 application/json 的 Blob 会被浏览器预检,并在攻击者服务器缺少 `Access-Control-Allow-Origin` 头 (`webhook.site`) 时将其拦截。 Token 来源:`var tokenCSRF = "hex128"` (`js/variables.php:20`)。 这个 JS 全局变量通过 `admin/themes/booty/index.php:52` 存在于每一个管理员页面上。
标签:CSRF, PoC, Python, Web安全, Web报告查看器, XSS, 无后门, 暴力破解, 漏洞情报, 蓝队分析, 逆向工具