Metasploit Framework(3)Meterpreter

文章的格式也许不是很好看,也没有什么合理的顺序

完全是想到什么写一些什么,但各个方面都涵盖到了

能耐下心看的朋友欢迎一起学习,大牛和杠精们请绕道

 

Meterpreter:是一种高级的,动态的,可拓展的payload

获取系统Shell通常很有用,但是有时候我们需要更深入的"Shell"

比如我想知道目标机器的键盘什么键被按下,或者使目标机器弹出一个提示框等等

 

meterpreter获取的不是系统的shell

meterpreter是完全基于内存DLL注入式payload(不写硬盘)

因此有很大的免杀效果

注入过程:

注入合法系统进程并建立stager

基于stager上传和预加载DLL进行拓展模块注入

基于stager建立socket连接建立加密的TSL通信隧道

利用TSL隧道进一步加载后续拓展模块(防止网络取证)

 

它可以实现很复杂的功能,甚至是获取麦克风进行窃听,打开摄像头等等

meterpreter还有图形化操作界面

 

下面将会介绍使用方法和示例:

Kali机器IP:192.168.163.132

先要获取一个shell,于是我启动一台windowsXP机器作为目标(IP:192.168.163.134)

 

为了演示,我使用经典的MS08-067漏洞:(具体方法前两篇文章有介绍到)

use windows/smb/ms08_067_netapi

然后依次设置好目标IP,目标类型(这里34代表WindowsXPsp3)

再设置好回连的Payload,以及回连的IP(Kali机器)

 

 

然后exploit渗透,成功!

 

我们像以前一样,sessions -i 进入shell,发现有问题,不能够获取系统shell,而是弹出一个meterpreter:

 

这其实就是获取了meterpreter

 

接下来介绍Meterpreter的使用方式:

background命令:返回msf命令(其实就是退出)

 

可以使用一些linux命令:pwd,ls

 

还可以使用cat命令:但不能使用vi命令,和vi命令一致的一个命令是edit

还有mkdir新建文件夹,rmdir删除文件夹,mv移动或重命名文件,rm删除文件等

 

lpwd,lcd等命令可以操作Kali系统:后边可以进一步上传下载

 

接下来介绍一些强大的命令:run,bgrun:运行,后台运行

这里有几百个可运行的脚本,很多的在后面介绍

 

比如我运行killav:作用:杀掉目标系统的杀毒软件

从而进一步上传文件等

 

bgrun service_manager可以操作目标系统的服务

 

bgrun winbf 可以让目标机器暴力破解用户名密码

 

有趣的是bgrun vnc 

可以获取对面机器的图形化界面:

 

 

 

这里注意:可以获取对方的界面,但是不能操作对方的机器可以看到对方机器在做什么操作

其实还是很有用的

 

其他的模块在后面再介绍,但却是有很多的其他功能

 

下面介绍其他命令:

clearev:

这个命令非常重要:删除日志

计算机会记录各种日志,如果不删除,黑客的痕迹会被轻易发现

 

下一个命令不能说是重要,但是非常地实用:下载:download

下载到哪里了呢?

上边地命令lpwd

比如刚才我进入到了usr目录,现在我就下载到了usr目录

 

 

当然,有下载就会有上传:

比如我把一个脚本上传到windowsXP的C盘

 

 

看看是否成功:

 

OK,成功了!

 

如果上传了一个可执行文件,还可以让目标执行:execute -f 

 

再比如让他执行CMD:

这里的-H是隐藏起来运行,-i是与目标交互

 

getuid:获取当前登陆的账户

getsystem:如果登陆账户不是system,改为system

getprivs:查看当前用户权限

getproxy:获取代理信息

getpid:meterpreter注入一个合法进程,这里是获取注入的进程的PID

所以呢,我们可以做一个小操作来避免被发现:

把meterpreter绑定到桌面进程(或者其他的不会被关注系统进程)

比如我在下面做一个示例:

 

kil命令可以杀死进程

 

两个恶意命令:

reboot重启目标机器,shutdown关机

 

shell命令:操作系统进程

 

search命令:搜索

 

其他的一些命令:

netstat查看网络连接(端口信息),arp查看ARP缓存

ipconfig和ifconfig都可以使用,这个作用不必说了

route查看路由

 

idletime:目标操作系统以及空闲了多长时间

用处:如果空闲时间过长,说明机器使用者不在,可以使用一些明显的渗透技术,风险也可以更小

 

resource命令:调用外部资源文件执行指令

record_mic记录麦克风,获取内容

webcam_list查看摄像头

 

webcam_snap -i 1 -v false

这一行命令的作用很有趣:每一秒钟使用目标机器拍照一次

 

上边这些是基本命令

还能有一些扩展:比如我使用python语言来扩展

作用:可以直接运行原生的python代码

命令:load python

 

使用示例1:helloworld

 

示例2:获取当前工作目录并显示

(其实本身功能以及很强大了,未必就真的能用到扩展)

 

posted @ 2018-11-02 14:49  4ra1n  阅读(697)  评论(0编辑  收藏  举报