天天看点

meterpreter 渗透用法

获取凭证

hashdump模块(post)可以从SAM数据库中导出本地用户账号,credential_collector脚本(post/windows/gather/credentials)也可以从目标设备中收集令牌信息。

脚本和post模块都需要通过“run”命令执行,我在测试环境中运行hashdump模块后的结果如下:

meterpreter 渗透用法

数据的输出格式为:用户名:SID:LM哈希:NTLM哈希:::,所以我们得到了三个用户账号,分别为Administrator, Guest和Coen。

其中的LM哈希(aad3b435b51404eeaad3b435b51404ee)跟NTLM哈希(31d6cfe0d16ae931b73c59d7e0c089c0)对应的是一个空密码。

接下来要处理的就是用户Coen的密码(f773c5db7ddebefa4b0dae7ee8c50aea)了。虽然我们可以使用类似John the Ripper这样的工具来破解密码,但是我们直接Google这个哈希之后,就直接得到了密码明文:trustno1。

运行程序

我们还可以使用“execute”命令在目标系统中执行应用程序。这个命令的使用方法如下:

execute -f<file> [Options]           

运行后它将执行file参数所指定的文件。可选参数如下:

-H:创建一个隐藏进程

-a:传递给命令的参数

-i:跟进程进行交互

-m:从内存中执行

-t:使用当前伪造的线程令牌运行进程

-s:在给定会话中执行进程

meterpreter 渗透用法

屏幕截图

我们可以使用“screenshot”命令来进行屏幕截图并存储在我们的系统之中。

meterpreter 渗透用法

截取的效果如下所示:

meterpreter 渗透用法

创建一个新账号

接下来,我们可以在目标系统中创建一个新的用户账号(getgui脚本,使用-u和-p参数),并给它分配管理员权限(使用),然后将其添加到”远程桌面用户”组中。

meterpreter 渗透用法
meterpreter 渗透用法

当然了,你也可以尝试将这个新添加的用户Hacker在Windows登录界面中隐藏。

启用远程桌面(rdesktop 192.168.192.xxx)

当我们新添加的用户已经拥有远程桌面权限之后,我们就可以使用这个账号凭证来开启远程桌面会话了。

首先,我们需要确保目标Windows设备开启了远程桌面功能(需要开启多个服务),不过我们的getgui脚本可以帮我们搞定。我们可以使用-e参数确保目标设备开启了远程桌面功能(重启之后同样会自动开启):

meterpreter 渗透用法

在开启远程桌面会话之前,我们还需要使用“idletime”命令检查远程用户的空闲时长:

meterpreter 渗透用法

这样可以降低你被发现的概率,因为当目标用户登录之后,它将会看到如下图所示的信息:

meterpreter 渗透用法

下图显示的是攻击者使用新创建的“Hacker”账号连接到远程桌面的画面:

meterpreter 渗透用法

键盘记录

Meterpreter还可以在目标设备上实现键盘记录功能,键盘记录主要涉及以下三种命令:

keyscan_start:开启键盘记录功能

keyscan_dump:显示捕捉到的键盘记录信息

keyscan_stop:停止键盘记录功能

首先,我们需要启动键盘记录进程:

meterpreter 渗透用法

启动之后,我们需要等待一段时间后再导出记录信息:

meterpreter 渗透用法

不过在使用键盘记录功能时,通常需要跟目标进程进行绑定,接下来我们介绍如何绑定进程。

绑定进程

Meterpreter既可以单独运行,也可以与其他进程进行绑定。因此,我们可以让Meterpreter与类似explorer.exe这样的进程进行绑定,并以此来实现持久化。

在下面的例子中,我们会将Meterpreter跟winlogon.exe绑定,并在登录进程中捕获键盘记录。

首先,我们需要使用“ps”命令查看目标设备中运行的进程:

meterpreter 渗透用法

接下来,使用“getpid”找出需要绑定的进程,接下来,使用migrate命令+pid来绑定进程。

meterpreter 渗透用法

绑定完成之后,我们就可以开始捕获键盘数据了:

meterpreter 渗透用法

接下来,我们可以选择导出键盘记录,或者使用命令“enum_logged_on_users”来检查用户是否成功登录:

meterpreter 渗透用法

等待片刻之后,使用keyscan_dump命令导出记录信息:

meterpreter 渗透用法

捕捉到的用户密码为trustno1。

清除事件日志

完成攻击操作之后,千万别忘了“打扫战场”。我们的所有操作都会被记录在目标系统的日志文件之中,因此我们需要在完成攻击之后使用命令“clearev”命令来清除事件日志:

meterpreter 渗透用法