awd平台搭建
1.先是使用
https://github.com/m0xiaoxi/AWD_CTF_Platform
这个平台搭建
这个平台很好用,是python脚本自动搭建,基本不需要怎么更改,自带了四道题的源码,有两道环境有问题,docker搭不起来,有时间再去解决把。
2.之后就换成了
https://github.com/zhl2008/awd-platform
可以看到这个平台好久没更新了,而且有许多小问题。
这个平台带了好多题目,很大,要是用github那个20kb的下载速度,一晚上差不多把。
之后也是直接使用自带的python脚本,但是一直给我报错can‘t find web_14.04
- python stop_clean.py
- python batch.py web_server
- python start.py ./
用docker image search web_14.04是可以找到的,但是名称不一样,直接下载zhl2008/web_14.04就好。
但是由于这两个名称不一样,需要修改dockerfile,后来索性就直接把本地的image名称改了,方便。
- sudo docker tag zhl2008/web_14. web_14.
实际上这个docker是一个ubuntu 14
然后docker是没什么问题
但是,之后发现,这个分数可以不受flag更新轮数限制,一个flag可以无限刷分。那不就是比谁脚本跑得快吗= =
感觉在flag_server里time的脚本有关系,但是不怎么会改。
于是,百度。。。
原来有人把坑都给踩好了的,早点百度就不用花那么多时间了
https://www.cnblogs.com/Triangle-security/p/11332223.html#
- #!/usr/bin/env python
- #coding:UTF-8
- import time
- import os
- print int(time.time())
- Unix_time = int(time.time())
- print time.ctime(Unix_time)
- while True:
- time_his = []
- time_list = ["","","","","","",""]
- for i in time_list:
- dt = "2019-04-28 10:"+str(i)+":00"
- time_his.append(dt)
- a = time_his[0]
- b = time_his[1]
- c = time_his[2]
- d = time_his[3]
- e = time_his[4]
- f = time_his[5]
- g = time_his[6]
- time_stamp = [a,b,c,d,e,f,g]
- for k in time_stamp:
- h = open("time.txt", 'w+')
- timeArray = time.strptime(k, "%Y-%m-%d %H:%M:%S")
- timestamp = time.mktime(timeArray)
- print (int(timestamp))
- data = (int(timestamp))
- separated = '|'
- zero = ''
- print >>h,(zero),(separated),(data),(separated),(zero),(separated),(data),(separated),(zero),(separated),(zero),(separated),(data),(separated),(zero),(separated),(zero),
- # 0|data|0|data|0|0|data|0|0
- h.close()
- time.sleep(300)
在flag那里提前启动这个脚本就行了,还要准时提前5min,好像不大聪明的亚子==
算了,谁让我只会傻瓜操作呢==
放上我的一键化脚本,稍加修改,不出意外的话,应该是可以成功的。
- #!/bin/bash
- #git clone https://github.com/zhl2008/awd-platform #下载源码
- apt-get install -y curl
- curl -fsSL https://get.docker.com -o get-docker.sh
- sudo sh get-docker.sh
- cd awd-platform/
- docker pull zhl2008/web_14.
- docker tag zhl2008/web_14. web_14.
- #cd flag_server
- #python time.py(时间的那个脚本)
- #cd ..
- #sleep()
- python stop_clean.py
- python batch.py web_server
- python start.py ./
大概就是这样子了,服务器的话,每次都去阿里云买一个按量计费的,一次比赛几个小时也就不到十块钱,十几个队是完全够用的。
其实这两个平台挺像的,都是python写的自动化脚本,对docker有没什么理解也可以,python脚本修改每个docker的配置脚本,用的docker搭建靶机的环境,python服务生成并检查flag,再加减分数,再写个前端展示分数和攻击过程。诶,说上去很简单的样子。动手能力强的话可以尝试把它改的更完美一些。
awd平台搭建的更多相关文章
- 线下AWD平台搭建以及一些相关问题解决
线下AWD平台搭建以及一些相关问题解决 一.前言 文章首发于tools,因为发现了一些新问题但是没法改,所以在博客进行补充. 因为很多人可能没有机会参加线下的AWD比赛,导致缺乏这方面经验,比如我参加 ...
- 云服务器AWD平台搭建
开学后实验室来了几个新同学,在线上CTF方面大家一直在持续学习,但AWD模式的CTF我们练习并不多,所以准备搭建一个AWD平台用于实验室成员的线下赛攻防练习. 最开始的是防灾科技大学的线下AWD靶场: ...
- awd平台搭建及遇到的问题
1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...
- AWD平台搭建及遇到的问题分析
1.安装docker环境 a.使用的是ubuntu系统,通过sudo apt install docker.io进行docker得安装,此方式会自动启动docker服务. b.通过curl -s ht ...
- 【iOS】Jenkins Gitlab持续集成打包平台搭建
Jenkins Gitlab持续集成打包平台搭建 SkySeraph July. 18th 2016 Email:skyseraph00@163.com 更多精彩请直接访问SkySeraph个人站点: ...
- hadoop伪分布式平台搭建(centos 6.3)
最近要写一个数据量较大的程序,所以想搭建一个hbase平台试试.搭建hbase伪分布式平台,需要先搭建hadoop平台.本文主要介绍伪分布式平台搭建过程. 目录: 一.前言 二.环境搭建 三.命令测试 ...
- LNMP平台搭建---MySQL安装篇
在前两篇中,安装了一个基本的Web服务器,但是只能提供静态网页查看,要做成动态网站,就必须要数据库或其他编程语言支持了,这里先介绍MySQL数据库的安装. MySQL是一个开源的数据库,在互联网行业应 ...
- 基于Moodle的IT课程辅助教育平台搭建
基于Moodle的IT课程辅助教育平台搭建 Moodle是一个开源课程管理系统(CMS),也被称为学习管理系统(LMS)或虚拟学习环境(VLE).它已成为深受世界各地教育工作者喜爱的一种为学生建立网上 ...
- [Openwrt 项目开发笔记]:Openwrt平台搭建(一)
[Openwrt项目开发笔记]系列文章传送门:http://www.cnblogs.com/double-win/p/3888399.html 正文: 最近开始着手进行Openwrt平台的物联网网关设 ...
随机推荐
- 什么是DevOps ?
DevOps字面理解 DevOps(Development和Operations组合)是一组过程.方法与系统的统称,用于促进开发(应用程序/软件工程).技术运营和质量保障(QA)部门之间的沟通.协作与 ...
- 用python实现矩阵转置,python3 中zip()函数
前几天群里有同学提出了一个问题:手头现在有个列表,列表里面两个元素,比如[1, 2],之后不断的添加新的列表,往原来相应位置添加.例如添加[3, 4]使原列表扩充为[[1, 3], [2, 4]],再 ...
- 一份精简的Numpy使用指引(附python演练)
欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! Numpy 的主要用途是以数组的形式进行数据操作. 机器学习中大多 ...
- 使用Keras进行深度学习:(六)LSTM和双向LSTM讲解及实践
欢迎大家关注我们的网站和系列教程:http://www.tensorflownews.com/,学习更多的机器学习.深度学习的知识! 介绍 长短期记忆(Long Short Term Memory, ...
- MySQL count知多少
统计一个表的数据量是经常遇到的需求,但是不同的表设计及不同的写法,统计性能差别会有较大的差异,下面就简单通过实验进行测试(大家测试的时候注意缓存的情况,否则影响测试结果). 1. 准备工作 为了后续测 ...
- 《带你装B,带你飞》pytest成魔之路4 - fixture 之大解剖
1. 简介 fixture是pytest的一个闪光点,pytest要精通怎么能不学习fixture呢?跟着我一起深入学习fixture吧.其实unittest和nose都支持fixture,但是pyt ...
- 【cs224w】Lecture 4 - 社区结构
Community 转自本人:https://blog.csdn.net/New2World/article/details/105328390 之前讲到了网络中节点扮演不同角色,而角色这个概念和社区 ...
- 怎么处理使用UINavigation(导航控制器时) UIScrollView及其子类UITableView、UICollectionView可能出现的向下偏移64Px或者顶部对齐等问题
前言 近期在做项目时遇到了好几起由于自动偏移或则没有自动偏移而导致的界面布局问题,尤其是在昨晚新版本赶上IOS9系统升级的时候,刚升级完了后就发现项目里面很多使用UINavgati ...
- Ali_Cloud++:阿里云部署 Jenkins持续集成自动化部署
安装方式: 1.yum 源安装 rpm包 2.结合 tomcat 使用 war包 ....... 下载地址:Dowlnoad (分:长期支持版本 (LTS) 和 每周更新版) jenkins插件 ...
- Three.js中的动画实现02-[Three.js]-[Object3D属性.onAfterRender/.onBeforeRender]
Table Of Content Object3D简介以及两个属性的介绍 一个示例 Object3D简介以及两个属性的介绍 这是Three.js中大部分对象的基类,提供了一系列的属性和方法来对三维空间 ...