漏洞扫描与暴露
漏洞扫描和分析是检测和评估网络基础设施中存在的漏洞的过程。漏洞是资产的特征,攻击者可以利用该资产获得对敏感数据的未经授权访问,注入恶意代码,或生成拒绝服务攻击。为了防止安全漏洞,重要的是要识别和纠正可能使资产暴露于攻击的安全漏洞和漏洞。
您可以使用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控制台。
要添加曝光控制台:
- 选择管理>全局设置从主菜单。
- 点击Nexpose Consoles.选项卡。
- 点击配置Nexpose控制台按钮。
- 当出现“暴露”配置界面时,输入如下信息:
- 控制台地址- nexpes实例的IP或服务器地址。
- 控制端口—运行exposed服务的端口。默认端口为3780。
- 控制台用户名—用于登录控制台的用户名。
- 控制台密码- 将用于验证帐户的密码。
- 选择启用初始化和激活Nexpose控制台的选项。
- 保存配置。
使用控制台更新了暴露控制台表。如果Metasploit Pro能够成功连接并验证到暴露控制台,则状态为“可用(启用)”,如下所示:
否则,如果有控制台的配置存在问题,则显示“错误”状态。可能会出现以下错误:
- 'Error: exposed host is unreachable'表示Metasploit Pro无法访问控制台。您需要验证是否输入了正确的地址和端口。
- “错误:API Access所需的身份验证”表示您提供的凭据不能用于对Nexpose服务器进行身份验证。您需要验证您输入了正确的凭据。
运行nexpose扫描
为了能够优先考虑安全风险,您必须知道在环境中运行的设备并了解它们如何易受攻击。您可以运行Nexpose扫描以发现在主机上运行的服务和应用程序,并识别基于所收集的数据可能存在的潜在漏洞。要了解Nexpose的工作原理,请查看nexpose文件.
从exposure收集的所有扫描数据都存储在Metasploit项目中,可以从Analysis区域查看。从每个主机收集的信息包括IP地址、主机名、操作系统、正在运行的服务和可能的漏洞。Metasploit Pro将每个漏洞映射到一个相关的模块(如果模块数据库中存在漏洞的话)。这些模块可以从模块选项卡在单主机视图中。
要运行Nexpose Scan:
- 从项目中,单击概述或者分析选项卡。
- 点击进口按钮,位于快速任务栏中。
- 当进口出现页面,单击选择一个Nexpose控制台下拉菜单,并选择要用于运行扫描的控制台。该列表显示已添加到Metasploit Pro的暴露控制台。如果没有任何控制台可用,请添加一个暴露控制台在您继续之前。
- 输入要扫描的地址扫描目标字段。
- 可以指定IP地址、IP范围或CIDR表示法。每个项目必须在新的一行中列出。
- 您可以使用标准的IPv6寻址来定义单独的IPv6地址。例如,使用
fe80:: 202: b3ff: fe1e: 8329
对于单个地址和2001年:db8:: / 32
CIDR标记。对于链路本地地址,必须在地址后面加上接口ID。例如,输入FE80 :: 1%eth0
链接本地地址。 - 您只能在“暴露”中扫描您拥有许可证的主机数量。如果提供的主机数量超过可用的license数量,则扫描失败。例如,如果您有一个Community许可证,那么暴露支持的最多主机数是32。如果主机数量超过32个,则扫描失败。
- 点击扫描模板下拉列表并选择模板。有关扫描模板的更多信息,请查看nexpose文件.
- 如果您不希望扫描覆盖项目中的现有主机的数据,请选择不要更改现有主机选项。
- 点击导入数据按钮开始扫描。
扫描完成后,选择分析>主持人查询扫描结果。
从Metasploit Pro运行暴露扫描后,在暴露控制台上创建一个临时站点。临时站点的命名语法为Metasploit - <项目名称> < ID >
.在Nexpose中,选择资产>网站查看网站列表并按项目名称搜索网站。
Nexpose扫描停电
扫描停电可防止在特定时间段内进行Nexpose扫描。如果在停电期间尝试从Metasploit运行Nexpose扫描,则扫描将启动,但将显示一个错误的任务日志中的错误:
1开始Nexpose扫描2[*] [2015.07.22-16:28:03] >>创建临时站点#27 Metasploit12343.[ - ] [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控制台并执行以下操作:
- 去行政页。
- 从扫描选项,找到全球停电类别和选择管理.
- 检查现有的全球和站点停电期。
导入Nexpose数据
如果您喜欢直接从暴露控制台运行扫描,那么您可以导入扫描结果以共享结果并使用Metasploit Pro验证它们。当您从exposed导入数据时,Metasploit Pro会通过使用服务和漏洞引用ID自动索引exposed中的漏洞数据,将每个漏洞映射到匹配的漏洞利用。映射的漏洞利用帮助您轻松启动针对漏洞的攻击,并快速确定该漏洞是真正的风险还是假阳性。
您可以直接从暴露控制台导入站点,也可以导入暴露Simple XML或XML导出文件。
导入现有的Nexpose网站
- 打开要导入数据的项目。
- 从任务栏中,单击进口按钮。这导入数据出现页面。
- 选择从Nexpose进口选项。
- 点击选择曝光控制台下拉列表并选择要导入数据的控制台。
- 选择导入现有数据选项。
- 选择要从“站点”表导入的站点。
- 选择不修改现有主机如果不希望修改项目中存储的任何现有主机。
- 点击导入数据按钮开始导入。
任务日志出现并显示导入的状态。导入完成后,任务日志显示“已完成”状态。要查看导入的数据,请选择分析>主持人去主持人页。
导入Nexpe简单的XML或XML导出文件
- 从项目中,单击概述或者分析选项卡。
- 点击进口按钮,位于快速任务栏中。
- 当出现导入数据页时,选择从文件导入径向按钮。
- 点击一下选择文件按钮打开文件上传窗口。
- 出现“文件上传”窗口时,浏览到要导入的文件的位置,选择它,然后单击开放按钮。
Metasploit Pro支持以下Nexpose导出类型:XML导出,XML导出2.0和Nexpe简单的XML导出。
- 配置任何附加设置(可选):
- 排除了地址- 输入您不希望在导入中包含的任何主机。您可以输入单个主机,IP范围或CIDR表示法。每个项目必须出现在新行上。
- 不要更改现有主机—如果您不想覆盖业务群组中已经存在的主机的数据,请选择此选项。
- 自动标记—输入待导入主机的标签。您也可以选择操作系统自动标记选项要添加OS标记,例如“os_windows”,'os_linux'或'os_unknown'标记,oc为每个导入的主机。
- 点击导入数据按钮开始导入。
任务日志出现并显示导入的状态。导入完成后,任务日志显示“已完成”状态。要查看导入的数据,请选择分析>主持人去主持人页。