AWD平台搭建及遇到的问题分析
1、安装docker环境
a、使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务。
b、通过curl -s https://get.docker.com/ | sh进行安装,此方式可能需要手动启动docker服务,启动命令为:service start docker。
安装成功后可通过docker version查看版本信息
2、下载比赛题目
a、通过sudo git clone https://github.com/zhl2008/awd-platform.git下载题目,或在https://github.com/zhl2008/awd-platform.git下载压缩包进行解压,建议直接下载到要部署得服务端。文件内容主要包含以下信息(多出来的team1、team2、team3是因为开启了三个队伍):
3、下载镜像
a、进入项目根目录,下载镜像:sudo docker pull zhl2008/web_14.04。
4、创建比赛队伍
命令为:python batch.py web_yunnan_simple 3,复制3个web_yunnan_simple的靶机,此处需要注意不能以python3启动,否则会报错。
5、修改check.py信息(其余信息也可在其中修改,如刷新时间)
6、开启比赛
通过python start.py ./ 3开启比赛。
7、访问web站点信息
各队伍得网站只需要修改端口即可,例如:http://ip:8801。
8、连接裁判机
进入check_server目录,通过:python check.py执行check.py并访问得分界面,原界面比较丑(0|0|0),在网上找到的夜莫离大佬做的界面,大家需要的自己找一下,大家记得在得分文件中修改ip地址为虚拟机或本地得地址。
9、结束比赛
通过sudo python stop_clean.py来结束比赛服务。
补充:
在搭建的过程中共遇到了以下问题:
1、在自己得操作过程中因为对docker不够熟悉,第二次启动时出现了无法启动check.py的情况,后来经过多次尝试和了解,发现在启动项目之前需要先选择相应的docker容器,可以通过sudo docker images查看本机的容器都有哪些,然后选择对应项目的docker容器即可(docker pull)。
2、如果存在score.txt、result.txt无法写入分数、攻击过程,则给与文件777权限,例如:chmod 777 score.txt。
3、如果文件分数会一直进行扣分,则修改flag_server地址为虚拟机的地址。
4、修改3之后可能会导致分数一直增加,原因是代码中设置了check成功后对应分数+1,修改为0即可。
AWD平台搭建及遇到的问题分析的更多相关文章
- 线下AWD平台搭建以及一些相关问题解决
线下AWD平台搭建以及一些相关问题解决 一.前言 文章首发于tools,因为发现了一些新问题但是没法改,所以在博客进行补充. 因为很多人可能没有机会参加线下的AWD比赛,导致缺乏这方面经验,比如我参加 ...
- 云服务器AWD平台搭建
开学后实验室来了几个新同学,在线上CTF方面大家一直在持续学习,但AWD模式的CTF我们练习并不多,所以准备搭建一个AWD平台用于实验室成员的线下赛攻防练习. 最开始的是防灾科技大学的线下AWD靶场: ...
- awd平台搭建
1.先是使用 https://github.com/m0xiaoxi/AWD_CTF_Platform 这个平台搭建 这个平台很好用,是python脚本自动搭建,基本不需要怎么更改,自带了四道题的源码 ...
- awd平台搭建及遇到的问题
1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...
- Storm on Yarn :原理分析+平台搭建
Storm on YARN: Storm on YARN被视为大规模Web应用与传统企业应用之间的桥梁.它将Storm事件处理平台与YARN(Yet Another Resource Negotiat ...
- ELK日志分析平台搭建
ELK平台介绍 在搜索ELK资料的时候,发现这篇文章比较好,于是摘抄一小段: 以下内容来自:http://baidu.blog.51cto.com/71938/1676798 日志主要包括系统日志.应 ...
- Centos7.5搭建ELK-6.5.0日志分析平台
Centos7.5搭建ELK-6.5.0日志分析平台 1. 简介 工作工程中,不论是开发还是运维,都会遇到各种各样的日志,主要包括系统日志.应用程序日志和安全日志,对于开发人员来说,查看日志,可以实时 ...
- hadoop伪分布式平台搭建(centos 6.3)
最近要写一个数据量较大的程序,所以想搭建一个hbase平台试试.搭建hbase伪分布式平台,需要先搭建hadoop平台.本文主要介绍伪分布式平台搭建过程. 目录: 一.前言 二.环境搭建 三.命令测试 ...
- 【MongoDB】windows平台搭建Mongo数据库复制集(类似集群)(转)
原文链接:[MongoDB]windows平台搭建Mongo数据库复制集(类似集群)(一) Replica Sets(复制集)是在mongodDB1.6版本开始新增的功能,它可以实现故障自动切换和自 ...
随机推荐
- nodejs 实现 磁力链接资源搜索 BT磁力链接爬虫
项目简介 前端站点 项目效果预览 http://findcl.com 使用 nodejs 实现磁力链接爬虫 磁力链接解析成 torrent种子信息,保存到数据库,利用 Elasticsearch 实现 ...
- java中异常这种技术框架是怎么工作的?
异常这种技术框架是怎么工作的?马克-to-win:注意是运行程序时,而不是编译时,当一个非正常情况出现,比如除0,就叫异常情况.马克-to- win:为了能优雅的处理异常情况(在出现异常情况后,程序不 ...
- PAT B1042 字符统计
请编写程序,找出一段给定文字中出现最频繁的那个英文字母. 输入格式: 输入在一行中给出一个长度不超过 1000 的字符串.字符串由 ASCII 码表中任意可见字符及空格组成,至少包含 1 个英文字母, ...
- 高频重要前端API手写整理(call,apply,bind,instanceof,flat,filter,new,防抖,节流,深浅拷贝,数组乱序,数组去重,继承, lazyman,jsonp的实现,函数的柯里化 )
Function.prototype.call = function(context,...args){ var context = context || window; context.fn = t ...
- 数组 indexOf()
众所周知,indexOf()这个方法经常出现在字符串的使用中,也许是用来寻找字符串中某一字符在字符串中的位置,或者也可以用来寻找字符串中重复出现的字符有哪些.对于刚接触 JS 的我们来说,在对数组的操 ...
- js手机号隐藏中间四位
var tel = "13122223333"; var reg = /^(\d{3})\d{4}(\d{4})$/; tel = tel.replace(reg, "$ ...
- 使用babel编译器将es6代码转为es5的方法
1.首先需要安装工具 babel-cli ========= npm i babel-cli -g install 可以使用i 代替 2.安装插件 npm i --save-dev babe ...
- JavaEE期末复习知识点总结
JavaEE期末复习知识点总结 Java企业应用开发环境 Maven的基础概念 Maven是一个项目管理工具,可以对 Java 项目进行构建.依赖管理 Maven仓库 Maven 仓库是项目中依赖的第 ...
- HTTP长连接和短连接及应用情景
HTTP短连接 HTTP/1.0中默认使用短连接, 客户端和服务器进行一次HTTP操作, 就需要建立一次连接, 任务结束连接也关闭. 当客户端浏览器访问的web网页中包含其他的web资源时, 每遇到一 ...
- Hash-题解-方法
有效的字母异位词 给定两个字符串 s 和 t ,编写一个函数来判断 t 是否是 s 的字母异位词. 示例 1: 输入: s = "anagram", t = "nagar ...