当前位置: 首页 > 教程 > 渗透测试 >

Meterpreter基础

精华
小牛编辑
142浏览
2023-03-14

在本节中,我们将学习如何与Metasploit的Meterpreter进行交互。在Linux中,help命令用于获取有关特定命令的信息。因此,我们要做的第一件事是运行help命令,以获取可以运行的所有命令的大列表。它还告诉我们每个命令的作用描述,如下面的屏幕截图所示:

Meterpreter基础

我们要强调的第一件事是后台命令,如下面的屏幕截图所示:

background命令主要用于后台当前会话而不终止它。此命令与最小化窗口非常相似。因此,在运行后台命令后,可以返回Metasploit并运行其他命令以进一步利用目标机器,保持与我们刚攻击的计算机的连接。我们使用sessions -l命令查看我们正在使用的所有计算机和会话的列表。在下面的屏幕截图中,我们可以看到我们仍然有Meterpreter会话,它位于我们的设备10.0.2.15和目标设备10.0.2.5之间:

如果想要回到上一个会话再次运行Metasploit,需要使用运行sessions -i命令(用于交互),然后输入ID,即2,如下面的屏幕截图所示:

我们入侵系统时将运行的另一个命令是sysinfo命令。sysinfo命令向我们显示有关目标计算机的信息。在下面的屏幕截图中,我们可以看到它向我们展示了计算机的名称,操作系统和体系结构。我们还可以在下面的屏幕截图中看到它是64位计算机,因此如果我们希望将来在目标计算机上运行可执行文件,我们将创建64位可执行文件:

我们可以看到它使用英语,计算机正在处理的工作组以及登录的用户ID。还可以看到目标机器上运行的Meterpreter版本,它实际上是32位 版。

另一个有用的信息收集命令是ipconfigipconfig命令显示连接到目标计算机的所有接口,如以下屏幕截图所示:

计算机的所有接口

在上面的屏幕截图中,我们可以看到接口1,MAC地址,IP地址,甚至是连接到多个网络的IPv4地址。还可以看到所有接口以及如何与它们进行交互。

另一个用于信息收集的有用命令是ps命令。ps命令列出目标计算机上运行的所有进程。这些进程可能是作为Windows程序或GUI在前台运行的后台进程或实际程序。在下面的屏幕截图中,我们将看到正在运行的所有进程的列表,以及每个进程的名称和ID或PID:

所有进程的列表

一个有趣的进程是explorer.exe。它是Windows的图形界面。在上面的屏幕截图中,我们可以看到它在PID 4744上运行,如以下屏幕截图所示:

explorer.exe

当入侵系统时,最好将运行此人的进程迁移到更安全的进程中。例如,进程explorer.exe是Windows的图形界面,只要用户使用他们的设备,此进程始终在运行。这意味着此过程比我们获得计算机访问权限的过程更安全。例如,如果我们通过程序或可执行文件获得访问权限,那么当该人员关闭该程序时,我们将失去该过程。更好的方法是迁移到不太可能被终止或关闭的进程。为此,我们将使用migrate命令,它将当前的会话移动到另一个进程。我们将使用进程explorer.exe,因为它是安全的。

我们使用migrate 4744命令,其中4744explorer.exe进程的PID。命令如下:

那时,Meterpreter正在从explorer.exe进程运行。如果转到目标计算机上的任务管理器并运行资源管理器,然后转到网络选项卡并转到TCP连接,可以看到端口8080上的连接来自explorer.exe进程, 如下面的截图所示:

因此,对于目标机器,它不是来自后门,有效负载,恶意文件,它是通过explorer.exe运行,这对目标机器不可疑。如果我们看到Chrome或Firefox,我们就可以迁移到这些进程了。而且,如果使用端口8080或80进行连接,它看起来就更不可疑,因为Web服务器使用端口8080或80,因此通过它们进行连接是很自然的。