一. OpenVAS简介:
官网:http://www.openvas.org/
OpenVas是一个功能齐全的开源的漏洞扫描工具。它具有无身份验证和身份验证测试的功能,支持各种高级和低级互联网和工业协议,能够进行大规模扫描的性能调优,还提供强大的内部编程语言,用于实施任何类型的漏洞测试。该扫描工具获取用于检测漏洞的测试内容来自一个具有悠久历史和每日更新的源。
OpenVAS自2006年以来,由Greenbone公司进行开发和推进。作为商业漏洞管理产品系列Greenbone Enterprise Appliance的一部分,该扫描工具与其他开源模块共同组成Greenbone Community Edition。
二. Immauss容器映像:
GitHub:https://github.com/immauss/openvas
Immauss容器映像相对于Greenbone映像的优势有:
- 能够在单个映像中运行完整的扫描器,可以选择使用或不使用卷。
- 映像包含一个完整的数据库。
- 扫描速度快。Immauss映像可以在15-20分钟内启动并开始扫描(在充足的机器资源下)。
- Docker Hub上的映像每周更新一次,以确保数据库处于最新状态。
最新的映像基于GVM 22.5.x。在单容器模式下,它在单个容器中运行创建扫描器所需的所有组件,包括:
- gvmd - Greenbone漏洞管理守护程序
- openvas scanner - GVM的扫描器组件
- ospd - openvas扫描器协议守护程序
- notusscanner - Greenbone的新组件,负责本地机器的扫描
- postgresql - 扫描器和gvm的数据库后端
- redis - gvmd使用的内存数据库存储
- postfix邮件服务器,用于传递来自GVM的电子邮件通知
- 基线数据源及相关数据库的副本
- 可选择从现有Postgresql数据库转储进行还原
- 可选择在启动时跳过数据同步
- 容器停止时适当关闭数据库以防止数据库损坏。
在多容器模式下,它为每个组件创建单独的容器。由于大多数Greenbone组件使用Unix套接字进行通信,这些容器共享一个专用卷(默认名称为ovasrun),仅用于套接字的共享。
三. 使用Immauss容器映像:
以下命令将拉取、创建和启动容器:
没有持久卷的情况下:
docker run --detach --publish 8080:9392 -e PASSWORD="Your admin password here" --name openvas immauss/openvas
创建一个用于存储持久数据的卷。
docker volume create openvas
使用持久卷启动容器:
docker run --detach --publish 8080:9392 -e PASSWORD="Your admin password here" --volume openvas:/data --name openvas immauss/openvas
你可以使用任何 --name,但为了简便起见,我们在本指南中使用 openvas。–publish 8080:9392 选项将主机上的端口 8080 映射到 Docker 容器中的 9392 端口(即容器的 Web 接口端口)。选择端口 8080 仅是为了避免与现有的 OpenVAS/GVM 安装冲突。你可以将 8080 更改为任何可用的端口。
根据你的硬件配置,可能需要几秒钟到 30 分钟的时间来扫描 NVT 并重建数据库。每次容器启动时,NVT 都会更新。即使你将容器保持运行状态 24/7,更新 NVT 的最简单方法是重新启动容器。
docker restart openvas
你可以在运行的容器上的任何时候运行同步:
docker exec -it openvas /scripts/sync.sh
四. OpenVAS使用:
登录dashboard:
https://IP:8080
用户名和密码为修改之后的:admin/“Your admin password here”