
教育性 CVE-2018-7600 漏洞利用项目,结合 Python RCE PoC、隔离的 Docker Drupal 实验环境、payload 研究以及缓解措施文档,用于安全的漏洞应用程序测试。
本项目研究、复现并记录了 CVE-2018-7600 (Drupalgeddon2) —— Drupal CMS 中的一个严重(CVSS 9.8)未认证远程代码执行漏洞, 影响 7.58 和 8.5.1(2018 年 3 月发布)之前的版本。
该漏洞存在于 Drupal 的 Form API 中,它在将用户提供的输入合并到表单元素渲染属性之前未能对其进行清理——从而允许攻击者注入 PHP 可调用对象,Render API 随后会执行这些对象。
⚠️ 仅供教育用途。所有测试必须仅在隔离的 Docker 实验环境中进行。切勿在在线或生产系统上进行测试。
| 成员 | 角色 | 交付物 |
|---|
| 成员 1 | 实验环境与 CVE 验证 | Dockerfile、docker-compose、SETUP.md |
| 成员 2 | 漏洞利用开发 | exploit.py 框架、payloads.txt |
| 成员 3 | 根本原因分析与研究 | root_cause_analysis.md、references.md、mitigation.md |
| 成员 4 | 证据收集与最终报告 | terminal_logs.txt、截图、最终报告 |
CVE-2018-7600-Project/
│
├── README.md ← you are here
│
├── lab/ ← Member 1
│ ├── Dockerfile ← builds Drupal 7.57 image
│ ├── docker-compose.yml ← orchestrates all services
│ ├── entrypoint.sh ← DB wait + auto-config script
│ ├── SETUP.md ← step-by-step setup guide
│ └── config_notes.md ← vulnerability verification
│
├── exploit/ ← Member 2
│ ├── exploit.py ← PoC Python framework
│ └── payloads.txt ← payload research notes
│
├── docs/ ← Member 3
│ ├── root_cause_analysis.md ← technical deep-dive
│ ├── references.md ← all sources & links
│ └── mitigation.md ← patch & hardening guide
│
├── proof/ ← Member 4
│ ├── screenshots/ ← exploitation screenshots
│ └── terminal_logs.txt ← command output logs
│
└── report/
└── CVE-2018-7600_Report.docx ← Member 4: final report
cd lab/
docker compose up -d --build
打开 http://localhost:8080/install.php 并按照 SETUP.md 第 3 步操作。
curl -s http://localhost:8080/CHANGELOG.txt | head -3
# Expected: Drupal 7.57, 2018-02-21
cd .. # project root
python exploit/exploit.py --target http://localhost:8080 --safe-mode
python exploit/exploit.py --target http://localhost:8080 --cmd "id"
python exploit/exploit.py --target http://localhost:8080 --cmd "id" \
--output proof/terminal_logs.txt
cd lab/
docker compose down -v && docker compose up -d --build
| 属性 | 值 |
|---|---|
| CVE ID | CVE-2018-7600 |
| 别名 | Drupalgeddon2 |
| 厂商公告 | SA-CORE-2018-002 |
| CVSS v3 | 9.8 严重 |
| 影响版本 | Drupal < 7.58, < 8.3.9, < 8.4.6, < 8.5.1 |
| 修复版本 | 7.58, 8.3.9, 8.4.6, 8.5.1 |
| 需要认证 | 否 |
| 类型 | 远程代码执行 |
ITSOLERA 红队实习 — 2026 年夏季