murrez/CVE-2026-0740
GitHub: murrez/CVE-2026-0740
针对 WordPress Ninja Forms 插件 CVE-2026-0740 文件上传漏洞的批量利用脚本,可自动化上传 Web Shell 并记录成功目标。
Stars: 0 | Forks: 0
# ninja.py
一个针对 WordPress 站点中 **Ninja Forms** 插件的文件上传端点的实验性/工具脚本。它会依次向 `list.txt` 中的目标发送请求,并将成功上传的结果写入 `shell.txt` 文件。
## 前置条件
- Python 3
- [requests](https://requests.readthedocs.io/)(通常与 `urllib3` 一同安装)
```
pip install requests urllib3
```
## 文件结构
| 文件 | 说明 |
|-------------|----------|
| `ninja.py` | 主脚本。 |
| `list.txt` | 目标 URL;每行一个 URL(http/https,可选端口)。空行将被忽略。 |
| `shell.txt` | (输出)成功上传时,shell URL 将以追加模式 (`a`) 保存到此文件中。 |
## 配置
脚本开头的常量需要根据目标插件/表单结构进行调整:
- `FORM_ID` — 表单 ID
- `FIELD_ID` — 字段 ID
- `SHELL_NAME` — 服务器上使用的文件名
- `SHELL_CONTENT` — 上传的 PHP 内容
SSL 验证已关闭 (`verify=False`);请仅在您信任的测试环境中使用。
## 运行
确保项目目录中存在 `list.txt`,然后执行:
```
python ninja.py
```
进度和错误消息将输出到标准输出。如果用户中断进程,将通过 `KeyboardInterrupt` 干净地退出。
## 行为概述
1. 如果 `list.txt` 不存在,脚本将报错并退出。
2. 对于每个目标,通过 `admin-ajax.php` 获取 nonce (`nf_fu_get_new_nonce`)。
3. 随后尝试进行文件上传 (`nf_fu_upload`)。
4. 如果检测到成功路径,相关的 URL 将输出到控制台并追加到 `shell.txt` 文件中。
5. 最后汇总显示成功总数。
## 注意事项
- 目标插件版本、表单/字段 ID 以及服务器配置将直接影响成功率。
标签:admin-ajax.php, CISA项目, CVE-2026-0740, Ninja Forms, PHP恶意文件上传, Python安全工具, RCE, Webshell上传, WordPress漏洞, 批量漏洞扫描, 提示词注入, 文件上传漏洞, 漏洞EXP, 网站安全, 网站木马, 网络信息收集, 网络安全, 自动化利用脚本, 隐私保护, 靶场测试