vuls工具安装及遇到的问题
尝试安装vuls工具的过程中,遇到各种问题,因此根据自己的经验整理这篇文档,也希望可以帮助到遇到同样问题的人。一、安装依赖组件
# yum -y install sqlite git gc wget gcc
二、下载安装golang
# wget --no-check-certificate https://dl.google.com/go/go1.15.3.linux-amd64.tar.gz
# tar -C /usr/local -xzf go1.15.3.linux-amd64.tar.gz
注意这边的go的安装包的版本选的较新一些,经过几次尝试,最终选定为1.15.3版本
三、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
export GO111MODULE=on
export GOPROXY=https://goproxy.io
EOF'
# source /etc/profile.d/goenv.sh
通过设定export GO111MODULE=on
export GOPROXY=https://goproxy.io开启了go module 功能。
四、go主目录和环境变量
# sudo mkdir /var/log/vuls
五、下载安装go-cve-dictionary
# 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
# go-cve-dictionary server //把 go-cve-dictionary 开启为服务模式
六、下载安装漏洞数据库
# cd $HOME
# for i in `seq 2002 $(date +"%Y")`; do go-cve-dictionary fetchnvd -years $i; done
时间比较久
七、下载安装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
但是由于编译文件里边GNUmakefile(位于$GOPATH/src/github.com/kotakanbe/goval-dictionary)中有一段是关闭代理的操作。与配置环境不一致,因此会出现报错
为了能正常进行编译,将这一段修改为:
最后进行重新make install
八、获取CentOS数据库
# goval-dictionary fetch-redhat 7
对应centos7
九、下载安装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
会出现类似于goval-dictionary报错的问题,需要去修改GNUmakefile
十、配置ssh免密码登录
(1)生成RSA密钥对
# ssh-keygen -t rsa
如下所示:
(2)拷贝密钥到对方服务器
cd $HOME/.ssh/
ssh-copy-id -i id_rsa.pub x.x.x.x
x.x.x.x修改为需要扫描的机子的IP
十一、扫描
1.本地扫描配置
# cd $HOME
# touch config.toml
# vim config.toml
添加内容如下:
[servers]
[servers.localhost]
host = "localhost"
port = "local"
2.远程扫描配置
修改 config.toml
# vim config.toml
修改内容如下:
[servers]
[servers.centos]
host = "x.x.x.x" //对应被扫描机子IP
port = "22" //对应被扫描机子端口
user = "root" //对应被扫描机子用户名
keyPath = "/root/.ssh/id_rsa" //密钥所在路径
scanMode=["fast-root"] //扫描模式
3.扫描结果
config.toml配置好后,开始扫描
# vuls configtest //扫描前检查配置
# vuls scan //开始扫描
# vuls tui //查看报告
结果所下:
对应链接
参考的大神们的链接:https://www.cnblogs.com/esiarp/p/8990425.html
https://blog.csdn.net/ssmile/article/details/80046810
https://www.freesion.com/article/62691415990/