漏洞扫描与暴露

漏洞扫描和分析是检测和评估网络基础设施中存在的漏洞的过程。漏洞是资产的特征,攻击者可以利用该资产获得对敏感数据的未经授权访问,注入恶意代码,或生成拒绝服务攻击。为了防止安全漏洞,重要的是要识别和纠正可能使资产暴露于攻击的安全漏洞和漏洞。

您可以使用Nexpose扫描网络以获取漏洞。nexpose标识每台计算机上的活动服务,打开端口和运行应用程序,并且它尝试根据已知服务和应用程序的属性找到可能存在的漏洞。Nexpose揭示了扫描报告中的结果,这有助于您根据风险因素确定漏洞,并确定实现最有效的解决方案。

exposure与Metasploit Pro集成,提供了一个漏洞评估和验证工具,可以帮助您消除误报、验证漏洞并测试补救措施。有几种方法可以将Metasploit Pro与exposure一起使用。Metasploit Pro提供了一个连接器,允许您添加暴露控制台,以便您可以直接从web界面运行漏洞扫描,并自动将扫描结果导入到项目中。您还可以从exposed运行扫描,并将扫描报告导入Metasploit Pro,以执行漏洞分析和验证。你可以选择最适合你的方法。

基本的

Nexpose术语

Nexpose中的一些术语不同于Metasploit中使用的术语。以下是您应该熟悉的一些Nexpose术语:

  • 资产—网络中的主机。
  • 地点- 具有专用扫描引擎的逻辑资产组。一个站点可以在很长一段时间内运行,并为您提供历史,趋势数据,并且类似于Metasploit中的项目。
  • 扫描模板—用于定义漏洞扫描的审计级别模板。有关扫描模板的更多信息,请查看nexpose文件

下载和安装Nexpose

您可以从以下网站下载Community版的exposurerapt7网站.有关如何安装和配置exposure的详细信息,请参阅nexpose文件.如果您对Nexpose Enterprise感兴趣,请联系Rapid7销售团队。

添加暴露控制台

在从Metasploit Pro运行Nexpose扫描之前,必须添加Nexpose控制台。您需要知道地址和端口Nexpose在ON运行,并且您将需要凭据的帐户可用于登录Nexpose控制台。

要添加曝光控制台:

  1. 选择管理>全局设置从主菜单。
  1. 点击Nexpose Consoles.选项卡。
  1. 点击配置Nexpose控制台按钮。
  1. 当出现“暴露”配置界面时,输入如下信息:
  • 控制台地址- nexpes实例的IP或服务器地址。
  • 控制端口—运行exposed服务的端口。默认端口为3780。
  • 控制台用户名—用于登录控制台的用户名。
  • 控制台密码- 将用于验证帐户的密码。
  1. 选择启用初始化和激活Nexpose控制台的选项。
  2. 保存配置。

使用控制台更新了暴露控制台表。如果Metasploit Pro能够成功连接并验证到暴露控制台,则状态为“可用(启用)”,如下所示:

否则,如果有控制台的配置存在问题,则显示“错误”状态。可能会出现以下错误:

  • 'Error: exposed host is unreachable'表示Metasploit Pro无法访问控制台。您需要验证是否输入了正确的地址和端口。
  • “错误:API Access所需的身份验证”表示您提供的凭据不能用于对Nexpose服务器进行身份验证。您需要验证您输入了正确的凭据。

运行nexpose扫描

为了能够优先考虑安全风险,您必须知道在环境中运行的设备并了解它们如何易受攻击。您可以运行Nexpose扫描以发现在主机上运行的服务和应用程序,并识别基于所收集的数据可能存在的潜在漏洞。要了解Nexpose的工作原理,请查看nexpose文件

从exposure收集的所有扫描数据都存储在Metasploit项目中,可以从Analysis区域查看。从每个主机收集的信息包括IP地址、主机名、操作系统、正在运行的服务和可能的漏洞。Metasploit Pro将每个漏洞映射到一个相关的模块(如果模块数据库中存在漏洞的话)。这些模块可以从模块选项卡在单主机视图中。

