主机安全扫描工具-- vuls

https://vuls.io/

一. 安装

系统管理员有责任定期去检查系统的弱点和更新软件, vuls 可以提供如下功能:

  1. 通知管理员机器有安全隐患
  2. 支持本地和远程扫描(需要有 ssh 权限)
  3. 可以定期去同步最新的安全数据库

参照官方说明在 centos 安装就可以了, 这个软件是 golang 写的所以先安装 golang

https://vuls.io/docs/en/install-manually-centos.html

为了使我们编译的程序可以不依赖具体的系统库文件,我们使用静态编译,这样就能在 centos6和 centos7运行了

GOOS=linux GOARCH=amd64 go build -a -ldflags '-linkmode external -extldflags -static' -o vuls
GOOS=linux GOARCH=amd64 go build -a -ldflags '-linkmode external -extldflags -static' -o go-cve-dictionary
GOOS=linux GOARCH=amd64 go build -a -ldflags '-linkmode external -extldflags -static' -o goval-dictionary

vulsrepo 是一个 web ui  用来更清楚的展示扫描的结果,推荐使用 https://vuls.io/docs/en/vulsrepo.html

二. 使用

go-cve-dictionary和goval-dictionary 这两个程序是下载 cve 和 oval 漏洞库用的

在安装 vulsrepo 的文档中有个配置 如下
$ vi vulsrepo-config.toml
[Server]
rootPath = "/home/vuls-user/vulsrepo"
resultsPath  = "/opt/vuls/results"    你需要把你扫描的结果放到这个目录下,方便起见我们直接去这个目录扫描,把那两个数据库也下载到这个位置
serverPort  = "5111"

 开始下载数据库

cd /opt/vuls/results

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

goval-dictionary fetch-redhat 7     #如果系统是6 这里改成6

开始扫描

vuls scan 
vuls report -format-json 

扫描完以后的目录结构如下

[root@kube-node-01 report]# tree . -L 2
.
├── config.toml
├── cve.sqlite3
├── cve.sqlite3-shm
├── cve.sqlite3-wal
├── oval.sqlite3
└── results
    ├── 2018-06-07T17:30:03+08:00
    └── 2018-06-08T12:03:05+08:00

[root@kube-node-01 report]# pwd
/data/app/vulsrepo/report

这时候打开浏览器 http://your_ip:5111

猜你喜欢

转载自www.cnblogs.com/txwsqk/p/9172156.html
今日推荐