快速入门指南 Metasploit Pro是一种利用和漏洞验证工具,可帮助您将渗透测试工作流程划分为可管理的部分。虽然可以设置自己的工作流程,但下面列出的是可帮助您入门的典型工作流程。 这些步骤通常是: - 建立专案
- 获取目标数据
- 查看和管理主机数据
- 运行漏洞扫描
- 设置监听器
- 利用已知漏洞
- 剥削后并收集证据
- 清理会话
- 产生报告

创建一个项目
项目包含工作空间,存储数据,并使您能够将项目分成逻辑组。通常,您对组织中的各个子网有不同的要求。因此,拥有多个项目来代表那些需求可能是有效的。 例如,您可能要为人力资源部门创建一个项目,为IT部门创建另一个项目。您对这些部门的要求可能相差很大,因此将目标分为不同的项目对您来说是合乎逻辑的。参与结束时,您可以为每个部门生成单独的报告,以进行比较分析并将发现的结果提交给组织。 创建一个项目很容易。您可以单击“项目”页面上的“新建项目”按钮,也可以从全局工具栏中选择“项目”>“新建项目”。  当出现“新项目”页面时,您只需要提供一个项目名称。如果要自定义项目,还可以添加描述,指定网络范围并分配用户访问级别。  想更多地了解项目?查看此页面。
获取目标数据
接下来要做的是将数据添加到项目中。有两种方法可以执行此操作: 扫描目标扫描是对主机进行指纹识别并枚举开放端口以了解网络中运行的服务的过程。通过扫描,您可以识别活动的系统以及可以与之通信的服务,从而可以制定有效的攻击计划。Metasploit拥有自己的内置发现扫描程序,该扫描程序使用Nmap执行基本的TCP端口扫描并收集有关目标主机的其他信息。 默认情况下,发现扫描包括UDP扫描,它将UDP探测发送到最常见的UDP端口,例如NETBIOS,DHCP,DNS和SNMP。扫描测试大约250个端口,这些端口通常为外部服务公开,并且在渗透测试期间通常进行测试。 在发现扫描期间,Metasploit Pro会自动将主机数据存储在项目中。您可以查看主机数据以获得对网络拓扑的更好理解,并确定利用每个目标的最佳方法。通常,网络拓扑可以洞悉目标已安装的应用程序和设备的类型。您可以收集的有关目标的信息越多,对您进行测试的调整就越多。 运行发现扫描很简单。在项目中,单击“扫描”按钮。  当出现“新发现扫描”表单时,在“目标地址”字段中输入要扫描的主机。您可以输入一个IP地址,带连字符的IP范围或标准CIDR表示法。每个项目都需要出现在换行符上。  您可以只在目标范围内运行扫描。但是,如果要微调扫描,则可以配置高级选项。例如,您可以指定要从扫描中排除的主机,并从高级选项中设置扫描速度。 想更多地了解发现扫描?查看此页面。 汇入资料如果您使用的是漏洞扫描程序,则可以将漏洞报告导入Metasploit项目中进行验证。导入的漏洞数据还包括主机元数据,您可以对其进行分析以识别其他攻击路线。Metasploit支持多种第三方漏洞扫描程序,包括Nessus,Qualys和Core Impact。 您还可以将数据从一个Metasploit项目导出和导入到另一个项目中。这使您可以在项目和其他团队成员之间共享发现。 要将数据导入项目,请单击快速任务栏中的导入按钮。出现“导入数据”页面时,选择“从Nexpose导入”或“从文件导入”选项。根据您选择的选项,表格显示您需要配置以导入文件的选项。  例如,如果选择从Nexpose导入,则需要选择要用于运行扫描或导入站点的控制台。如果选择导入文件,则需要浏览到文件的位置。 要查看受支持的导入类型的完整列表或要了解有关导入的更多信息,请查看此页面。
查看和管理主机数据
您可以在项目级别或主机级别查看主机数据。在项目级别,Metasploit提供了已添加到项目中的所有主机的高级视图。要访问项目视图,请选择分析>主机。项目视图最初显示“主机”列表,该列表显示每个主机的指纹以及枚举的端口和服务。您还可以查看项目的所有注释,服务,漏洞和捕获的数据。要访问其他视图,请在项目视图中单击其选项卡。  要查看主机的详细信息,可以单击主机的IP地址以访问单个主机视图。这是深入查看特定主机的漏洞和凭据的一种好方法。 
运行漏洞扫描
将目标数据添加到项目后,可以运行漏洞扫描以查明可以利用的安全漏洞。漏洞扫描程序利用漏洞数据库并检查以发现目标计算机上存在的已知漏洞和配置错误。这些信息可以帮助您确定潜在的攻击媒介,并制定和制定攻击计划,从而使您能够在利用过程中危及目标。 与Nexpose的集成使您可以直接从Metasploit Web界面启动漏洞扫描。Nexpose扫描可识别在每个主机上运行的活动服务,打开的端口和应用程序,并尝试根据已知服务和应用程序的属性来识别可能存在的漏洞。Nexpose在扫描报告中披露结果,您可以将其与Metasploit共享以进行验证。 要运行Nexpose扫描,请单击快速任务栏中的Nexpose按钮。  当出现Nexpose配置表单时,您需要配置并选择要用于执行扫描的控制台。与发现扫描类似,您需要定义要扫描的主机。您还需要选择一个可用的扫描模板,该模板定义Nexpose使用的审核级别。有关扫描模板的更多信息,请查看Nexpose文档。  要查看Nexpose发现的所有潜在漏洞,请选择分析>漏洞。您可以单击漏洞名称以查看可用于利用漏洞的模块。  在下一个最高测试阶段:剥削,这些信息变得很方便。 [backcolor=rgba(81, 155, 200, 0.08)][size=0.875]漏洞扫描程序是有用的工具,可以帮助您快速发现目标上的潜在安全漏洞。但是,有时您可能想要避免检测并限制所产生的噪声量。在这些情况下,您可能需要运行一些辅助模块,例如FTP,SMB和VNC登录扫描程序,以手动识别可以利用的潜在漏洞。手动漏洞分析非常耗时,需要您自己进行研究,批判性思维和深入的知识,但是它可以帮助您创建准确而有效的攻击计划。
轻松找到并利用漏洞扫描和检查漏洞的最简单方法是通过漏洞验证向导,该向导可以自动为Nexpose和Metasploit Pro用户提供验证过程。该向导提供了一个指导界面,引导您完成验证过程的每个步骤-从导入Nexpose数据到自动利用漏洞,再到将验证结果发送回Nexpose。 如果您无权访问Nexpose和/或Metasploit Pro,则验证过程需要手动分析漏洞。手动验证需要更多的工作量,但可以提供对目标漏洞的更多控制。 有关漏洞验证的更多信息,请查看此页面。
利用已知漏洞
在收集了有关目标的信息并确定了潜在的漏洞之后,可以进入开发阶段。利用只是针对发现的漏洞运行利用的过程。成功的利用漏洞尝试提供对目标系统的访问,因此您可以执行诸如窃取密码哈希和下载配置文件之类的事情。它们还使您能够识别和验证漏洞带来的风险。 Metasploit提供了几种可用于执行利用的方法:自动利用和手动利用。 自动利用自动利用功能可以交叉引用开放服务,漏洞参考和指纹以找到匹配的利用。所有匹配的漏洞利用都被添加到攻击计划中,该计划基本上确定了可以运行的所有漏洞利用。自动利用漏洞的简单目标是通过利用Metasploit为目标主机提供的数据来尽快获得会话。 要运行自动利用,请单击“快速任务”栏中的“利用”按钮。  至少,您需要提供要利用的主机以及每种利用的最低可靠性。可以设置最低可靠性,以确保所发射漏洞的安全性。可靠性级别越高,所利用的漏洞利用就不太可能使服务崩溃或对目标产生负面影响。有关每个模块排名的说明,请查看此页面。 手工剥削手动利用漏洞提供了更有针对性和方法性的漏洞利用方法。它使您可以一次运行一个选择的漏洞利用程序。如果存在要利用的特定漏洞,此方法特别有用。例如,如果您知道Windows XP目标上的SMB服务器没有MS08-067修补程序,则可能要尝试运行相应的模块来加以利用。 要搜索模块,请选择“模块”>“搜索”,然后输入要运行的模块的名称。查找确切模块匹配的最佳方法是按漏洞参考进行搜索。例如,如果要搜索ms08-067,则可以搜索“ ms08-067”。您也可以按以下模块路径进行搜索:exploit/windows/smb/ms08_067_netapi。 查找漏洞利用程序的最简单方法之一是直接从漏洞页面。要查看项目中的所有漏洞,请选择“分析”>“漏洞”。您可以单击漏洞名称以查看可用于利用该漏洞的相关模块。  单个漏洞视图显示了可以针对主机运行的漏洞利用列表。您可以单击利用按钮以打开模块的配置页面。 配置通用漏洞利用模块设置每个模块都有自己的一组选项,可以根据您的需求进行定制。这里列出的可能性太多。但是,以下是一些通常用于配置模块的选项: - 有效负载类型-指定漏洞将传递给目标的有效负载类型。选择以下有效负载类型之一:
- 命令-命令执行有效负载,使您能够在远程计算机上执行命令。
- Meterpreter-一种高级有效负载,提供命令行,使您能够即时传递命令并注入扩展。
- 连接类型-指定您希望Metasploit实例连接到目标的方式。选择以下连接类型之一:
- 自动-检测到NAT时自动使用绑定连接;否则,使用反向连接。
- 绑定-使用绑定连接,当目标位于防火墙或NAT网关后面时,此连接很有用。
- 反向-使用反向连接,这在系统无法启动与目标的连接时非常有用。
- LHOST-定义本地主机的地址。
- LPORT-定义要用于反向连接的端口。
- RHOST-定义目标地址。
- RPORT-定义要攻击的远程端口。
- 目标设置-指定目标操作系统和版本。
- 利用超时-以分钟为单位定义超时。
剥削后的证据
成功利用漏洞的任何利用都会导致开放会话,您可以使用该会话从目标中提取信息。攻击的真正价值取决于您可以从目标中收集的数据,例如密码哈希,系统文件,以及屏幕截图,以及如何利用这些数据来访问其他系统。 要查看打开的会话列表,请选择“会话”选项卡。单击会话ID以查看可以针对主机运行的利用后任务。  要从被利用的系统收集证据,请单击“收集”按钮。  显示所有打开的会话的列表,并向您显示可以收集的证据类型。 
暴力破解和重用密码
获取目标的最流行方法之一是使用密码攻击。您可以使用Bruteforce或Reusing Credentials进行密码攻击。
清理会话
完成打开的会话后,您可以清理会话以删除可能遗留在系统上的所有证据并终止会话。要清理会话,请转到“会话”页面,然后单击清理按钮。  当出现“会话清理”页面时,选择要关闭的会话,然后单击“清理会话”按钮。 
生成报告
在渗透测试的最后,您需要创建一个包含渗透测试结果的可交付成果。Metasploit提供了许多报告,可用于编译测试结果并将数据合并为可分发的有形格式。每个报告将您的发现组织到相关部分,显示统计数据的图表,并总结主要发现。 |