MSFC分析
扫描过程结束大约需要两分钟。如果点击Metasploitable机器,可以看到发现了一个新热点,其上安装了33个新服务,并且还设法检测到一个漏洞:
现在点击Analysis | Hosts,看到主机IP为10.0.2.4
,并且已经正确扫描。它有VMware,它有服务器,它是在Linux 8.04上运行:
如果点击IP 10.0.2.4,就能看到已安装的服务,如下面的屏幕截图所示:
在上面的屏幕截图中,NAME显示了服务的名称。PROTO显示协议。STATE显示端口状态。服务信息显示服务信息。我们举一个例子,dns在端口53上运行,它包含udp协议,端口是打开的,服务是BIND 9.4.2。
我们可以使用页面右下角的箭头按钮切换页面。它将显示与Nmap相同的结果。“会话”选项卡显示连接。如果我们想利用其它东西,可在会话中看到它们。GUI看起来像这样:
Vulnerabilities选项卡展示已发现的漏洞。使用Nmap,我们只能获得服务。但是在Metasploitable中,它实际上是映射并展示,如果它发现了漏洞,并且可确定Metasploit是否利用了该漏洞。我们可以点击它并获得有关漏洞的更多信息。
如果程序设法找到任何有趣的凭据,则凭据选项卡显示凭据。在下面的屏幕截图中,可以看到它被设法找到PostgreSQL的用户名和密码,它是postgres
。如果点击VALIDATE
列下的密钥图标,它将为我们验证它。可以在VALIDATION
列中看到Validated
的状态:
可以使用上述信息。我们继续使用用户名postgres
和密码postgres
连接到SQL数据库。让我们看一个这方面的简单例子。我们要进入Kali的终端,使用我们用来连接SQL的命令到PostgreSQL。使用-h
命令,然后指定想要连接的IP。命令如下:
现在,它会询问用户名,我们输入用户名。然后输入捕获的密码,即postgres
。然后我们登录到数据库。在此之后,我们可以在目标计算机上运行任何SQL命令。SQL是用于与数据库通信的语言。我们设法捕获数据库的用户名和密码,我们可以使用SQL语言与数据库进行通信。例如,运行select current_database();
命令。可以看到它选择了current_database
,选择的数据库为postgres
。
只需查看快速示例,即可显示捕获的数据是否正确。我们在Metasploit中看到,在Captured Data 选项卡中,我们将看到目标计算机没有捕获的数据。但是当继续使用Notes 选项卡时,我们会看到一些有趣的注释,其中一些是关于我们使用的某些方法的HTTP请求。这些注释对信息收集过程很有用。
“文件共享”选项卡将显示从目标计算机共享的任何文件。“尝试”选项卡将显示在目标计算机上执行的尝试。“模块”选项卡显示可用于利用任何已发现漏洞的模块。假设有一个名为Java RMI Server的漏洞,并在模块发现此漏洞。我们将通过单击Launch启动Exploit:Java RMI Server不安全默认配置Java代码执行。它将允许从Metasploit社区内运行漏洞利用。现在我们将以同样的方式利用之前在msfconsole
中执行的操作。单击Launch后,将模块名称设置为exploit/multi/misc/java_rmi_server
,因此我们运行exploit/multi/misc/java_rmi_server
命令,设置PAYLOAD,设置LHOST,设置RHOST,然后利用它。
在下面的屏幕截图中,可以看到它已经正确选择了目标地址,我们连接类型设置为Reverse
,并且Payload Type保持为Meterpreter。Meterpreter只是一种不同类型的Payload。通过单击Run Module来运行模块:
在下面的屏幕截图中,可以看到该模块确实运行,输出与从Metasploit控制台获得的输出非常相似,并且它表示会话1已打开。它已经为我们创建了一个会话。现在可以与它交互:
在上面的屏幕截图中,可以看到Sessions选项卡,它的编号为1。如果点击它,就可以看到它,我们打开一个会话,它在Metasploitable机器上,它使用的是Java RMI Server,如下面的屏幕截图所示:
会话7,我们将看到在计算机上执行的所有操作。
在这里,收集系统数据用于获取一些敏感数据,但我们无法使用它,因为它全部用于Pro版本,并且我们使用的是社区版本。Access Filesystem用于访问文件系统。它有一个基于Web的文件浏览器,因此我们可以浏览目标计算机的文件。命令shell用于获取Meterpreter的命令提示符。它有一个Meterpreter命令shell,允许使用Meterpreter有效负载。现在,我们可以完全访问目标计算机,我们可以做任何想做的事情。Metasploit通过浏览器为我们做了一切。我们不必去运行Metasploit,并手动配置有效负载和漏洞。