用于 nuclei-templates 验证的脆弱环境。
| 字段 | 值 |
|---|---|
| CVE ID | CVE-2024-44902 |
| 严重性 | 严重 (CVSS 9.8) |
| 产品 | ThinkPHP |
| 受影响版本 | 6.1.3 - 8.0.4 |
| 类型 | 不安全反序列化 → RCE |
| CWE | CWE-502 |
ThinkPHP 6.1.3 至 8.0.4 版本存在一个不安全反序列化漏洞。当安装了 Memcached PHP 扩展时,攻击者可以通过向调用用户输入 unserialize() 的端点发送恶意序列化数据来执行任意代码。
该漏洞利用通过 ThinkPHP 内部类的 gadget 链:
ResourceRegister → DbManager → Memcached → Pivot → Model
git clone https://github.com/KrE80r/CVE-2024-44902-env.git
cd CVE-2024-44902-env
docker compose up -d
# 验证应用是否运行
curl http://localhost:8080/
# 使用 nuclei 模板测试
nuclei -t CVE-2024-44902.yaml -u http://localhost:8080 -debug
# 清理
docker compose down
该环境是使用 composer create-project 创建的 ThinkPHP 应用:
topthink/think:v8.0.0topthink/framework:8.0.4 (存在漏洞)/api/import?data=<序列化载荷>该漏洞控制器模拟了以下场景中的应用:
这是一个具有标准路由和控制器模式的典型 ThinkPHP 应用结构。
$ nuclei -t CVE-2024-44902.yaml -u http://localhost:8080
[CVE-2024-44902] [http] [critical] http://localhost:8080/api/import?data=...
$ nuclei -t CVE-2024-44902.yaml -u http://localhost:8090 # httpd:latest
# 无结果
这是一个故意脆弱的环境,仅供安全测试使用。