最近,网络空间安全的概念被不断提及,网络安全也越来越受到人们的重视,由此,各种各样的信息安全竞赛也应运而生,可谓是铺天盖地,让人眼花缭乱!不知不觉,自己也逐渐成了一个小赛棍。。。。。。其实搞信安,最重要的就不不断地去实践,也只有在不断的实践中,以赛代练,才会让自己 的能力得到不断的提升。但是面对如此多的CTF,究竟该选择哪个呢?其实,只有最适合自己水平的才是最合适的。水平太低和太高,自己都得不到锻炼甚至还会打击自己的信心。哈哈说这些似乎是有些跑题了,其实我想说的是,CTF虽好,但绝不能盲目参加!接下来,回到正题:
在参加了各种各样的CTF之后有没想过举办属于自己的一场CTF呢?哈哈,我知道你一定这样想过!But 自己没有建站的基础,个怎么办?这时Facebook的FBCTF出现了,并且还是开源(https://github.com/facebook/fbctfcd fbctf ) !FBCTF是一个由 facebook用PHP语言开发的在线安全比赛平台, 学生和开发者可通过此平台了解网络安全和进行安全编码的实践。FBCTF平台开源内容包括CTF游戏地图,可用平台组织自己的线上网络安全比赛。开放注册团队以及得分榜。 现有平台中的挑战包括逆向工程、取证技术、web应用程序安全、密码学和二进制攻击。
然而,在部署fbctf的路上我却一脸懵逼啊,按照官方文档试了试,失败!在网上搜教程,少之又少(不过墙外有不少好东西哦)找了很久,发现了一个表哥几天前写的( ubuntu14.04虚拟机中搭建fbctf线上比赛平台)大家也可以参考下。下面就来说一说具体步骤:
1、建虚拟机(本地Ubuntu系统或者server也都可以)
按照官方文档,建一个Ubuntu14.04 64bit的虚拟机,内存我给了2G(一定要保证内存2G以上,不然配hhvm时会出错,HHVM内存大户。。),硬盘给了15G。
2、翻墙
之前我试了很多次,都失败了,后来才发现需要翻墙,应该是执行脚本的时候,下载的东西里面有墙外的东西,一直配置不好,翻墙后,问题迎刃而解。
3、安装git
sudo apt-get install git
4、下载fbctf
git clone https://github.com/facebook/fbctf
cd fbctf
5、执行脚本,安装Apache2和MySQL(MySQL的默认password为root)
./extra/provision.sh -m prod -c self -s $PWD
6、安装hhvm
执行完后会发现hhvm一直安装不上,这里可以参考官方源码和教程(FBCTF)
echo '140.211.166.134 dl.hhvm.com' >> /etc/hosts
wget -O - http://dl.hhvm.com/conf/hhvm.gpg.key | sudo apt-key add -
echo deb http://dl.hhvm.com/ubuntu trusty main | sudo tee /etc/apt/sources.list.d/hhvm.list
sudo apt-get update
sudo apt-get install hhvm
7、再次执行脚本
./extra/provision.sh -m prod -c self -s $PWD
8、测试
到这里,经过一段时间安装后,会看到这样的提示“fbctf deployment is complete!”,说明安装成功了,注意管理员账号一般为admin,但这里会随机生成管理员密码,要保存备份一下,方便以后管理与修改!最后可以打开虚拟机的浏览器,输入127.0.0.1测试
注意:一定记得翻出去~~~推荐个翻墙神器(Psiphon3)