扫描过程结束, 大约需要两分钟。如果单击Metasploitable计算机, 我们将发现我们发现了一个新热点, 其中安装了33个新服务, 并且还可以检测到一个漏洞:
文章图片
图:可部署扫描结果
现在我们要分析主机, 然后看到我们的主机IP为10.0.2.4, 并且已正确扫描。它具有VMware, 具有服务器, 并且在Linux 8.04上运行:
文章图片
图:主机扫描
【MSFC分析】如果单击IP 10.0.2.4, 则可以看到已安装的服务, 如以下屏幕快照所示:
文章图片
图:已安装的服务
在上面的屏幕截图中, NAME显示了服务的名称。 PROTO显示协议。 STATE显示端口的状态。服务信息显示服务信息。让我们举个例子, dns在包含udp协议的端口53上运行, 该端口已打开, 服务为BIND 9.4.2。
我们可以使用页面右下方的箭头按钮切换页面。它将显示与Nmap相同的结果, 只是具有更好的GUI。会话选项卡显示连接。如果我们利用任何东西, 我们将在会话中看到它们。 GUI如下所示:
文章图片
图:被利用的会话
漏洞标签将向我们显示已发现的漏洞。使用Nmap, 我们只能获得服务。但是在Metasploitable中, 如果发现漏洞, 并且Metasploit可以利用该漏洞, 它实际上会映射并显示给我们。我们可以单击它以获得有关该漏洞的更多信息。
如果程序设法找到任何有趣的凭据, 则“凭据”选项卡将向我们显示凭据。在以下屏幕截图中, 我们可以看到它已成功找到PostgreSQL的用户名和密码, 即postgres。如果单击“验证”列下的钥匙图标, 它将为我们验证它。我们可以在VALIDATION列中看到已验证状态:
文章图片
图:凭证
现在, 我们可以使用前面的信息。我们可以继续使用用户名postgres和密码postgres连接到SQL数据库。让我们看一个简单的例子。我们将转到Kali的Terminal, 并使用连接到SQL和PostgreSQL的命令psql。现在, 我们将放入-h命令, 然后将要连接的IP放入。命令如下:
文章图片
现在, 它将询问用户名, 我们将输入用户名。然后, 我们将输入捕获的密码, 即postgres。然后, 我们将登录到数据库。之后, 我们可以在目标计算机上运行任何SQL命令。 SQL是用于与数据库进行通信的语言。现在, 我们可以捕获数据库的用户名和密码, 并且可以使用SQL语言与数据库进行通信。例如, 我们将运行select current_database(); 。命令。我们可以看到它选择了current_database, 也称为postgres。
文章图片
只要看一个简单的例子就可以证明捕获的数据是正确的。我们将在Metasploit的“捕获的数据”选项卡中看到, 将看到目标计算机没有捕获的数据。但是, 当我们进入“注释”选项卡时, 我们将看到一些有趣的注释, 其中一些有关所用方法的HTTP请求。这些说明对于信息收集过程很有用。
文章图片
图:注释
“文件共享”选项卡将显示从目标计算机共享的任何文件。 “尝试”选项卡将向我们显示在目标计算机上进行的尝试。 “模块”选项卡将向我们显示可用于利用任何发现的漏洞的模块。我们有一个称为Java RMI Server的漏洞, 并且有一个模块可以发现此漏洞。我们将通过单击“启动”来启动“漏洞利用:Java RMI服务器不安全的默认配置Java代码执行”。这将使我们能够从Metasploit社区内部运行漏洞利用程序。现在, 我们将以以前在msfconsole中所做的相同方式进行利用。单击启动后, 我们将模块名称命名为exploit / multi / misc / java_rmi_server, 因此我们将运行use exploit / multi / misc / java_rmi_server命令, 设置PAYLOAD, 设置LHOST, 设置RHOST, 然后加以利用。
在下面的屏幕截图中, 我们可以看到它已经正确选择了目标地址, 并且我们将“连接类型”设置为“反向”, 并且将“有效负载类型”保留为Meterpreter。 Meterpreter只是另一种有效负载。现在, 我们将通过单击“运行模块”来运行模块:
文章图片
图:Meterpreter的选择
在下面的屏幕截图中, 我们可以看到该模块确实在运行, 并且输出与从Metasploit控制台获得的输出非常相似, 并且说会话1已打开。它已经为我们创建了一个会话。现在, 我们可以与它进行通信:
文章图片
图:Meterpreter的输出
在前面的屏幕截图中, 我们可以看到“会话”选项卡。它有1。
文章图片
图:会话
在第7节中, 我们将看到我们可以在计算机上完成的所有操作。
文章图片
图:Command Shell的输出
在这里, 收集系统数据用于获取一些敏感数据, 但是我们将无法使用它, 因为它们全部用于Pro版本, 而我们拥有Community版本。访问文件系统用于访问文件系统。它具有基于Web的文件浏览器, 因此我们可以浏览目标计算机的文件。 Command Shell用于获取Meterpreter的命令提示符。它具有Meterpreter命令外壳, 使我们能够使用Meterpreter有效负载。现在, 我们可以完全访问目标计算机, 并且可以在目标计算机上执行任何操作。 Metasploit通过浏览器为我们做一切。我们不必去运行Metasploit, 而是手动配置有效负载和漏洞利用。