要运行Nexpose Scan:

  1. 从项目中,单击概述或者分析选项卡。
  2. 点击进口按钮,位于快速任务栏中。
  3. 进口出现页面,单击选择一个Nexpose控制台下拉菜单,并选择要用于运行扫描的控制台。该列表显示已添加到Metasploit Pro的暴露控制台。如果没有任何控制台可用,请添加一个暴露控制台在您继续之前。
  4. 输入要扫描的地址扫描目标字段。
  • 可以指定IP地址、IP范围或CIDR表示法。每个项目必须在新的一行中列出。
  • 您可以使用标准的IPv6寻址来定义单独的IPv6地址。例如,使用fe80:: 202: b3ff: fe1e: 8329对于单个地址和2001年:db8:: / 32CIDR标记。对于链路本地地址,必须在地址后面加上接口ID。例如,输入FE80 :: 1%eth0链接本地地址。
  • 您只能在“暴露”中扫描您拥有许可证的主机数量。如果提供的主机数量超过可用的license数量,则扫描失败。例如,如果您有一个Community许可证,那么暴露支持的最多主机数是32。如果主机数量超过32个,则扫描失败。
  1. 点击扫描模板下拉列表并选择模板。有关扫描模板的更多信息,请查看nexpose文件
  2. 如果您不希望扫描覆盖项目中的现有主机的数据,请选择不要更改现有主机选项。
  3. 点击导入数据按钮开始扫描。

扫描完成后,选择分析>主持人查询扫描结果。

从Metasploit Pro运行暴露扫描后,在暴露控制台上创建一个临时站点。临时站点的命名语法为Metasploit - <项目名称> < ID >.在Nexpose中,选择资产>网站查看网站列表并按项目名称搜索网站。

Nexpose扫描停电

扫描停电可防止在特定时间段内进行Nexpose扫描。如果在停电期间尝试从Metasploit运行Nexpose扫描,则扫描将启动,但将显示一个错误的任务日志中的错误:

         
1
开始Nexpose扫描
2
[*] [2015.07.22-16:28:03] >>创建临时站点#27 Metasploit1234
3.
[ - ] [2015.07.22-16:28:03]辅助失败:nexpose :: apierror nexposapi:操作失败:
4
[ - ] [2015.07.22-16:28:03]呼叫堆栈:
5
[-][2015.07.22-16:28:03] /用户/ rapid7 / pro / msf3 / lib / rapid7 / nexpose。rb: 225:在“执行”

您必须等到遮光结束以运行扫描。

要查明禁止结束时,请登录Nexpose控制台并执行以下操作:

  1. 行政页。
  2. 扫描选项,找到全球停电类别和选择管理
  3. 检查现有的全球和站点停电期。

导入Nexpose数据

如果您喜欢直接从暴露控制台运行扫描,那么您可以导入扫描结果以共享结果并使用Metasploit Pro验证它们。当您从exposed导入数据时,Metasploit Pro会通过使用服务和漏洞引用ID自动索引exposed中的漏洞数据,将每个漏洞映射到匹配的漏洞利用。映射的漏洞利用帮助您轻松启动针对漏洞的攻击,并快速确定该漏洞是真正的风险还是假阳性。

您可以直接从暴露控制台导入站点,也可以导入暴露Simple XML或XML导出文件。

导入现有的Nexpose网站

  1. 打开要导入数据的项目。
  2. 从任务栏中,单击进口按钮。这导入数据出现页面。
  3. 选择从Nexpose进口选项。
  4. 点击选择曝光控制台下拉列表并选择要导入数据的控制台。
  5. 选择导入现有数据选项。
  6. 选择要从“站点”表导入的站点。
  7. 选择不修改现有主机如果不希望修改项目中存储的任何现有主机。
  8. 点击导入数据按钮开始导入。

任务日志出现并显示导入的状态。导入完成后,任务日志显示“已完成”状态。要查看导入的数据,请选择分析>主持人主持人页。

导入Nexpe简单的XML或XML导出文件

  1. 从项目中,单击概述或者分析选项卡。
  2. 点击进口按钮,位于快速任务栏中。
  3. 当出现导入数据页时,选择从文件导入径向按钮。
  4. 点击一下选择文件按钮打开文件上传窗口。
  5. 出现“文件上传”窗口时,浏览到要导入的文件的位置,选择它,然后单击开放按钮。

Metasploit Pro支持以下Nexpose导出类型:XML导出,XML导出2.0和Nexpe简单的XML导出。

  1. 配置任何附加设置(可选):
  • 排除了地址- 输入您不希望在导入中包含的任何主机。您可以输入单个主机,IP范围或CIDR表示法。每个项目必须出现在新行上。
  • 不要更改现有主机—如果您不想覆盖业务群组中已经存在的主机的数据,请选择此选项。
  • 自动标记—输入待导入主机的标签。您也可以选择操作系统自动标记选项要添加OS标记,例如“os_windows”,'os_linux'或'os_unknown'标记,oc为每个导入的主机。
  1. 点击导入数据按钮开始导入。

任务日志出现并显示导入的状态。导入完成后,任务日志显示“已完成”状态。要查看导入的数据,请选择分析>主持人主持人页。