Vuls安装和使用

Vuls是针对Linux系统的安全扫描工具,可以扫描各种系统安全漏洞并给出修订建议。

安装依赖组件

yum -y install sqlite git gc wget gcc

下载安装golang

wget https://storage.googleapis.com/golang/go1.10.linux-amd64.tar.gz
tar -C /usr/local -xzf go1.10.linux-amd64.tar.gz

设置go主目录和环境变量

mkdir $HOME/go
sudo sh -c 'cat << "EOF" > /etc/profile.d/goenv.sh
export GOROOT=/usr/local/go
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
EOF'
source /etc/profile.d/goenv.sh

创建日志目录

sudo mkdir /var/log/vuls

以下步骤需要连接google服务器,如果不能直接访问google服务器,需要提前设置
http_proxy和https_proxy

export http_proxy=x.x.x.x:abcd
export https_proxy=x.x.x.x:abcd

下载安装go-cve-dictionary

go get github.com/kotakanbe/go-cve-dictionary

如果go-cve-dictionary没有自动编译安装,需要手动编译安装

cd $GOPATH/src/github.com/kotakanbe/go-cve-dictionary
make install

下载安装漏洞数据库

cd $HOME
for i in `seq 2002 $(date +"%Y")`; do go-cve-dictionary fetchnvd -years $i; done

这个步骤时间较长,大约需要几十分钟,依赖于网速。

下载安装goval-dictionary

go get github.com/kotakanbe/goval-dictionary

如果goval-dictionary没有自动编译安装,需要手动编译安装,完成在$GOPATH/bin目录可以看到goval-dictionary可执行文件

cd $GOPATH/src/github.com/kotakanbe/goval-dictionary
make install

获取CentOS数据库

goval-dictionary fetch-redhat 7

下载安装Vuls

go get github.com/future-architect/vuls

如果vuls没有自动编译安装,需要手动编译安装,完成在$GOPATH/bin目录可以看到vuls可执行文件

cd $GOPATH/src/github.com/future-architect/vuls
make install

配置ssh免密码登录

扫描时需要从扫描服务器上能通过ssh免密码登录到被扫描服务器。ssh免密码配置需要在这两台服务器上同时配置。将每台服务器各自的公钥发送到对方服务器上。
- 生成RSA密钥对。此步骤不需要特殊指定,按三次回车确认即可完成。

ssh-keygen -t rsa
  • 拷贝密钥到对方服务器
cd $HOME/.ssh/
ssh-copy-id -i id_rsa.pub x.x.x.x

在$HOME目录创建vuls扫描配置文件config.toml,文件内容如下

用户以root为例

[servers]

[servers.x-x-x-x]
host = "x.x.x.x"
port = "22"
user = "root"
keyPath = "/root/.ssh/id_rsa"

[servers.y.y.y.y]
host = "y.y.y.y"
port = "22"
user = "root"
keyPath = "/root/.ssh/id_rsa"

vuls配置测试

vuls configtest -config=/root/config.toml

vuls 扫描

vuls scan

查看完整报告

vuls report -format-full-text

猜你喜欢

转载自blog.csdn.net/ssmile/article/details/80046810