Facebook CTFのインストール

2020年7月10日金曜日

その他

t f B! P L
Facebook CTF(Capture the flag)のインストールメモです。
インストール先は、 VirtualBox上にインストールしたUbuntu 16.04 LTSです。

インストール手順

インストールの手順自体は非常に簡単です。githubからソースコードを取得して、quick_setupコマンドを実行するだけです。

$sudo apt-get update
$sudo apt-get install git
$git clone https://github.com/facebook/fbctf
$cd fbctf
$source ./extra/lib.sh
$quick_setup install prod

エラー

すんなりとインストールできると思っていたら、大量のエラーが出ました。

[+] Running grunt to generate JS files
/var/www/fbctf/node_modules/grunt/node_modules/mkdirp/lib/opts-arg.js:7
    opts = { mode: 0o777, fs, ...opts }
                              ^^^

SyntaxError: Unexpected token ...
    at createScript (vm.js:56:10)
    at Object.runInThisContext (vm.js:97:10)
    at Module._compile (module.js:549:28)
    at Object.Module._extensions..js (module.js:586:10)
    at Module.load (module.js:494:32)
    at tryModuleLoad (module.js:453:12)
    at Function.Module._load (module.js:445:3)
    at Module.require (module.js:504:17)
    at require (internal/module.js:20:19)
    at Object.<anonymous> (/var/www/fbctf/node_modules/grunt/node_modules/mkdirp/index.js:1:79)


xz: (stdin): File format not recognized
tar: Child died with signal 13
tar: Error is not recoverable: exiting now
curl: (23) Failed writing body (3766 != 11216)

インストール用スクリプトの修正

インストール用スクリプト(extra/lib.sh)のnodejsとzstdのインストール部分を修正することで、問題なくインストールできるようになりました。具体的には、nodejsのバージョンを6xから10xに変更し、zstdインストール時のtarのオプションを変更しました。

function install_nodejs() {
  # log "Downloading and setting node.js version 6.x repo information"
  # dl_pipe "https://deb.nodesource.com/setup_6.x" | sudo -E bash -

  log "Downloading and setting node.js version 10.x repo information"
  dl_pipe "https://deb.nodesource.com/setup_10.x" | sudo -E bash -

  log "Installing node.js"
  package nodejs
}


function install_unison() {
  # cd /
  # dl_pipe "https://www.archlinux.org/packages/extra/x86_64/unison/download/" | sudo tar Jx

  cd /tmp
  sudo apt-get install -y zstd
  curl -L  https://www.archlinux.org/packages/extra/x86_64/unison/download/ --output unison.tar.zst

  sudo tar -xf unison.tar.zst -C / --use-compress-program=zstd     
}

このブログを検索

QooQ