基于 Docker 的 AWD 平台搭建与使用完备教程(含环境修复与比赛使用) [复制链接]
发表于 2025-11-13 11:46:31 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×
一、AWD赛事规则

1. 赛事根本信息

(1)赛事定位

本赛事为 CTF 攻防对抗(AWD)模式,焦点观察参赛队伍的实战攻防综合本事:参赛队伍需同步完成两项焦点使命——自身靶机服务加固(防御端)其他队伍靶机弊端使用(攻击端),终极以攻防体现综合计分排名。
(2)环境设置

设置项具体阐明靶机摆设基于 Docker 容器化摆设,接纳官方稳固根本镜像(如 Ubuntu 20.04 LTS);每队分配 1-3 台靶机,以 Linux 体系为主,预装 Web 服务(Apache/Nginx)、中央件(Tomcat/PHP-FPM)、数据库(MySQL/MongoDB)等,初始环境完全同等。访问权限仅提供低权限账户(如 ctf 用户),通过 SSH(默认 22 端口)或 VNC 毗连;克制通过提权工具(如 sudo 滥用、内核弊端提权)获取 root 权限,一经检测视为违规。辅助环境可选配流量分析假造机(预装 Wireshark、tcpdump 等工具),提供及时流量日记下载(路径由主理方赛前告知),仅用于本队攻防分析,克制用于攻击其他队伍。平台限定赛事提交平台(含 API 接口)、裁判体系、网关/DNS 服务器均为 非攻击目标,克制对其发起任何网络哀求(含扫描、访问、攻击)。2. 赛事流程

阶段时长焦点使命及限定赛前准备10 分钟1. 领取本队靶机 IP、账户暗码、唯一身份 token 凭据;
2. 确认赛事提交平台 API 所在及测试提交有用性;
3. 克制提前扫描任何网段或实验毗连其他队伍靶机。服务发现 & 加固30 分钟1. 仅允许使用本队靶机:扫描端口(如 nmap)、审计源码、备份数据、修复弊端;
2. 此阶段 不计分,且克制对其他队伍靶机发起任何网络毗连。攻防对抗180 分钟1. 攻击端:使用弊端获取其他队伍 Flag 并提交;
2. 防御端:维护自身服务可用性,拦截攻击并修复新弊端;
3. 及时计分,每 2 分钟为 1 轮计分周期。效果公示10 分钟1. 公布终极排名、总分及扣分详情;
2. 参赛队伍可现场提出分数贰言,裁判需在 5 分钟内核查并复兴。3. 焦点环节规则

(1)服务发现规范

允许使用


  • 端口扫描:使用 nmap 等工具扫描 本队靶机及赛事指定 C 段(如 nmap -sn 192.168.10.0/24),探测存活主机及开放端口;
  • 服务探测:通过 httpscan、dirsearch、gobuster 等工具,检测 Web 服务路径、备份文件(如 .sql、.bak)、敏感目次(如 admin/);
  • 设置排查:查找靶机内服务设置文件(如 Nginx 的 nginx.conf、PHP 的 php.ini、MySQL 的 my.cnf),定位服务根目次及关键参数。
克制举动


  • 提前攻击:在“服务发现 & 加固”阶段竣事前,对其他队伍靶机发起弊端使用、毗连测试等攻击举动;
  • 跨网段扫描:克制扫描非赛事指定的网段(如主理方办公网络、公网所在);
  • 攻击辅助环境:克制扫描、访问或攻击流量分析假造机、赛事提交平台、裁判体系等非靶机装备。
(2)防御使用规则

根本加固要求


  • 数据备份:必须备份 Web 源码(如 /var/www/html)及数据库(通过 mysqldump 等工具);允许 3 次一键规复(因自身设置失误导致服务故障时使用),每次规复扣 5 分,凌驾 3 次规复不计分且需自行排查故障。
  • 弱口令修复:修改全部默认账户暗码(如 MySQL 默认 root/root、PHPStudy 默认 123456、Web 配景默认 admin/admin),暗码需满意“8 位以上 + 字母巨细写 + 数字 + 特别符号”复杂度。
  • 权限控制:禁用无用账户(如 guest、test);限定命据库仅本地登录(修改 my.cnf 中 bind-address=127.0.0.1);设置 Web 目次权限为 755(文件为 644),克制 www-data 等服务账户拥有实行权限。
