部署OpenVAS漏洞检测系统

2024-08-22 19:38

本文主要是介绍部署OpenVAS漏洞检测系统,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

   OpenVAS是一款开放式的漏洞评估工具,主要用来检测目标网络或主机的安全性。与安全焦点的X-Scan工具类似,OpenVAS系统也采用了Nessus较早版本的一些开放插件。OpenVAS能够基于C/S(客户端/服务器),B/S(浏览器/服务器)架构进行工作,管理员通过浏览器或者专用客户端程序来下达扫描任务,服务器端负载授权,执行扫描操作并提供扫描结果。

一套完整的OpenVAS系统包括服务器端,客户端的多个组件。如下图:

200130785.jpg

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公司提供的商业插件。


构建OpenVAS服务器

   安装OpenVAS各种组件之前,有一系列的依赖软件包必须提前安装,其中一些可以从系统光盘中找到,另外一些必须额外下载。如果将要部署OpenVAS服务的主机能够访问Internet,建议采用官方网站(http://www.openvase.org/)推荐的在线安装方式,便于自动解决依赖关系;否则应下载必须的软件包进行离线安装(本文以后者为例)。

注意:本文针对的是RHEL5.5的系统,如果大家使用的是非RHEL5.5的系统则安装的软件也有所不同,所以大家不要盲目安装。

1、安装基本依赖包

挂在系统光盘,并安装以下列出的所有软件包(写在一条名字执行),如有提示存在依赖关系,则根据提示安装相应的软件包即可。

204432830.jpg

2、下载、安装其他依赖包

从OpenVAS官网或http://www.atomicorp.com/下载以下列出的所有依赖包,并使用rpm命令进行安装。

204915827.jpg

3、下载、安装OpenVAS相关组件包

从OpenVAS官网或http://www.atomicorp.com/下载以下列出的所有组件包,并使用rpm命令进行安装。

205257605.jpg

4、确认安装结果

成功完成安装以后,执行以下操作可查看相关程序,服务脚本,配置文件以及日志文件等。

210232930.jpg

5、启动OpenVAS服务组件

   根据OpenVAS系统的工作结构,需要启动三个服务层组件,Scanner扫描器,Manager管理器,administrator管理者,以及提供Web接口的客户层组件Greebone安全助手。

启动服务层组件

   系统服务openvase-manager。openvas-scanner一般会在安装后自动启用,而另一个系统服务openvas-administrator需要手动启用。其中manager监听端口为9390,scanner监听端口为9391,administrator监听端口为9393。

211051183.jpg

启用客户层组件

   Greenbone安装助手对应的系统服务为gsad,通常也会自动启动,但默认仅在IP地址127.0.0.1的9392端口监听服务。r若要从网络中的其他主机访问,建议监听地址修改为实际可用的IP地址,或者改为0.0.0.0后再启动服务。

[root@localhost /]#vim /etc/sysconfig/gsad

GSA_ADDRESS=0.0.0.0

GSA_PORT=9392

......//省略部分内容

[root@lcoalhost /]#service gsad restart

除此之外,当用户通过浏览器查看扫描报告时,Openvas默认以nobody用户身份降权执行,在Linux系统中可能因nobody的登录shell问题而出现故障。将nobody用户的登录shell有/sbin/nologin改为/bin/bash后可以避免出现此故障。

[root@locahost /]#usermod -s /bin/bash nobody

6、获取扫描插件

   Openvas提供了一个名为openvas-nvt-sync的脚本,可以用来在线更新插件,如果服务器能够访问官方网站,则直接执行此脚本进行更新即可。本文是将下载好的插件复制给openvas系统进行离线安装。安装完插件以后,需要重启openvas-scanner服务,可能需要耗费较长的时间,请耐心等待。

214719653.jpg

7、添加扫描用户

   Openvas的用户包括两种类型:普通用户,管理员用户。管理员除了具有授权的扫描权限以外,还能够对openvas系统设置,评估报告,配置信息等进行管理。

   添加一个admin的普通用户,允许针对192.168.1.0/24,192.168.2.0/24这两个网段中的主机进行漏铜检测。若不设置规则直接按Ctrl+D提交确认,则用户默认不受限制(允许扫描任意目标),然后输入yes确认即可。

220448905.jpg

   将admin用户升级为管理员用户,只需要将一个isadmin的开关文件复制到普通用户的目录下即可。

[root@localhost /]# touch /var/lib/openvas/users/admin/isadmin

若要删除一个用户可以使用“openvas-rmuser”命令,语法为“openvas-rmuser 用户名”。

此时此刻Openvas漏洞检测系统就算是部署完成了,现在只需要启用扫描任务就可以扫描目标主机了。那么我们如何进行扫描呢?请接着向下看吧!


执行漏铜扫描任务

1、连接Openvas服务器

   在客户机中,使用浏览器连接到openvas系统的gsad服务(9392端口);若使用Greenbone桌面套件程序,则连接到openvas-manager服务(9390端口)。关于Greenbone桌面套件的使用,其操作思路和方法基本相似。

   gsad服务默认基于HTTPS协议提供web访问接口,因此访问时应使用“https://...”的URL路劲,并指定gsad服务的端口号,方可看到登录入口。如下图:

224049535.jpg

以指定的扫描用户admin登录以后,将进入到Greenbone安全助手的主操作界面。注意:客户端和服务器的系统时间不能相差太远,否则可能登录不成功。如下图:

224332443.jpg

2、定义扫描目标

   单机左侧Configuradion导航栏下的Targets链接,在右侧表单中填写将要评估的目标主机名,IP地址等相关信息,然后单击“Create Target”按钮。如下图:即可定义扫描目标。

225007626.jpg

3、创建扫描任务

   单击左侧Scan Management导航栏下的New Task链接,在右侧表单中设置任务名称,扫描目标,扫描配置默认使用的“Full and fast”快速完全扫描,然后单击“Create Task”按钮即可创建一个新的扫描任务。如下图:

225637486.jpg

4、执行扫描

执行扫描只需要单击开始按钮即可。

225902764.jpg

231641358.jpg

5、查看扫描结果

查看扫描结果只需要单击查看按钮即可。

231826232.jpg

231923372.jpg

232040712.jpg




本文出自 “邓奇的Blog” 博客,请务必保留此出处http://dengqi.blog.51cto.com/5685776/1269077

这篇关于部署OpenVAS漏洞检测系统的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1097211

相关文章

Windows系统宽带限制如何解除?

《Windows系统宽带限制如何解除?》有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文就跟大家一起来看看Windows系统解除网络限制的操作方法吧... 有不少用户反映电脑网速慢得情况,可能是宽带速度被限制的原因,只需解除限制即可,具体该如何操作呢?本文

CentOS和Ubuntu系统使用shell脚本创建用户和设置密码

《CentOS和Ubuntu系统使用shell脚本创建用户和设置密码》在Linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设置密码,本文写了一个shell... 在linux系统中,你可以使用useradd命令来创建新用户,使用echo和chpasswd命令来设

电脑找不到mfc90u.dll文件怎么办? 系统报错mfc90u.dll丢失修复的5种方案

《电脑找不到mfc90u.dll文件怎么办?系统报错mfc90u.dll丢失修复的5种方案》在我们日常使用电脑的过程中,可能会遇到一些软件或系统错误,其中之一就是mfc90u.dll丢失,那么,mf... 在大部分情况下出现我们运行或安装软件,游戏出现提示丢失某些DLL文件或OCX文件的原因可能是原始安装包

电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案

《电脑显示mfc100u.dll丢失怎么办?系统报错mfc90u.dll丢失5种修复方案》最近有不少兄弟反映,电脑突然弹出“mfc100u.dll已加载,但找不到入口点”的错误提示,导致一些程序无法正... 在计算机使用过程中,我们经常会遇到一些错误提示,其中最常见的就是“找不到指定的模块”或“缺少某个DL

使用Python实现IP地址和端口状态检测与监控

《使用Python实现IP地址和端口状态检测与监控》在网络运维和服务器管理中,IP地址和端口的可用性监控是保障业务连续性的基础需求,本文将带你用Python从零打造一个高可用IP监控系统,感兴趣的小伙... 目录概述:为什么需要IP监控系统使用步骤说明1. 环境准备2. 系统部署3. 核心功能配置系统效果展

Spring Boot项目部署命令java -jar的各种参数及作用详解

《SpringBoot项目部署命令java-jar的各种参数及作用详解》:本文主要介绍SpringBoot项目部署命令java-jar的各种参数及作用的相关资料,包括设置内存大小、垃圾回收... 目录前言一、基础命令结构二、常见的 Java 命令参数1. 设置内存大小2. 配置垃圾回收器3. 配置线程栈大小

利用Python快速搭建Markdown笔记发布系统

《利用Python快速搭建Markdown笔记发布系统》这篇文章主要为大家详细介绍了使用Python生态的成熟工具,在30分钟内搭建一个支持Markdown渲染、分类标签、全文搜索的私有化知识发布系统... 目录引言:为什么要自建知识博客一、技术选型:极简主义开发栈二、系统架构设计三、核心代码实现(分步解析

Python FastAPI+Celery+RabbitMQ实现分布式图片水印处理系统

《PythonFastAPI+Celery+RabbitMQ实现分布式图片水印处理系统》这篇文章主要为大家详细介绍了PythonFastAPI如何结合Celery以及RabbitMQ实现简单的分布式... 实现思路FastAPI 服务器Celery 任务队列RabbitMQ 作为消息代理定时任务处理完整

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

tomcat多实例部署的项目实践

《tomcat多实例部署的项目实践》Tomcat多实例是指在一台设备上运行多个Tomcat服务,这些Tomcat相互独立,本文主要介绍了tomcat多实例部署的项目实践,具有一定的参考价值,感兴趣的可... 目录1.创建项目目录,测试文China编程件2js.创建实例的安装目录3.准备实例的配置文件4.编辑实例的