⚠️ 本仓库在安全可控的环境中模拟 CVE-2025-20029。
它不会与真实的 F5 BIG-IP 系统交互或利用任何生产服务。
目标是教育性的:研究漏洞模式并安全地测试负载。
CVE-2025-20029 是一个影响 F5 BIG-IP 系统的高危命令注入漏洞。
问题出在 iControl REST API,在某些配置下,允许经过身份验证的用户通过 /mgmt/tm/util/bash 端点执行任意系统命令。
此模拟演示了如何在可控的容器化环境中利用该漏洞。
exploit/exploit.py 脚本通过向易受攻击的 F5 BIG-IP 端点 /mgmt/tm/util/bash 发送精心构造的 JSON 负载,模拟远程代码执行场景。
主要功能:
{"command": "id"} 的 POST 请求bash 的配置错误此脚本有意保持最小化,以便攻击路径透明且易于修改。
非常适合测试、重放攻击向量,或集成到培训实验室中。
本项目不会:
相反,它专注于:
replay.sh)report.md)meta.yaml 标记 CVSS/元数据cd CVE-2025-20029
# 赋予脚本可执行权限
chmod +x replay.sh
# 运行利用脚本并生成 Markdown 报告
sudo ./replay.sh

.
├── app.py # Flask 模拟应用,模拟易受攻击的端点
├── Dockerfile
├── docker-compose.yml
├── replay.sh
├── report.md / # 自动生成的报告
├── exploit/
│ └── exploit.py
├── logs/
│ └── run1.log
├── meta.yaml
├── detection.md
├── remediation.md
├── utils/
│ ├── report_generator.py
CVE:CVE-2025-20029
此模拟受到 CVE-2025-20029 公开研究的启发:
💡 注意 这里的实现并非任何生产环境的 1:1 复制,而是使用 Flask 和 Docker 构建的最小化教育模拟,用于安全地演示漏洞的核心逻辑。