vulsをvagrantのCentOS6にインストール
こちらの記事を書くときに利用した、vulsのインストール方法を共有します。
toripiyo.hatenablog.com
基本的には、Install Manually on CentOS · Vuls に記述されている方法を踏襲しています。
vagrantのCentOS6環境にvulsをローカルインストールして、自分自身に対して脆弱性スキャンをかけます。CentOS6の場合、スキャン自体はroot権限がなくても一般ユーザで実行可能です。
以下のコマンドは、CentOS6にログインして実行しています。
# install required packages sudo yum -y install sqlite git gcc make wget # install go wget https://dl.google.com/go/go1.10.1.linux-amd64.tar.gz sudo tar -C /usr/local -xzf go1.10.1.linux-amd64.tar.gz mkdir $HOME/go export GOROOT=/usr/local/go export GOPATH=$HOME/go export PATH=$PATH:$GOROOT/bin:$GOPATH/bin source /etc/profile.d/goenv.sh # deploy go-cve-dictionary sudo mkdir /var/log/vuls # change owner to be vagrant sudo chown vagrant /var/log/vuls sudo chmod 700 /var/log/vuls mkdir -p $GOPATH/src/github.com/kotakanbe cd $GOPATH/src/github.com/kotakanbe git clone https://github.com/kotakanbe/go-cve-dictionary.git cd go-cve-dictionary make install # fetch NVD data cd $HOME for i in `seq 2002 $(date +"%Y")`; do go-cve-dictionary fetchnvd -years $i; done ls -alh cve.sqlite3 # deploy goval-dictionary mkdir -p $GOPATH/src/github.com/kotakanbe cd $GOPATH/src/github.com/kotakanbe git clone https://github.com/kotakanbe/goval-dictionary.git cd goval-dictionary make install goval-dictionary fetch-redhat 6 # deploy Vuls mkdir -p $GOPATH/src/github.com/future-architect cd $GOPATH/src/github.com/future-architect git clone https://github.com/future-architect/vuls.git cd vuls make install # scan myself cat > ~/config.toml << EOF [servers] [servers.localhost] host = "localhost" port = "local" EOF vuls configtest vuls scan # check report vuls report --ovaldb-path /home/vagrant/go/src/github.com/kotakanbe/goval-dictionary/oval.sqlite3