弊端修复原则


  • 允许通过代码审计工具(如 Seay 代码审计体系、Burp Suite)定位弊端,接纳“过滤伤害函数(如 PHP 的 eval()、exec())、表明伤害代码、添加输入验证”等方式修复;
  • 可摆设自界说 WAF(Web 应用防火墙):通过 PHP 的 auto_prepend_file 加载 WAF 脚本,或在 Nginx 设置中添加拦截规则,需确保 WAF 不影响服务正常访问(如 HTTP 200 相应),且需记录攻击日记(供裁判核查)。
服务器制止工作处置惩罚


  • 自身缘故原由宕机:因误删体系文件、设置错误(如 Nginx 设置语法错误)、加固过分(如关闭焦点服务)导致靶机宕机,可接洽技能支持重启靶机,每重启 1 次扣 10 分,且该轮服务可用分记为 0;
  • 他人违规攻击宕机:若因其他队伍发起 DoS/DDoS、删除关键文件等违规举动导致宕机,需在 5 分钟内提交换量日记、历程记录等证据,经裁判核实后:

    • 违规队伍按“恶意粉碎服务”条款处罚;
    • 本队不扣除服务可用分,且规复该轮应得分数。

克制使用


  • 关闭焦点服务:克制制止 Apache、Nginx、MySQL、Docker Daemon 等赛事指定焦点服务,导致主理方 Check 失败;
  • 删除须要文件:克制删除赛事标记文件(如 /etc/ctf-marker)、靶机体系文件(如 /bin/bash)或服务依靠文件;
  • 过分防御:克制摆设“一刀切”拦截规则(如拦截全部 HTTP POST 哀求),导致服务无法正常提供(主理方 Check 返回非 200 状态码)。
(3)攻击使用规则

