我想说的是,CTF虽好,但绝不能盲目参加!在参加了各种各样的CTF之后有没想过举办属于自己的一场CTF呢?哈哈,我知道你一定这样想过!But 自己没有建站的基础,个怎么办?这时Facebook的FBCTF出现了,并且还是开源(https://github.com/facebook/fbctf)!FBCTF是一个由 facebook用PHP语言开发的在线安全比赛平台, 学生和开发者可通过此平台了解网络安全和进行安全编码的实践。FBCTF平台开源内容包括CTF游戏地图,可用平台组织自己的线上网络安全比赛。开放注册团队以及得分榜。 现有平台中的挑战包括逆向工程、取证技术、web应用程序安全、密码学和二进制攻击。
然而,在部署fbctf的路上很困难,按照官方文档试了试,失败!在网上搜教程,少之又少,找了很久,然而ubuntu14.04虚拟机中搭建fbctf线上比赛平台(http://www.linuxdiyf.com/linux/26934.html)大家也可以参考下。下面就来说一说具体步骤:
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一直安装不上,这里可以参考官方源码和教程(https://github.com/facebook/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。