在本节中, 我们将学习如何与Metasploit的Meterpreter进行交互。在Linux中, help命令用于获取有关特定命令的信息。因此, 我们要做的第一件事是运行help命令, 以获取可以运行的所有命令的大列表。它还告诉我们每个命令的功能描述, 如以下屏幕截图所示:
文章图片
我们要强调的第一件事是背景命令, 如以下屏幕截图所示:
文章图片
后台命令基本上用于后台当前会话而不终止它。此命令与最小化窗口非常相似。因此, 在运行了后台命令之后, 我们可以返回Metasploit并运行其他命令以进一步利用目标计算机, 从而保持与刚被黑客入侵的计算机的连接。我们将使用sessions -l命令来查看我们正在使用的所有计算机和会话的列表。在以下屏幕截图中, 我们可以看到我们仍然有Meterpreter会话, 它位于我们的设备(即10.0.2.15)和目标设备(即10.0.2.5)之间:
文章图片
如果要返回到上一个会话以再次运行Metasploit, 则必须使用-i(用于进行交互)运行session命令, 然后输入ID(即2), 如以下屏幕快照所示:
文章图片
每当我们侵入系统时, 我们将运行的另一个命令是sysinfo命令。 sysinfo命令向我们显示有关目标计算机的信息。在以下屏幕截图中, 我们可以看到它向我们显示了计算机的名称, 操作系统和体系结构。我们还可以在下面的屏幕快照中看到它是一台64位计算机, 因此, 如果我们以后希望在目标计算机上运行可执行文件, 我们知道将创建64位可执行文件:
文章图片
我们可以看到它使用英语, 计算机正在工作的工作组以及登录的用户ID。我们还可以看到目标计算机上正在运行的Meterpreter版本, 它实际上是32位版。
ipconfig是另一个有用的信息收集命令。 ipconfig命令向我们显示了连接到目标计算机的所有接口, 如以下屏幕快照所示:
文章图片
在上面的屏幕截图中, 我们可以看到接口1, 连接到多个网络的MAC地址, IP地址甚至IPv4地址。我们还可以看到所有接口以及如何与它们交互。
ps命令是另一个用于信息收集的有用命令。 ps命令列出了目标计算机上正在运行的所有进程。这些进程可能是后台进程, 也可能是作为Windows程序或GUI在前台运行的实际程序。在下面的屏幕截图中, 我们将看到所有正在运行的进程的列表, 以及每个进程的名称和ID或PID:
文章图片
一个有趣的过程是explorer.exe。它是Windows的图形界面。在前面的屏幕截图中, 我们可以看到它正在PID 4744上运行, 如以下屏幕截图所示:
文章图片
【Meterpreter基础介绍】当我们侵入系统时, 最好将人员正在运行的进程迁移到更安全的进程中。例如, 进程explorer.exe是Windows的图形界面, 并且只要用户使用其设备, 该进程就始终在运行。这意味着此过程比我们访问计算机的过程安全得多。例如, 如果我们通过程序或可执行文件获得访问权限, 则当该人关闭该程序时, 我们将丢失该过程。更好的方法是迁移到不太可能终止或关闭的进程。为此, 我们将使用migration命令, 它将把当前会话移到另一个进程中。我们将使用进程explorer.exe, 因为它是安全的。
我们将使用migration 4744命令, 其中4744是explorer.exe进程的PID。命令如下:
文章图片
那时, Meterpreter正在explorer.exe进程中运行。现在, 如果我们转到目标计算机上的任务管理器并运行资源管理器, 然后转到“网络”选项卡并转到“ TCP连接”, 我们可以看到端口8080上的连接来自explorer.exe进程, 如以下屏幕截图所示:
文章图片
因此, 对于目标计算机而言, 它不是来自后门, 我们的有效负载, 一个恶意文件, 而是通过explorer.exe运行的, 该文件对于目标计算机而言并不可疑。现在, 如果我们看到Chrome或Firefox, 便能够迁移到这些进程。而且, 如果我们使用端口8080或80进行连接, 那么它看起来似乎更加可疑, 因为Web服务器使用端口8080或80, 因此通过它们进行连接是很自然的。