从2013年开始,Facebook就在全世界举办CTF竞赛。现在,它将它的CTF平台源码放在Github上开源并向大众开放CTF平台。 Facebook安全部工程师Gulshan Singh说:我们为所有人提供了一个能在后台维护的CTF平台,它有CTF游戏地图,注册团队,还有显示得分榜的功能。 现在平台中的挑战包括逆向工程、取证技术、WEB应用程序安全、密
从2013年开始,Facebook就在全世界举办CTF竞赛。现在,它将它的CTF平台源码放在Github上开源并向大众开放CTF平台。 facebook安全部工程师Gulshan Singh说:
我们为所有人提供了一个能在后台维护的CTF平台,它有CTF游戏地图,注册团队,还有显示得分榜的功能。 现在平台中的挑战包括逆向工程、取证技术、WEB应用程序安全、密码学和二进制攻击。你也可以在FacebookCTF平台上定制你自己的竞赛。
而该平台开源已久,无奈个别小伙伴不会安装,在这里统一解答一次。
平台安装
平台分两种安装模式:开发模式和生产模式
开发模式使用到了Vagrant和VirtualBox
系统环境:Ubuntu14.04(物理机)
开发模式:
1、安装Git
apt-get install git
2、获取项目源代码
git clone https://github.com/facebook/fbctf
3、进入FBCTF文件夹
cd fbctf
4、安装Virtualbox和Vagrant(Windows版Vagrant安装参考:http://blog.csdn.net/zzqwvoid/article/details/54342117)
apt-get install virtualbox vagrant
5、查看Vagrant版本,低版本在后面的操作中会报错,最好安装最新版,如果是使用Ubuntu源安装的Vagrant将会在后面提示找不到命令(原因:vagrant版本太低;解决办法:安装最新版,参考:http://blog.csdn.net/zzqwvoid/article/details/54342117).
vagrant -v
6、下载安装Ubuntu14.04(需要安装Virtualbox,推荐Virtualbox,虽然Vmware也可以,但对应的Vagrant是收费版。)
vagrant box add ubuntu/trusty64
7、通过Vagrant开启虚拟机
vagrant up
开启成功后,可以通过浏览器访问 https://10.10.10.5 使用平台,并且可以通过‘vagrant ssh’命令连接Ubuntu14.04,连接后源代码位置:/var/www/fbctf/,做二次开发可以直接修改源代码,修改后重启服务即可。
生产模式:
系统环境:Ubuntu14.04(虚拟机)
安装步骤:
1、安装Git
apt-get install git
2、获取项目源代码
代码语言:javascript复制git clone https://github.com/facebook/fbctf
3、进入FBCTF文件夹
代码语言:javascript复制cd fbctf
4、赋予Provision.sh 可执行权限
代码语言:javascript复制chmod 777 extra/provision.sh
5、源码编译安装
代码语言:javascript复制 ./extra/provision.sh -m prod -s $PWD
6、赋予Lib.sh可执行权限
代码语言:javascript复制chmod 777 extra/lib.sh
7、修改admin密码
代码语言:javascript复制source ./extra/lib.sh
set_password new_password ctf ctf fbctf $PWD
新密码为“new_password”
安装完成后可以通过访问 https://[IP(虚拟机)] 使用平台。
使用普通用户登陆数据库
1、打开终端,使用超级管理员用户登陆Mysql数据库,并输入密码。
mysql -uroot -p
2、创建普通用户:xcu,并设置用户的密码:xcu2017
grant user 'xcu'@'127.0.0.1' identified by 'xcu2017';
3、对xcu用户进行授权。
代码语言:javascript复制grant all on fbctf.* to 'xcu'@'127.0.0.1' identified by 'xcu2017';
4、刷新数据库的权限设置。
代码语言:javascript复制flush privileges;
5、退出数据库
代码语言:javascript复制exit;
6、修改/var/www/fbctf/下的settings.ini配置文件。
代码语言:javascript复制DB_HOST = '127.0.0.1'
DB_PORT = '3306'
DB_NAME = 'fbctf'
DB_USERNAME = 'xcu'
DB_PASSWORD = 'xcu2017'
MC_HOST = '127.0.0.1'
MC_PORT = '11211'
7、重启MySQL服务。
service mysql restart
8、重新启动Nginx服务器。
service nginx restart
中文版安装
已经安装成功平台,更新代码
点击上方链接下载并解压出lang_zh-cn.php
上传到服务器根目录开始的
代码语言:javascript复制ar/www/fbctfc/language/
目录下
重新编译(有人称之为更新缓存)
代码语言:javascript复制sudo rm /var/cache/hhvm/hhvm.hhbc
sudo hhvm-repo-mode enable "/var/www/fbctf"
sudo chown www-data:www-data /var/cache/hhvm/hhvm.hhbc
sudo service hhvm start
sudo service nginx restart
首次安装
点击下载 本地下载
facebookCTF平台(汉化)搭建
下载量 : 31 | 文件类型 : 压缩文件
在从github下载源码到服务器之后,开始安装FBCTF之前,点击上方文件下载并解压出lang_zh-cn.php
放到你下载的fbctf/src/language/
目录下,之后安装FBCTF
其他说明:因为“lang_zh-cn.php”和“lang_zh-tw.php”在后台管理中都显示为“中文/中文”,但是有一个简体有一个繁体,会造成不必要的麻烦,为避免这种情况,不需要繁体中文的用户可以删掉“lang_zh-tw.php”