はじめに
面談の時に
俺「俺自宅サーバ作ってるんすよwwwCLIでコマンド叩いたりも余裕ww」
相手「セキュリティ対策はどんなことをしてるの?」
俺「」
なんてことがあったのと、
最近ウィルス検知でアクセス元の把握だったり、脆弱性対応で環境的に対策が必要かどうか。ともかくセキュリティに関わる機会が増えました。セキュリティ専門の部署でもなんでもないんですけど。
そんなわけで、セキュリティ関連の情報でぐぐる機会も増えたわけですけど、やっぱり「セキュリティ意識に欠ける人間が多い。」というような愚痴も多く目にするようになりまして。
そんなわけでちょっとVulsを試してみました。
Vulsインストール
https://vuls.io/docs/ja/tutorial-local-scan.html
基本的には公式の通りにコマンド叩けば大丈夫なのですが、いくつか注意事項があります。
普通のユーザでインストールする
sudoコマンド打つから当たり前と言えば当たり前ですが、rootユーザではなく普通のユーザでインストール手順は実行します。
Vuls動作用のユーザを用意する。
公式の通りにコマンドを叩くとユーザホーム配下にディレクトリが作成されます。それが困る人はVulsユーザを用意すると良いと思います。
作成したユーザに対してsudoを有効にしておく。
https://qiita.com/Esfahan/items/a159753d156d23baf180
コマンドで何度かsudoが出てきます。有効にしないと弾かれます。
chownは全て読み替える
chown centos /var/log/vuls
このままでは実行できませんので「centos」自身のユーザに置き換えてください。
(普通だったらそんなユーザ居ないよ。とエラーが出るのでそこで気付けるけど。)
これで問題なくインストールできると思います!
なお、「Deploy go-exploitdb」のところなのですが、エラーが出ました。エラーについてはよくわかってないですが、スキップしても良いとか書いてあるし気にせず進みました(
Vulsrepoインストール
https://qiita.com/takahashi-kazuki/items/7c75ba779b3af1e32bc0
基本的には上記のインストール手順を参考にしました。
ただし、パスの指定については公式通りにインストールしたとしたら以下の通りになってる筈なので、読み替えが必要です。
rootPath = "/home/ユーザ名/vuls/vulsrepo"
resultsPath = "/home/ユーザ名/vuls/results"
実行
https://vuls.io/docs/ja/tutorial-local-scan.html
これも公式サイトの記載に従います。AWSではないので、Step3からやります。
準備が整ったらvuls scan実行。
次にvuls report実行。
とりあえず、どれだけの脆弱性があるか、さらっと確認したい時は「vuls report -format-one-line-text」で実行。
$ vuls report -format-one-line-text
.
.
[Reboot Required] localhost Total: 222 (High:48 Medium:139 Low:35 ?:0) 0/222 Fixed 491 installed, 0 updatable 0 exploits en: 10, ja: 2 alerts
うそ…私のサーバ、脆弱性多すぎ…?
yum updateは普段からやってるのに。
Vulsrepoで見る
VulsrepoはVulsの結果をWebで見れるらしい。早速見てみる。
とりあえず、どんな影響度の脆弱性がどれだけあるかはわかるんですけど、肝心の脆弱性の内容がわかりません。どこかで確認できるかもしれないですけど、英語はわからないのでわからないです。
TUIで結果を見る
すごいわかりやすいですね!
脆弱性対応をしてみる。
上記の結果からとりあえずbashのアップデートをしたいと思います。
yum updateは普段からやってるのでおそらくリポジトリには無いのだと思います。
https://qiita.com/takahirono7/items/5dd99bcc4202d289103b
というわけで、上記サイトを参考にbash 4.4を入れました!
# bash --version
GNU bash, バージョン 4.4.12(1)-release (x86_64-unknown-linux-gnu)
Copyright (C) 2016 Free Software Foundation, Inc.
ライセンス GPLv3+: GNU GPL バージョン 3 またはそれ以降 <http://gnu.org/licenses/gpl.html>
This is free software; you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
※patchが入ってない際はインストールが必要な場合もあります。その時はyum install patchでインストールしましょう。
結果を見てみましたが、脆弱性通知は消えません…。
bash 4.4をインストールしたからと言ってbash 4.2が消えるわけではないということでしょうか?
rpmでの確認結果は以下の通り。
# rpm -q bash
bash-4.2.46-31.el7.x86_64
どういうこっちゃ
とりあえず、Vulsを試すというタイトルの目的はすでに達成できてるのでここまでにしますか。