LoginSignup
1
3

More than 5 years have passed since last update.

脆弱性スキャンツール vuls 〜cron定周期スキャン編〜

Last updated at Posted at 2018-05-31

vuls稼働、リモートサーバのスキャンまで

vuls稼働、リモートサーバのスキャンまでは下記記事を参照ください。
脆弱性スキャンツール vuls 〜リモートサーバスキャン編〜

vulsをvulsuserなどのユーザで稼働させている場合、cronで定周期スキャンさせるには一手間必要になる。
config.toml/home/vulsuser にあるのでどこからでも起動できるようにする。

vuls稼働サーバでの作業

cve更新、vuls起動シェルの設定

# sudo su -
# mkdir /usr/bin/vuls2slack
/etc/profile.d/vuls.sh
function vuls() {
    case $1 in
      "scan")
        /home/vulsuser/go/bin/vuls $@ --config=/home/vulsuser/config.toml;;
      "configtest")
        /home/vulsuser/go/bin/vuls $@ --config=/home/vulsuser/config.toml;;
      "report")
        /home/vulsuser/go/bin/vuls $@ --config=/home/vulsuser/config.toml -cvedb-path=/home/vulsuser/cve.sqlite3 -ovaldb-path=/home/vulsuser/oval.sqlite3;;
      *)
        ;;
    esac
}

alias vuls=vuls
/usr/bin/vuls2slack/shell
#!/bin/bash
pushd /home/vulsuser
. /etc/profile.d/vuls.sh
PATH=$PATH:$HOME/.local/bin:$HOME/bin:$HOME/go/bin:/usr/local/go/bin
export PATH
go get -u github.com/kotakanbe/go-cve-dictionary
go get -u github.com/future-architect/vuls
go-cve-dictionary fetchjvn -last2y
go-cve-dictionary fetchnvd -last2y
vuls scan --deep
vuls report --lang=ja -to-slack
# chmod +x /etc/profile.d/vuls.sh
# chmod +x /usr/bin/vuls2slack/shell

cve更新、vuls起動シェル動作確認

# su - vulsuser
$ /usr/bin/vuls2slack/shell
$ exit

cron設定

/etc/cron.d/vuls2slack
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
0 2 * * * vulsuser /usr/bin/vuls2slack/shell > /home/vulsuser/vuls2slack.log 2>&1
# systemctl restart crond

起動時間にSlack通知が来ていればOK(脆弱性が無い場合は来ないのでログを確認する /home/vulsuser/vuls2slack.log

Slackに通知が来ていない場合

・cronのログを見る /var/log/cron
・vulsシェルのログを見る /home/vulsuser/vuls2slack.log

1
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
3