手把手教你打造超级CTF平台 – 作者:独立团孙德胜

大家好,我是独立团孙德胜!

CTF,是最近大火的一个IP……

随之而来的是大批CTF训练平台和CTF比赛的到来。

这其中呢,具有代表的CTF比赛有老牌的WCTF、XCTF,还有各大厂所举办的数不清的CTF比赛,这里为了避免广告嫌疑, 不写上了。

但是呢,可以给大家安利个好的CTF训练平台,老牌的Bugku咱不提,基本上都知道。

但新起之秀的圈子的砺剑CTF平台、BUUCTF 以及未来我朋友的超级平台(字节脉搏)也即将上线了。

这些平台无疑都采用了动态靶场 + 丰富的CTF题目,更有的还有今年各大比赛的原题,实属“牛批”……

那你想不想做一个,一样的CTF平台呢?

那就由孙德胜,来教大家如何搭建CTF的训练平台,以及炫酷的CTF比赛平台!

训练平台,感谢琴里大佬提供

比赛平台,感谢琴里大佬提供

训练平台搭建方法(CTFd)

安装git

sudo apt-get install git

下载ctfd

sudo git clonehttps://github.com/isislab/CTFd.git

安装pip

sudo apt-get install python-pip

安装pip

sudo apt-get install python-pip

安装Flask

sudo pip2 install Flask

到 CTFd的路径下,运行prepare.sh

sudo ./prepare.sh

运行CTFd目录下的serve.py  

sudo python serve.py 

安装完成

访问IP

步骤太繁琐?网上同类文章太多?想一键获取搭建好的CTF平台?刚好,你认识孙德胜,文章结尾提供建好的镜像!

一键部署,快人一步!

比赛平台搭建

安装Git

git clone https://github.com/facebook/fbct

进入FBCTF文件夹

cd fbctf

安装Virtualbox和Vagrant

apt-get install virtualbox vagrant

查看Vagrant版本

vagrant -v

下载安装Ubuntu14.04(需要安装Virtualbox)

vagrant box add ubuntu/trusty64   

通过Vagrant开启虚拟机

vagrant up

开启成功后,可以通过浏览器访问 https://10.10.10.5 使用平台,并且可以通过‘vagrant ssh’命令连接Ubuntu14.04,连接后源代码位置:/var/www/fbctf/,做二次开发可以直接修改源代码,修改后重启服务即可。

什么?还是不想搭建?想一键获取搭建好的CTF平台?那么,巧了!因为你认识孙德胜,所以依旧在文章的结尾提供建好的镜像。

现在,我们讨论如何生成动态靶机。

利用大佬开发的CTFd-Whale:

1、在机器上安装好 Docker 和 Docker-Compose,并且启用 Docker Swarm。

Docker Swarm 参考:https://www.jianshu.com/p/77c4c62d9afe

注意需要用以下命令来标记节点:

docker node ls #检查节点 ID

docker node update –label-add name=linux-1 <节点 ID>

参考链接:

https://docs.docker.com/install/linux/docker-ce/ubuntu/

https://docs.docker.com/compose/install/

2、在机器上下载代码。

git clone -b single https://github.com/glzjin/CTFd.git

3、进入目录,编辑 frp 两端配置文件,使 token 随机,再使用 docker-compose 启动相关组件。

cd CTFd

vi frp/frps.ini # token 一定要随机

vi frp/frpc.ini # token 一定要随机

git submodule update --init

docker-compose up -d

4、启动完毕,打开 http://ip:8000 安装 CTFd。

5、进入系统后台设置,打开插件设置页面,按照如下指导进行设置。点击可看大图。

Frp Config Template,记得修改 token:

[common]

token = randomme

server_addr = 172.1.0.4

server_port = 6490

pool_count = 200

tls_enable = true

admin_addr = 172.1.0.3

admin_port = 7400

其他内容无特殊情况无需修改。

6、添加一个题目,进行测试。

具体可以参照这位大佬的博客:

https://www.zhaoj.in/read-6333.html

当你做完了以上的所有步骤,恭喜你,你已经成功搭建CTF平台了!

最后,我要感谢以下的几位大佬:

@圈子社区 国士无双

@圈子社区 段鹏

@Tone

@glzjin

@admin-琴里

没有你们,就没有德胜的这篇文章,非常感谢!

比赛平台:链接:https://pan.baidu.com/s/1BWPGqLRUAyBcl-81c3xKGg#

提取码:zcfr #

训练平台:链接:https://pan.baidu.com/s/1N_IBcgH5lUpoUzrwC7_ifg#

提取码:zvz6 #

*本文作者:独立团孙德胜,转载请注明来自FreeBuf.COM

来源:freebuf.com 2019-11-12 09:30:16 by: 独立团孙德胜

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论