OpenVAS设计理念
OpenVAS 是一款开放式的漏洞评估工具,主要用来检测目标网络或主机的安全性。用户通过浏览器或者专用客户端程序来下达扫描任务,服务器端负载授权,执行扫描操作并提供扫描结果。它既提供大量的免费扫描插件(NVT,Network Vulnerability Tests),也提供商业化的增强扫描插件(GSF,Greenbone Security Feed)
具体结构
用户层接口
Openvas-cli
命令行接口: 通过OMP (OpenVAS Management Protocol) 从命令行访问 openvas 服务层的程序
|
|
Greenbone Security Assistabt
访问 web 端接口(gsad) 访问 opebvas 服务层的 web 接口,默认监听地址为 127.0.0.1,端口为 9392
服务层组件
openvas-manager
管理器:与接口通信,分配扫描任务, 数据库与用户(用户组),并根据扫描结果生成评估报告,默认端口为 9390
|
|
OpenVAS Scanner
扫描器:调用各种漏洞测试插件,执行分配的扫描操作,默认端口为 9391
|
|
部分模块通信方式
OpenVAS安装步骤
环境 kali 2.0
源列表使用官方源
|
|
更新系统
|
|
安装openvas
为了确认 OpenVAS 是否安装完成,可以使用 openvas-check-setup 对该服务进行检查,最终结果显示OK则表示安装成功。
|
|
修改用户密码
启动服务
检查相应端口是否启用
创建相应环境
出现上面的结果就可以打开https://127.0.0.1:9392,访问了。记住是HTTPS
OpenVAS源码结构
版本:OpenVAS-8
主要代码
由C语言编写
|
|
扩展代码
由C语言编写
|
|
OSP
(OpenVAS Scanner Protocol) OpenVAS扫描协议
由Python编写
|
|
OpenVAS源码结构
CLI
通过命令行操作OpenVAS services
使用方法
|
|
工作方法
内置方法
Greenbone Security Assistant
Greenbone安全助理 提供了openvas的一个web管理界面,也支持一些命令行操作
使用方法
工作方法
内置方法
代码文件
openvas-manager
代码文件
OpenVAS Scanner
代码文件
openvas-libraries
base
代码文件
nasl
NASL(Nessus Attack Scripting Language) 是一种为Nessus安全扫描器所设计的脚本语言。它的目的在于使每个人都可以在几分钟内对给定的安全漏洞写出测试代码,并允许人们分享他们的测试代码而不用担心自己使用的是什么操作系统。
|
|
openvas相关文件
更新插件
|
|
插件目录
|
|
同步数据库
|
|
数据库目录
OSPD学习
主要代码文件
|
|
misc.py
可以设置Scan相关信息,如新建Scan、设置[查看]
|
|
ospd.py
也可以获取和设置Scan的一些参数