OpenVAS,即开放式漏洞评估系统,是一个用于评估目标漏洞的杰出框架。功能十分强大,最重要的是,它是“开源”的(不用付费) ——非常感谢无偿奉献的人们!
与著名的Nessus“本是同根生”,但在Nessus商业化之后仍然坚持开源,号称“当前最好用的开源漏洞扫描工具”(排名第一)。其核心部件是一个服务器,包括一套网络漏洞测试程序,可以检测远程系统和应用程序中的安全问题。
常用于检测目标网络或主机的安全性。它的评估能力来源于数万个漏洞测试程序,这些程序都是以插件的形式存在(需要定时更新)。openvas是基于C/S(客户端/服务器),B/S(浏览器/服务器)架构进行工作,用户通过浏览器下达扫描任务,服务器端负责授权,执行扫描操作并提供扫描结果。
登录界面:
https://10.10.11.250
用户名: admin 密码: admin
创建扫描任务:指定扫描目标和端口后,其它可使用缺省值
#dashboard中选择新建任务
#新建扫描目标
#指定目标地址和端口范围
在创建的任务右边Action点击,开始扫描
#点击执行按键开始扫描
查看扫描结果:通过菜单 Scans --> Dashboard,
生成报告:
在Scans --> Reports中选中执行完成的结果
在选中Summary and Download, 选择Full Report生成各种格式的报告
在Docker安装完成后,在成功安装docker (Docker安装见附件)的宿主机上通过如下命令获得openvas最新镜像
docker pull atomicorp/openvas
执行容器
docker run -d -p 443:443 -v /opt/data:/var/lib/openvas/mgr/ --name openvas1 atomicorp/openvas
其中/opt/data是宿主机的目录(执行时,目录必须存在),做为数据卷映射到内部路径/var/lib/openvas/mgr/, 用于保存执行任务和结果
第一次启动需要等待一段时间,然后可通过宿主机的地址访问openvas的管理页面(如宿主机地址为10.10.11.250,则通过https://10.10.11.250进行访问,用户密和密码均为admin)
更新NVT并保存更新
docker exec -it openvas1 bash
greenbone-nvt-sync
//更新NVT一般会花费3-6个小时的时间(网速决定)
openvasmd --rebuild --progress
greenbone-certdata-sync
greenbone-scapdata-sync
//一般情况下会花费2-4小时左右更新
openvasmd --update -- verbose --progress
/etc/init.d/openvas-manager restart
/etc/init.d/openvas-scanner restart
注: 同步时,可能会因为网络原因(墙、海底光缆等问题)导致同步失败,如:
rsync: read error: Connection reset by peer (104)
rsync error: error in socket IO (code 10) at io.c(785) [receiver=3.1.2]
rsync: connection unexpectedly closed (7296 bytes received so far) [generator]
rsync error: error in rsync protocol data stream (code 12) at io.c(226) [generator=3.1.2]
可稍等几分钟后,再次同步(类似断点续传)
通过执行docker ps –l查询当前运行的openvas容器ID,如下图所示
通过commit将容器修改的内容重新创建一个镜像
docker commit 4a752093038c openvas:d909
停止容器并删除老的容器(节约磁盘空间)
docker stop openvas1
docker rm openvas1docker rmi atomicorp/openvas
基于新镜像启动容器
docker run -d -p 443:443 -v /opt/data:/var/lib/openvas/mgr/ --name openvas openvas:d909
安装步骤
1. 执行如下命令,安装一些GPG keys和安装仓储
wget -q -O - https://updates.atomicorp.com/installers/atomic | sudo sh
yum config-manager --set-enabled PowerTools
yum install epel-release
2. 开始安装
yum install gvm -y
3. 配置gvm
gvm-setup
注意: 安装过程中更新NVT需要花非常、非常长的时间,而且非常容易断开连接,我花了一晚上更新都未能更新完,所以最后选择使用docker安装方式(大部分NVT都更新到了2018年,增量更新可在接受时间范围)
4. 放开端口
firewall-cmd --permanent --add-port=9392/tcp
firewall-cmd --reload
附:CentOS 8安装Docker
卸载旧版本
yum remove docker docker-client docker-client-latest docker-common docker-latest docker-latest-logrotate docker-logrotate docker-engine
yum-utils 提供了 yum-config-manager ,并且 device mApper 存储驱动程序需要 device-mapper-persistent-data 和 lvm2
yum install -y yum-utils
device-mapper-persistent-data lvm2
设置Docker 仓库为阿里云(很快)
yum-config-manager
--add-repo
http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
正式安装 (注意使用--nobest)
yum install docker-ce docker-ce-cli containerd.io --nobest