ActiveMQ的漏洞

admin 2022年3月22日10:17:14评论137 views字数 1858阅读6分11秒阅读模式

from:http://zone.wooyun.org/content/26827

http://zone.wooyun.org/content/27737

http://zone.wooyun.org/content/28266


Apache ActiveMQ for Windows 5.11.2之前版本,fileserver中用于blob消息的upload/download功能存在目录遍历漏洞,可使攻击者利用此漏洞在任意目录 中创建JSP文件,执行shell命令。此漏洞仅影响Windows OS系统。
对ActiveMQ没有一点认识,本地搞一个环境看看。
通过检索发现
ActiveMQ自带了fileserver(jetty),支持PUT/GET/DELETE方法。
访问fileserver

ActiveMQ的漏洞

那就put一下试试:

ActiveMQ的漏洞
文件put成功

ActiveMQ的漏洞
虽然put一个jsp webshell文件是没有问题的,但是fileserver并不支持jsp文件的解析;
参 考CVE-2015-1830 的 此漏洞仅影响Windows OS系统。
于是尝试目录穿越,且是要一个不存在的目录;
比如

ActiveMQ的漏洞
这样的格式linux环境是不行的;
构造如下格式
http://localhost:8161/fileserver/sex../....admin/test.jsp

ActiveMQ的漏洞
访问

ActiveMQ的漏洞
看着和截图很相似吧。
其他

ActiveMQ的漏洞
附注:
linux环境也是可以put文件的,但是不能getshell,delete可没有尝试;
比如本地直接delete

ActiveMQ的漏洞
====================================================

windows环境activemq 5.8
和之前一样的put

ActiveMQ的漏洞
没有问题,文件成功上传;
尝试MOVE

ActiveMQ的漏洞
居然是500
HTTP/1.1 500 Server Error
通过尝试发现,MOVE是这样的
如果:
Destination: http://localhost:8161/

ActiveMQ的漏洞
文件成功MOVE了,不过move到了activemq的安装的根路径

ActiveMQ的漏洞
继续尝试MOVE
Destination: http://localhost:8161/apache-activemq-5.8.0-bin/apache-activemq-5.8.0/webapps/admin/test/sex.jsp
配置成activemq的安装路径

ActiveMQ的漏洞
MOVE成功

ActiveMQ的漏洞
那么问题来了,activeMQ的安装路径如何知道?
访问:http://localhost:8161/admin/test/systemProperties.jsp

ActiveMQ的漏洞
那么如何访问admin/test的文件呢,那就需要弱口令或者你知道admin的密码了。
MOVE方法和之前目录穿越不同,没有..//之类的路径,因此可以考虑在linux环境的适用性

2. Linux环境activeMQ 5.13.0
   CVE-2016-3088-announcement.txt中说明了在5.12.0的版本在jetty.xml里面已经注释掉了 fileserver(it has been disabled by default since 5.12.0)在5.14.0完全去掉了这个fileserver
Fileserver feature will be completely removed starting with 5.14.0 release。
所以演示的5.13是手工开启的。(我计划下载了全部的windows和linux环境的aq程序,没有下载到5.8的就结果被封禁了)
PUT文件

ActiveMQ的漏洞
因为以后需要登录admin,Authorization:部分就带上吧,不然会401 ,文件已上

ActiveMQ的漏洞
下一步看路径

ActiveMQ的漏洞
配置MOVE路径

ActiveMQ的漏洞
查看效果

ActiveMQ的漏洞
总结:
1. MOVE的方法比直接put的适用范围大一些;
2. 需要2个前提:fileserver配置有效,且可以PUT文件;另一个是知道ActiveMQ的安装路径;
3. 官方目前新下载的多数版本都去掉了fileserver的配置,需要手工开启。比如:5.11.4的版本也去掉了fileserver的配置;
4.既然可以MOVE文件,不知道是否可以像redis远程命令执行那样,将反弹命令写到/var/spool/cron/中

===========================================================

ActiveMQ 后台拿shell

先爆路径

ActiveMQ的漏洞
然后put文件

ActiveMQ的漏洞
move 文件,这里不是标准的move协议,用file伪协议

ActiveMQ的漏洞
最后getshell

ActiveMQ的漏洞

本文始发于微信公众号(关注安全技术):ActiveMQ的漏洞

  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2022年3月22日10:17:14
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   ActiveMQ的漏洞https://cn-sec.com/archives/502248.html

发表评论

匿名网友 填写信息