MadExploits/ninja-form-exploit
GitHub: MadExploits/ninja-form-exploit
针对 WordPress Ninja Forms 插件路径遍历漏洞 CVE-2026-0740 的多线程批量扫描与验证工具。
Stars: 2 | Forks: 0
# ninja-form-exploit
**CVE-2026-0740** — 针对 WordPress 的 Ninja Forms File Upload 路径遍历问题的多线程漏洞扫描器。
## 描述
`main.py` 会扫描 WordPress 目标列表,以确定 Ninja Forms File Uploads 插件是否受到 CVE-2026-0740 的攻击。简要流程如下:
1. 规范化 URL(`http`/`https`,去除尾部斜杠)
2. 通过主页中的 `nfpluginsettings.js` 标记检测插件
3. 通过 `wp-admin/admin-ajax.php`(`action=nf_fu_get_new_nonce`)获取 upload nonce
4. 上传带有路径遍历的 PoC 文件,并 **fuzz 目录 `1`–`100`**
5. 验证文件是否已上传至 `wp-content/uploads/ninja-forms/{dir}/`
6. 将存在漏洞的目标保存到输出文件中
## 要求
- Python 3.7+
- `requests` 库
```
pip install requests
```
## 用法
```
python main.py
```
**示例:**
```
python main.py targets.txt 20
```
### 目标文件格式
每行一个 URL:
```
example.com
https://site.example
http://another.example
```
协议是可选的——如果未提供,脚本会默认使用 `http://`,如果失败则回退到 `https://`。
## 输出
| 项目 | 值 |
|------|--------|
| 结果文件 | `vulnerable_targets.txt` |
| 行格式 | `https://target | https://target/wp-content/uploads/ninja-forms/{dir}/poc_test.txt` |
| PoC 文件 | `poc_test.txt` |
| PoC 内容 | `GIF89;a
VULNERABILITY_TEST_SUCCESSFUL
` | | 超时时间 | 7 秒 | | 目录 fuzz | `1`–`100` | 每次开始扫描时,输出文件都会被重置。 ## 终端状态 | 图标 | 含义 | |------|------| | `[*]` | 信息 / 检测到插件 / 正在 fuzzing | | `[+]` | 存在漏洞 | | `[✓]` | 不存在漏洞 | | `[~]` | 跳过(无插件) | | `[-]` | 错误 / 连接失败 | | `[!]` | 警告(用法) | ## 配置(在 `main.py` 内) ``` FILE_NAME = "poc_test.txt" POC_CONTENT = "GIF89;aVULNERABILITY_TEST_SUCCESSFUL
" TIMEOUT = 7 OUTPUT_FILE = "vulnerable_targets.txt" FUZZ_RANGE = range(1, 101) ``` ## 注意事项 - 脚本使用 `verify=False`(已禁用 SSL 警告),以确保具有无效证书的目标仍能被扫描。 - 线程池会根据第二个参数并行处理多个目标。 - 请仅在您拥有所有权或已获得测试授权的系统上使用。标签:CISA项目, Python, Web安全, WordPress, 无后门, 网络信息收集, 蓝队分析, 逆向工具