以下是几个优秀的免费且开源的AWD赛平台推荐,它们专注于攻防对抗场景,适合本地部署用于训练或内部竞赛:
️ 1. VulnRange
- GitHub: https://github.com/vulnrange/vulnrange
- 特点:
- 轻量级纯命令行工具,无复杂界面依赖
- 动态生成漏洞环境(支持 Web、Pwn 等类型)
- 自动轮询 Flag 并实时计分
- 支持多战队独立隔离环境
- 通过配置文件快速定义漏洞场景(Docker 镜像 + PoC 脚本)
- 部署: Python 编写,依赖 Docker,需手动配置网络隔离(如 VLAN 或防火墙规则)
- 适用场景: 中小规模内部训练,适合熟悉命令行的运维人员
2. 易霖天靶场(开源版)
- GitHub: https://github.com/yunyinge/yltt
- 特点:
- 国产开源项目,含 Web 管理界面(PHP + MySQL)
- 支持 AWD 基础功能:战队管理、Flag 提交、实时排名
- 可上传自定义 Docker 镜像作为靶机
- 集成简单解题(CTF)模块
- 缺点: 文档较少,社区活跃度一般,需自行优化高并发场景
- 适用场景: 高校实验室或企业内训,需一定开发能力优化
⚔️ 3. OpenAWD
- GitHub: https://github.com/openawd/openawd
- 特点:
- 模块化设计(控制中心、靶机节点、监控端)
- 支持 实时流量捕获(通过 MITM 代理分析攻击行为)
- 可视化攻击路径展示
- 内置常见漏洞场景(如 SQLi、RCE)
- 部署: 依赖 Python/Docker,需配置代理网络
- 现状: 更新较慢,但架构清晰适合二次开发
- 适用场景: 科研或深度定制化需求
🧩 4. CTFd + AWD 插件扩展方案
- 核心平台: CTFd(开源 CTF 框架)
- AWD 插件:
- CTFd-AWD: 示例插件(基于 CTFd-Whale 改造)
- 功能:动态分配靶机,支持 Flag 自动轮询
- 自行开发: 通过 CTFd API 对接外部 AWD 引擎(如 VulnRange)
- CTFd-AWD: 示例插件(基于 CTFd-Whale 改造)
- 部署流程:
- 部署 CTFd(Docker 一键部署)
- 集成动态靶机插件(如 Whale)
- 自定义 AWD 计分逻辑(需 Python 开发)
- 优点: 复用成熟 CTF 平台,扩展性强
- 缺点: 需额外开发成本
⚠️ 开源 AWD 平台通用注意事项
- 网络隔离问题:
- 必须配置 Docker 网络隔离(如
--network=none
)或物理 VLAN - 避免战队互访宿主机,防止“场外攻击”
- 必须配置 Docker 网络隔离(如
- 性能瓶颈:
- 大规模比赛时优先优化 Docker 并发(限制 CPU/内存)
- 使用 Redis 缓存计分数据
- 漏洞场景定制:
- 所有平台均需 自行构建漏洞 Docker 镜像(参考 Vulhub)
- 编写 PoC 脚本自动检测 Flag/服务存活
- 动态 Flag 实现:
- 推荐用
env
注入动态 Flag(如FLAG=random(32)
) - 定时刷新 Flag 并更新检查脚本
- 推荐用
🚀 推荐组合方案
💡 入门建议:从 VulnRange 开始,其简洁架构适合理解 AWD 核心逻辑,再逐步扩展至其他平台。
所有项目均提供 Docker 化部署,实战前建议在虚拟机内测试网络隔离策略。遇到问题可优先查阅项目的 GitHub Issues 或国内安全社区(如先知、SecWiki)的适配教程。