内容简介:OpenVAS(Open Vulnerability Assessment System)是在nessus基础上发展起来的一个开源的漏洞扫描程序,其核心部件是一套漏洞测试程序,可以检测远程系统和应用程序中的安全问题。一般来说,使用openvas可以有几种方法:一是使用安装了openvas的linux发行版,如parrotsec、backbox等,二是使用openvas官方制作的虚拟机,三是在linux系统中手动安装openvas,四是使用docker版本的openvas。其中最方便、效率最高的就是docke
一、 操作目的和应用场景
大家好,我是彭瑞。
OpenVAS(Open Vulnerability Assessment System)是在nessus基础上发展起来的一个开源的漏洞扫描程序,其核心部件是一套漏洞测试程序,可以检测远程系统和应用程序中的安全问题。
一般来说,使用openvas可以有几种方法:一是使用安装了openvas的 linux 发行版,如parrotsec、backbox等,二是使用openvas官方制作的虚拟机,三是在linux系统中手动安装openvas,四是使用 docker 版本的openvas。其中最方便、效率最高的就是docker了,所以今天为大家介绍一下使用docker运行openvas进行漏洞扫描的方法。
二、 平台及 工具 版本
host系统:linux mint
软件:docker、openvas
计算机硬件:小米笔记本电脑
三、 操作步骤
(一) 在linux mint系统中安装docker
apt install docker.io //在线安装docker
systemctl start docker //启动docker服务
systemctl enable docker //设置开机自动启动
docker version //查看docker版本
可以正常显示版本信息,说明安装成功。
(二) 下载和运行openvas的docker镜像
1、下载openvas镜像
docker search openvas //在docker hub上搜索openvas镜像
第一个镜像是我们需要的。
docker pull mikesplain/openvas //下载openvas镜像到本地
docker images | grep openvas //查看本地的docker镜像
2、运行openvas镜像
docker run -d -p 443:443 –name openvas mikesplain/openvas
run命令装载docker镜像到内存,形成容器。
-d //后台运行容器
-p //将host的443端口映射到容器的443端口
–name //给容器起个名字
镜像初次运行后,稍等几分钟再访问,因为openvas要进行NVT扫描和数据库构建。
docker ps //查看正在运行的docker容器,可以看到openvas容器已经运行起来了
(三) 使用openvas进行漏洞扫描
1、登录
浏览器打开openvas的操作界面: https://127.0.0.1
用户名/口令:admin/admin
2、创建扫描任务
下面创建简单的扫描任务,对metasploitable 2靶机进行漏洞扫描。
(1)创建扫描任务
Scans—Tasks
点击左侧带有五角星的方框,点击弹出的“New Tasks”项:
Name:指定扫描名称,如扫描metasploitable 2
Comment:填写关于扫描任务的描述文字(可选)
Scan Targets:点击右侧五角星,弹出New Target表单,指定目标IP地址,填写完成后点击Create按钮提交:
其它的选项保持默认即可:
点击下方的Create按钮,创建扫描任务。
3、 开始扫描
在任务列表中,点击右侧Actions中的Start按钮,开始扫描。
在靶机上抓包,可以看到openvas扫描所产生的流量:
4、 下载扫描报告
点击Scans—Reports
点击左下角日期,例如点击“扫描metasploitable2靶机”任务对应的日期:
在Results页面,点击Report:Results文字左边的向下小箭头,选择报告的内容,如Report:Summary and Download。在页面下方有两种格式的报告,一种是完整报告(Full report),另一种是节选报告(filtered report),根据需要进行选择。点击右侧Download下面的下拉列表框,选择报告文件的格式,如PDF。点击右侧向下的小箭头,下载文档:
(四) 管理容器
1、 查看容器内运行的进程
docker top openvas
2、 进入容器内的命令行
docker exec -it openvas bash
3、 使用数据卷
将数据目录挂载到/var/lib/openvas/mgr/:
mkdir data
docker run -d -p 443:443 -v $(pwd)/data:/var/lib/openvas/mgr/ –name openvas mikesplain/openvas
注意,启动容器之前,本地目录必须存在。
4、 设置管理员口令
通过修改环境变量OV_PASSWORD,在运行时指定admin口令:
docker run -d -p 443:443 -e OV_PASSWORD=securepassword41 –name openvas mikesplain/openvas
5、 更新NVT
openvas使用漏洞特征进行扫描,因此需要定期更新特征库。
docker exec -it openvas bash //进入容器,在容器中执行下面的命令
greenbone-nvt-sync
openvasmd –rebuild –progress
greenbone-certdata-sync
greenbone-scapdata-sync
openvasmd –update –verbose –progress
/etc/init.d/openvas-manager restart
/etc/init.d/openvas-scanner restart
6、 停止容器
docker stop openvas
7、删除容器
不再需要容器了,可以将其删除。删除容器不会影响到镜像,使用前面运行镜像的命令可以创建新的容器。
docker ps –all //查看全部容器,包括运行的和已停止的
docker rm openvas //删除名为openvas的容器
(五) 管理镜像
1、导出镜像
docker save -o openvas-image.tar mikesplain/openvas //导出到当前目录,名为openvas-image.tar
2、导入镜像
docker load < openvas-image.tar
3、删除镜像
docker rmi mikesplain/openvas
以上所述就是小编给大家介绍的《以Docker容器的形式运行openvas》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。