OpenVAS是一款开放式的漏洞评估工具,主要用来检测目标网络或主机的安全性。与安全焦点的X-Scan工具类似,OpenVAS系统也采用了Nessus较早版本的一些开放插件。OpenVAS能够基于C/S(客户端/服务器),B/S(浏览器/服务器)架构进行工作,管理员通过浏览器或者专用客户端程序来下达扫描任务,服务器端负载授权,执行扫描操作并提供扫描结果。
一套完整的OpenVAS系统包括服务器端,客户端的多个组件。
http://www.openvas.org
1、服务器层组件
openvas-scanner(扫描器):负责调用各种漏洞检测插件,完成实际的扫描操作。
openvas-manager(管理器):负责分配扫描任务,并根据扫描结果生产评估报告。
openvas-administrator(管理者):负责管理配置信息,用户授权等相关工作。
2、客户层组件
openvas-cli(命令行接口):负责提供从命令行访问OpenVAS服务层程序。
greenbone-security-assistant(安装助手):负责提供访问OpenVAS服务层的web接口,便于通过浏览器来执行扫描任务,是使用最简便的客户层组件。
Greenbone-Desktop-Suite(桌面套件):负责提供访问OpenVAS服务层的图形程序界面,主要允许在Windows客户机中。
除了上述各工作组件以外,还有一个核心环节,那就是漏洞测试插件更新。OpenVAS系统的插件来源有两个途径,一、官方提供的NVT免费插件,二、Greenbone Sec公司提供的商业插件
3.1 总体架构
3.2 模块间的关系
gsad监听端口9392和80
openvasmd监听端口9390
openvassd监听端口9391
3.3 模块间交互
GSA通过OMP协议连接openvasmd(Manager),openvasmd通过OSP协议控制openvassd(Scanner),协议之间连接时使用证书加密,安全性高,防止Scanner被随意的驱动扫描
3.4 模块说明:
Openvas Manage(openvasmd):
Openvas Scanner(openvassd):
Greenbone Security Assistant (gsad):
Openvas CLI(omp):
3.5 提供了4个库:
内部通过这个4个库把3部分组织起来,对外的调用是使用xml交互。
启动OpenVAS
openvas-start
查看 GSAD services,OpenVAS manager, OpenVAS manager 端口情况
tcp 0 0 127.0.0.1:9390 0.0.0.0:* LISTEN 1375/openvasmd
tcp 0 0 127.0.0.1:80 0.0.0.0:* LISTEN 1400/gsad
tcp 0 0 127.0.0.1:9392 0.0.0.0:* LISTEN 1397/gsad
Openvas服务中的三个程序
Greenbone Security Assistant —> gsad 监听端口:80、9392
OpenVAS Scanner —> openvassd
OpenVAS Manager —> openvasmd 监听端口:9390
1)OpenVAS Scanner 扫描器
2)OpenVAS Manager 管理者
3)Greenbone Security Assistant 6.0
4)OpenVAS Cli
命令行工具,通过参数输入和OpenVAS Manage交互
5)内部可配置可选择数据库,使用sqlite3和PostgreSQL
三者关系:GSA通过OMP协议连接openvasmd(Manager),openvasmd通过OSP协议控制openvassd(Scanner),协议之间连接时使用证书加密,安全性高,防止Scanner被随意的驱动扫描
一切OK后使用浏览器访问 https://127.0.0.1:9392 应该可以看到,登录账号 admin 和你前面设置的密码。
配置
设置OpenVAS服务器的地址
OpenVAS 在默认配置下,仅允许 127.0.0.1 地址本地连接
openvas-stop
编辑 /lib/systemd/system/greenbone-security-assistant.service
nano /lib/systemd/system/greenbone-security-assistant.service
[Unit]
Description=Greenbone Security Assistant
Documentation=man:gsad(8) http://www.openvas.org/
Wants=openvas-manager.service
[Service]
Type=simple
PIDFile=/var/run/gsad.pid
ExecStart=/usr/sbin/gsad --foreground --listen=127.0.0.1 --port=9392 --mlisten=127.0.0.1 --mport=9390
[Install]
WantedBy=multi-user.target
修改 --listen=127.0.0.1 为 --listen=0.0.0.0
[Unit]
Description=Greenbone Security Assistant
Documentation=man:gsad(8) http://www.openvas.org/
Wants=openvas-manager.service
[Service]
Type=simple
PIDFile=/var/run/gsad.pid
ExecStart=/usr/sbin/gsad --foreground --listen=0.0.0.0 --port=9392 --mlisten=127.0.0.1 --mport=9390
[Install]
WantedBy=multi-user.target
启动服务查看
systemctl daemon-reload
openvas-start
netstat -antp | grep 9392
tcp 0 0 0.0.0.0:9392 0.0.0.0:* LISTEN 23158/gsad