zoukankan      html  css  js  c++  java
  • 【译】使用OpenVAS 9进行漏洞扫描

      本文译自Vulnerability Scanning with OpenVAS 9 part 1: Installation & Setup系列,本文将融合目前已经发表的四个部分。

    Part I:安装和使用

    安装Openvas 9

      要在我们的Kali Linux系统上安装Openvas 9及其依赖项,我们只需运行以下命令:

    apt-get update && apt-get install openvas

      下一步运行安装过程,该过程将安装OpenVAS并下载大量网络漏洞测试(NVT)或签名。由于大量的NVT(50.000+),安装过程可能需要一段时间来完成并消耗大量的数据。在我们用于本教程的测试设置中,整个设置过程花费了10分钟完成,这还不错。(对我们来讲可能得两小时)

      运行以下命令以启动安装过程:

    openvas-setup

      设置过程完成后,将启动所有必需的OpenVAS进程,并自动打开Web界面。 Web界面在端口9392上本地运行,可以通过浏览器访问:

    https://localhost:9392/

      OpenVAS还将设置一个管理员帐户并自动生成此帐户的密码,该密码显示在设置输出的最后一部分中:

      【注】可以使用以下命令更改管理员密码:

    openvasmd –user=[username]–new-password=[password]
    openvasmd –user=admin –new-password=[password]

      下一步是接受自签名证书警告并使用自动生成的管理凭据登录Web界面: 

      登录Web界面后,我们将重定向到Greenbone Security Assistant仪表板。 从现在开始,我们可以开始配置和运行漏洞扫描。

    启动和停止OpenVAS

      在我们开始安装虚拟设备之前,我想指出的最后一步是如何启动和停止OpenVAS服务。 OpenVAS服务可能会消耗大量不必要的资源,因此建议您在不使用OpenVAS时终止这些服务。  

      运行以下命令以停止服务:

    openvas-stop

      再次启动OpenVAS服务,请运行:

    openvas-start

      这样我们便可以开始使用OpenVAS进行漏洞扫描了。

    Part II:漏洞扫描

      本部分我们将学习如何配置和运行漏洞扫描。 出于演示目的,我们还安装了一个带有Metasploitable 2的虚拟机,我们将使用OpenVAS进行定位。 如果您不知道如何安装Metasploitable,可以查看Metasploitable 2的安装教程或Metasploitable 3。  

      在我们使用OpenVAS 9实际启动漏洞扫描之前,我们必须完成以下任务:  

    • 创建和配置目标
    • 创建和配置扫描任务
    • 运行扫描 

      在本部分,您需要安装和配置OpenVAS 9.0。 如果您此时尚未执行此操作,建议您首先按第1部分安装OpenVAS。 同时,建议启动并运行易受攻击的Metasploitable虚拟机,该计算机可从OpenVAS设备或已安装OpenVAS的Kali Linux VM访问。 本教程使用的实验室设置如下所示:

    • 使用VMWare Workstation Pro 12的主机
    • 安装了OpenVAS 9.0的Kali Linux 2018.2 VM(192.168.65.128)
    • Metasploitable 2 VM(192.168.65.137)

      所有虚拟机都使用NAT网络,可以在网络适配器的网络设置中进行配置。 既然我们已经完成了所有工作,那就让我们开始配置目标和扫描任务。

      【提示】您是否忘记写下或更改您的OpenVAS管理员密码? 查看第一部分的安装教程,了解如何重置管理员密码。

    在OpenVAS中创建目标

      第一步是使用OpenVAS / Greenbone Security Assistant Web界面创建和配置目标。 在我们配置扫描任务的以下步骤中选择此新创建的目标。

      创建目标,执行如下两个步骤:

    • 转到顶部菜单中的“配置”,然后选择“目标”
    • 单击左上角的蓝色图标以创建新目标  

       点击新目标按钮后,会出现一个对话框,我们需要输入以下信息:

    • 目标名称,我们将其命名为Metasploitable 2
    • 目标IP主机,它是我们的Metasploitable 2实验室机器的IP地址

       其他设置默认即可,然后单击“创建”按钮。

      

      新创建的目标现在将显示在可用目标列表中:

      现在我们已经完成了目标设置,让我们继续创建扫描任务,扫描Metasploitable 2目标中的漏洞。

    在OpenVAS中配置扫描任务

      在本部分中,我们将创建一个新的扫描任务。 扫描任务定义将扫描哪些目标以及扫描选项,例如计划,扫描配置和同时扫描的目标以及每个主机的NVT。 在本教程中,我们将只创建一个扫描任务并使用默认扫描配置。 在使用OpenVAS 9.0的漏洞扫描第3部分(将于2018年5月25日发布)中,我们将对扫描配置进行更详细的介绍。 

       要创建新的扫描任务,我们必须执行以下步骤:

    • 转到顶部菜单中的“扫描”,然后选择“任务”
    • 指向左上角的蓝色图标,然后选择“新任务”

      单击新扫描选项后,将出现一个对话框屏幕,我们必须输入以下信息:

    • 任务名称,我们将其命名为“Scan Metasploitable 2”
    • 确保选中我们之前创建的Metasploitable 2目标
    • 勾选复选框(单次运行)
    • 保持所有其他设置为默认值,然后单击“创建”按钮以创建新任务  

      新创建的任务现在将显示在任务列表中,如下所示:

      还有一些其他选项可用于创建扫描任务。 我们可以使用扫描任务向导立即扫描目标以及高级扫描任务向导,该向导还提供了一些配置选项。 出于演示目的,我们将坚持我们刚刚创建的任务。

      现在我们已经配置了扫描任务并将Metasploitable 2机器添加到目标列表,剩下的就是运行任务并等待结果。

    运行OpenVAS漏洞扫描 

       要运行新创建的任务,我们只需单击绿色开始按钮,如下所示:  

      现在,扫描任务将针对所选目标执行。 请注意,完整扫描可能需要一段时间才能完成。 刷新任务页面时,您将能够检查执行任务的进度:   

    • 重新加载页面
    • 检查任务状态/进度

      等待一段时间后,扫描任务完成,状态变为“完成”:

      正如预期的那样,我们可以看到OpenVAS发现了许多严重的漏洞。 我们来看看结果的细节。

    查看扫描结果

      现在漏洞扫描已经完成,我们可以浏览顶部菜单中的“扫描 ->报告”。 在报告页面上,我们可以找到已完成扫描任务的报告:

      通过单击报告名称,我们可以概述Metasploitable 2计算机上发现的所有漏洞,这与预期的一样多。 结果默认按严重性顺序排序:

      当我们单击漏洞名称时,我们可以概述有关漏洞的详细信息。 以下详细信息适用于我们在早期教程中介绍的虚幻IRCD中的后门漏洞:

      最后,我们还可以以各种格式导出报告,例如:XML,HTML和PDF。 我们可以通过从下拉菜单中选择所需的格式来执行此操作,然后单击绿色导出图标,如下所示:

    Part III:执行网络扫描

    运行自定义漏洞扫描

      前面我们学习了如何针对网络上的单个目标运行漏洞扫描。 本节我们将配置主机列表并使用计划定期运行扫描。

    创建目标主机列表

      在我们可以在特定主机或子网上运行计划任务之前,我们必须创建目标列表。 要执行此操作,请单击“配置”菜单中的“目标”菜单项,然后单击左上角的蓝色图标以创建新目标:  

      我们将新目标命名为“Target 192.168.100.1/24”。 在新目标对话框屏幕的下一部分中,我们可以使用几个不同的选项指定目标主机。 我们可以指定手动主机(范围),从文件中读取主机或从主机资产创建目标列表。 最后一个选项显示为灰色,因为我们的库存中目前没有主机资产。 当您必须使用单个目标列表扫描多个子网时,可以更轻松地从文本文件中读取主机。 为此,只需创建一个文本文件,并在一行中用逗号分隔每个目标IP或范围,如下所示:192.168.100.0/24,192.168.200.100-110,192.168.300.10         

    • 单IPv4地址:192.168.300.10
    • IPv4格式的短地址范围:192.168.200.100-11
    • 长格式的IPv4地址范围:192.168.200.100-192.168.200.110
    • CIDR表示法中的IPv4地址范围:192.168.100.0/24

      对于此演示,我们将使用手动选项并指定范围192.168.100.1/24。 此范围包含从192.168.100.1到192.168.100.254的所有IP地址。 然后我们有一些选项可以排除某些主机,反向查找,我们可以指定端口列表和活动测试设置。 除了我们设置为“ICMP和ARP Ping”的活动测试设置外,我们将保留所有设置的默认值。

    设置主机发现任务

      现在我们已经设置了目标列表,让我们运行扫描以发现我们之前在目标列表中指定的子网中的主机。 转到顶部菜单中的“扫描 ->任务”并创建一个新任务:

      对于此任务,我们将“扫描目标”选项设置为新创建的目标列表,我们选择将结果添加到资产中。 然后我们将“扫描配置”设置为“主机发现”,然后单击“创建”按钮以创建新的扫描任务:  

      接下来,我们通过单击“运行任务”图标来运行新创建的任务:

      主机发现扫描完成后,我们可以在结果页面上找到结果(扫描 ->结果):   

      结果列表包含使用ICMP或ARP Ping发现的所有主机。 我们还可以在OpenVAS的资产部分找到发现的主机:    

    运行系统发现扫描

      我们现在概述了响应我们的主机发现探测器的所有主机,但这只告诉我们主机是生命。 要获得有关这些实时主机的更多信息,我们可以运行“系统发现”扫描。 在我们运行此扫描之前,让我们看看它到底做了什么。 转到“配置 ->扫描配置”,然后单击“系统发现”扫描配置:

      当我们单击NVT系列条目时,我们可以看到System Discovery扫描使用各种检查来确定操作系统并发现SMB服务器,打印机和各种服务。 现在我们知道这次扫描的作用,让我们在几个目标上运行它。 从发现的主机中,我们选择了一些目标,并将它们包含在新的自定义目标列表中:   

      然后我们创建一个新的扫描任务,选择自定义目标列表,最后选择“系统发现”扫描:

      接下来,我们可以执行任务并等待它完成。   

      这看起来比Host Discovery扫描更有趣,它甚至在扫描配置有限的情况下发现了一些严重的漏洞。 在扫描结果中,我们可以发现扫描发现了2个漏洞:DistCC Detection和允许匿名登录的FTP服务器。

      另一个有趣的更新发生在资产部分。 当我们浏览资产 ->操作系统

    运行完全和快速漏洞扫描

      现在我们已经在192.168.100.1/24子网上发现了实时主机,基于这些主机创建了一个自定义目标列表并运行了一些扫描,让我们运行全速和快速漏洞扫描。 Full&Fast漏洞扫描是一种平衡扫描配置,经过优化可在最短的时间内提供最佳结果。 这种类型的扫描探测大多数NVT并使用以前收集的信息。 让我们通过创建一个新任务来设置此扫描:  

      我们再次使用我们之前创建的自定义目标列表,然后选择完全和快速扫描配置。 您还可以使用扫描配置设置指定同时扫描多少NVT和主机。 当您使用相对较重的扫描配置定位许多主机时,请考虑您的计算机有足够的资源可用于有效执行扫描任务。 此外,考虑到使用此类扫描一次扫描不同的主机会产生大量网络流量,甚至可能导致服务和主机崩溃。 在本次演示中,我们同时扫描了一台主机和20台NVT。 经过一个多小时的扫描,OpenVAS得出以下结果:

      发现的漏洞包括信息泄露漏洞,例如主机192.168.100.106的“DCE / RPC和MSRPC服务枚举报告”,以及更严重的漏洞,例如“Microsoft Windows SMB Server Multiple Vulnerabilities-Remote(4013389)”或更好地称为MS17 -010和EternalBlue。 OpenVAS还扫描已知错误配置的目标,其中“IIS ASP.NET应用程序跟踪已启用”就是一个很好的例子。 可能会滥用启用应用程序跟踪等错误配置,以允许攻击者查看Web请求。 这些请求[FB1]可以包含敏感数据,例如具有登录凭据的POST请求。

      到目前为止,结果非常有趣,因为我们发现了一些严重的漏洞,如MS17-010。我们还发现了不同的错误配置,允许攻击者从我们的系统中检索敏感数据,这些数据可用于访问系统或为以后的攻击阶段提供有用的信息。在这一点上,我不想详细讨论误报,甚至更糟糕的误报,但OpenVAS等扫描工具只能检测它扫描的漏洞。当我正在扫描我自己的私人实验室机器时,我知道有一些漏洞/错误配置,OpenVAS没有接收到它们,如果没有进一步测试它们就会被忽视。虽然OpenVAS确实揭示了严重的漏洞,但我们不能完全依赖扫描结果,因此结合自动扫描进行手动测试也很重要。在使用OpenVAS进行漏洞扫描的第4部分中,我们将介绍漏报(未检测到的漏洞),我们将看看我们可以采取哪些措施来避免这种情况。在下一节中,我们将了解如何使用OpenVAS执行凭证扫描。

    Credentialed漏洞扫描 

       到目前为止,我们仅从网络角度扫描了漏洞目标,例如易受攻击的Web服务器,SMB和FTP服务器。 我们还可以在目标配置中提供凭据,以便OpenVAS能够登录并检查本地漏洞,例如内核和已安装软件中的安全问题,例如允许权限提升的漏洞。 使用凭据的另一种方法是检查目标是否为默认值或易于猜测凭据,例如admin / admin。 在这种情况下,OpenVAS将检查目标上的给定凭据,并报告它们是否正常工作。 一个很好的用例就是在扫描(一系列)Cisco设备时创建默认凭据。 在这种情况下,您可以添加cisco / cisco作为用户名和密码,或只添加用户名。 在本演示中,我们将扫描Metasploitable 2并提供管理员凭据。

      要在目标上运行凭证扫描,我们必须首先创建凭据,方法是转到“配置 - >凭据”,然后单击蓝色星形图标以创建一组新凭据:   

      我们将其命名为“MS2”并提供Metasploitable 2的默认凭据(用户名和密码:msfadmin)。 下一步是创建一个新目标,输入目标IP地址并指定新创建的SSH访问凭据,以便OpenVAS能够运行经过身份验证的检查:   

      从这里开始,你将不得不创建一个新的扫描任务并运行它,就像我们在本教程中已经做过几次一样。 现在我们已经提供了凭据,扫描完成后,本地漏洞将包含在报告中。

    安排扫描任务

      我们将在本教程中介绍的最后一个主题是扫描任务调度。 当您希望在预先指定的时间内定期扫描主机或网络范围时,任务调度特别有用。 假设我们希望在晚上几乎没有流量时在公司网络上运行漏洞扫描。 在这种情况下,我们可以创建每天晚上11点运行的日程安排。 我们来看看如何做到这一点。

      首先,我们需要创建一个计划,然后我们将其分配给扫描任务。 要创建计划,请转至“配置” - >“计划”,创建新计划并指定所需的参数:

      此计划将从今天晚上11点开始每天运行漏洞扫描。 唯一剩下的就是创建一个新的扫描任务并分配计划: 

    Part IV:自定义扫描配置 

    打印机的自定义扫描配置

      在本节中,我们将创建一个自定义扫描配置,以测试企业打印机和多功能(MFP)的漏洞。 我们要创建自定义扫描配置的原因是,在安全性和漏洞方面,打印机通常是被忽视的目标。 成功利用这些设备上的漏洞不仅可以让攻击者访问敏感数据,还可以获得网络上的滩头阵地。 许多企业打印机还使用轻量级目录访问协议(LDAP)对公司的域控制器进行身份验证。 在大多数情况下,设备不太可能通过管理员帐户进行身份验证,但可能会为攻击者提供对域帐户的访问权限。

      在定位打印机时,尽可能优化扫描配置并仅扫描目标打印机的NVT非常重要。 许多打印机具有易碎的网络堆栈,无法处理大型扫描负载,甚至可能导致目标崩溃。 我们将排除与打印机无关的NVT,例如针对特定制造商的设备的NVT或针对本地漏洞的NVT。

    创建自定义扫描配置

      首先,我们将创建一个新的扫描配置,并将其命名为“打印机”。 我们可以选择复制现有的扫描配置并禁用我们不想使用的NVT,但由于我们在此处定位打印机,最好从空扫描配置开始,并启用适用于打印机设备的少数NVT。  

      接下来我们可以编辑扫描配置来定位NVT:

      向下滚动到全局变量设置:从扫描中排除打印机,然后单击“编辑”图标:

      启用“从扫描中排除打印机”:

       

      接下来,我们创建一个新的扫描任务,并选择打印机目标列表作为目标,并选择新创建的扫描配置“完全和快速打印机”:

    提示1:当您选择单个NVT时,请不要单击NVT系列复选框,因为这将添加来自特定系列的所有NVT。
    提示2:在本演示中,我们仅添加了专门针对打印机的NVT。 由于大多数现代打印机运行不同的服务和服务器,因此建议同时启用面向FTP,Telnet,SSH,SNMP和Web服务器的NVT。
    提示3:一般来说,我建议不要选择单个NVT的路线,除非它只是少数几个与打印机一样的NVT。

       The End!!! 

  • 相关阅读:
    HLG 1522 子序列的和【队列的应用】
    POJ 3273 Monthly Expense【二分】
    HDU 4004 The Frog's Games 【二分】
    POJ 2001 Shortest Prefixes【第一棵字典树】
    POJ 2823 Sliding Window【单调对列经典题目】
    HDU 1969 Pie 【二分】
    POJ 3125 Printer Queue【暴力模拟】
    POJ 3250 Bad Hair Day【单调栈】
    字典树【模板】
    验证码 Code
  • 原文地址:https://www.cnblogs.com/Hi-blog/p/Installation-and-Use-OpenVAS-On-Kali.html
Copyright © 2011-2022 走看看