概要
SSH経由で特定サーバの脆弱性を確認出来るツールです。
対象はミドルウェア・ライブラリ・フレームワーク。
環境
OS | Amazon Linux 2016.03 |
Type | t2.nano |
※t2.nanoの場合メモリ不足でエラーになるためSWAP設定必須です。
インストール方法
今回はリモートのサーバにインストールし、自身(localhost)の脆弱性を確認してみます。
Logディレクトリ作成
1 2 | sudo su - mkdir /var/log/vuls |
Goインストール
下記サイトから最新のコードをダウンロード
https://golang.org/dl/
1 2 3 4 5 6 7 8 9 10 11 | cd /usr/local/src/ tar zxf go1.6.2.linux-amd64.tar.gz mv ./go ../ vi /etc/profile.d/goenv.sh ---下記を記載--- export GOROOT=/usr/local/go export GOPATH=/opt/go export PATH=$PATH:$GOROOT/bin:$GOPATH/bin ---ここまで--- source /etc/profile.d/goenv.sh |
必要パッケージインストール
1 | yum install git gcc |
go-cve-dictionaryインストール
vulsは脆弱性の照合にCVEを使用しています。
t2.nanoを使用する場合はメモリ不足でエラーになるためSWAP設定必須です。
1 2 3 4 5 6 7 | go get github.com/kotakanbe/go-cve-dictionary for i in {2002..2016}; do go-cve-dictionary fetchnvd -years $i; done ---1時間程度掛かる--- go-cve-dictionary fetchjvn -entire ---1時間程度掛かる--- go-cve-dictionary server & |
vulsインストール
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | go get github.com/future-architect/vuls ssh-keygen cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys chmod 600 ~/.ssh/authorized_keys vi /etc/ssh/sshd_config ---下記を変更--- #PermitRootLogin yes ↓ PermitRootLogin yes PermitRootLogin forced-commands-only ↓ #PermitRootLogin forced-commands-only ---ここまで--- /etc/init.d/sshd restart ssh localhost exit vi config.toml ---下記を記載--- [servers] [servers.localhost] host = "localhost" port = "22" user = "root" keyPath = "/root/.ssh/id_rsa" ---ここまで--- vuls prepare vuls scan |
投稿者プロフィール
最新の投稿
AWS2021年12月2日AWS Graviton3 プロセッサを搭載した EC2 C7g インスタンスが発表されました。
セキュリティ2021年7月14日ゼロデイ攻撃とは
セキュリティ2021年7月14日マルウェアとは
WAF2021年7月13日クロスサイトスクリプティングとは?