Flag 机制


  • 天生规则:Flag 每 2 分钟革新 1 轮,存放于靶机 固定指定路径(如 /tmp/flag、/var/www/flag.txt),格式为 flag{随机 32 位字符串}(如 flag{8a3f2d7c9e1b4567890a1b2c3d4e5f6g});
  • 提交要求:通过赛事平台 API 提交(格式:https://[平台域名]/submit?token=[本队 token]&flag=[获取的 Flag]),重复提交无效(仅初次有用提交计分),提交卖弄 Flag(非靶机天生)视为违规。
允许攻击本事


  • 弊端使用:通过 SQL 注入、XSS、文件上传、反序列化、下令注入、PWN(缓冲区溢出)等弊端,获取靶机低权限或读取 Flag;
  • 权限维持:可在靶机内莳植“不死马”(如循环天生隐蔽脚本、定时使命反弹 Shell),但需确保 不粉碎服务可用性(如不占用 80% 以上 CPU/内存、不删除 Web 源码);
  • 信息网络:通过攻击获取的低权限,网络其他队伍靶机内的服务设置、弊端信息,用于后续攻击。
严格克制举动(含 DDoS 细化克制)


  • 任何情势的 DoS/DDoS 攻击

    • 流量克制:通过 TCP/UDP 大水、ICMP ping 风暴、SYN Flood 等方式,占用靶机带宽(如每秒发包超 1000 个);
    • 资源耗尽:高频访问靶机服务(如每秒哀求超 10 次)、运行挖矿脚本、创建大量空文件,导致 CPU/内存/磁盘占用超 90%;
    • 历程粉碎:杀死靶机焦点历程(如 apache2、mysqld、docker)、制止服务(如 systemctl stop nginx);

  • 暴力破解:克制使用工具(如 Hydra、Medusa)对其他队伍靶机的 SSH、MySQL、Web 配景等账户举行暴力破解(仅允许使用已知弱口令登录);
  • 恶意粉碎:窜改其他队伍 Web 源码(如删除 index.php、更换为恶意页面)、格式化靶机磁盘、删除 Docker 容器,导致服务 永世宕机且无法快速规复
  • 攻击非靶机目标:克制对赛事提交平台、裁判体系、其他队伍的流量分析假造机发起任何攻击(含扫描、访问、弊端使用)。
4. 计分与排名规则

(1)根本计分(每 2 分钟 1 轮,及时累计)

计分项目分值具体阐明服务可用+1 分主理方通过脚本 Check 本队靶机焦点服务(如 Web 服务返回 HTTP 200、MySQL 可正常毗连),相应正常则得分。服务不可用-1 分服务宕机、无相应或 Check 返回非指定状态码(如 404、502);该扣分由 本轮全部服务正常的队伍均分(例:本轮 10 队中 2 队不可用,8 队正常,每正常队均分 2×1/8=0.25 分)。提交有用 Flag+2 分每乐成提交 1 个其他队伍的有用 Flag 得 2 分,同一 Flag 重复提交不累计(仅初次有用提交计分)。自身 Flag 被获取-2 分本队 Flag 被其他队伍获取并乐成提交;该扣分由 全部获取该 Flag 的队伍均分(例:本队 Flag 被 3 队获取,每获取队均分 2/3≈0.67 分)。(2)排名规则


  • 优先按 总分降序 排名;
  • 若总分类似,比力 有用 Flag 获取总数(获取越多排名越靠前);
  • 若总分与 Flag 数量均类似,比力 服务可用率(服务可用轮数 / 总攻防轮数,可用率越高排名越靠前);
  • 若上述三项均类似,比力 末了一轮得分(得分高者排名靠前)。
5. 违规处罚

违规举动处罚步伐初次实行 DoS/DDoS 攻击、恶意粉碎服务扣除当前总分的 50%,在赛事群内转达品评,记录违规一次。二次违规(含重复 DoS、攻击平台)直接取消赛事资格,清空全部门数,克制到场本次赛事后续环节。提交卖弄 Flag 干扰裁判每提交 1 次扣 10 分;累计 3 次提交卖弄 Flag,取消赛事资格。攻击赛事平台/辅助环境/非靶机目标视为严峻违规,直接取消资格,转达全部参赛队伍,并克制到场主理方后续赛事。提权获取 root 权限/使用未授权工具(如木马)取消赛事资格,清空分数,且需共同裁判核查工具泉源。导致靶机永世无法规复(如格式化磁盘)取消资格,转达品评,并需负担靶机重修的技能本钱(视环境追偿)。6. 附则


  • 赛事技能支持仅资助办理 环境故障(如 Docker 容器瓦解、靶机无法毗连),不提供弊端提示、加固发起等技能引导;
  • 参赛队伍需自行记录攻防使用日记(如攻击脚本实行记录、防御设置修改记录),裁判有权要求提交日记核查,拒绝提交视为违规
  • 主理方拥有规则终极表明权,可根据现场环境(如大规模环境故障、违规举动频发)调解计分权重、攻防时长,调解后将第一时间关照全部队伍;
  • 赛事期间克制抄袭其他队伍的攻防方案(如复制攻击脚本、抄袭 WAF 规则),一经发现,扣除当前总分的 30%,抄袭累计 2 次取消资格。
二、AWD平台搭建步调

1. 克隆AWD平台资源

实行以下下令克隆官方堆栈到本地:
  1. sudo git clone https://github.com/zhl2008/awd-platform.git
复制代码
2. 安装Docker与Docker Compose

通过 APT 包管理器安装根本依靠工具:
  1. apt install docker && apt install docker-compose
复制代码
3. Docker换源(提升镜像下载速率)

使用 LinuxMirrors 提供的脚本一键换源,下令如下:
[code]bash
回复

使用道具 举报

登录后关闭弹窗

登录参与点评抽奖  加入IT实名职场社区
去登录
快速回复 返回顶部 返回列表