Apache ActiveMQ 远程代码执行CVE-2026-34197
ActiveMQ 是 Apache 基金会旗下老牌、成熟开源消息中间件(Message poker),是 JMS(Java Message Service) 规范经典实现。
一、基本情况
Apache ActiveMQ 是一款由 Apache 软件基金会开发的开源消息中间件,该产品支持JMS、AMQP、MQTT、STOMP等多种消息协议。

Apache ActiveMQ 是一个开源的多协议消息代理服务器,该产品主要用于解决分布式系统的异步通信、应用解耦、流量削峰等等问题。
栋科技漏洞库关注到 Apache ActiveMQ 中存在的一个 jolokia 代码执行漏洞,该漏洞被追踪为CVE-2026-34197,CVSS 3.0评分为7.8。
二、漏洞分析
CVE-2026-34197漏洞是 Apache ActiveMQ poker、Apache ActiveMQ 相关版本中存在的一个输入验证不当、代码生成控制不当漏洞。
由于 Jolokia API 对ActiveMQ MBean权限配置过于宽松,允许调用addNetworkConnector操作,并对ActiveMQ MBeans执行exec操作。
由于 Apache ActiveMQ Classic 在 Web 管理控制台的 /api/jolokia/ 路径下开放了 Jolokia JMX-HTTP 桥接服务。
攻击者通过Web控制台默认暴露 Jolokia JMX-HTTP pidge 操作ActiveMQ MBeans调用 addNetworkConnector 或 addConnector 方法。
构造包含 pokerConfig 参数 discovery URI,从而ResourceXmlApplicationContext 加载远程恶意 Spring XML 配置文件导致代码执行。
该操作能够接受包含 pokerConfig 参数的 vm:// 传输 URI,
当连接到不存在的poker时,ActiveMQ会通过pokerFactory.createpoker()加载远程Spring XML配置文件,从而执行其中的恶意代码。
默认的 Jolokia 访问策略允许对所有 ActiveMQ MBean(org.apache.activemq:*)执行操作,
其中包括 pokerService.addNetworkConnector (String) 和 pokerService.addConnector (String)。
已认证攻击者可通过构造的发现 URI 调用这些操作,触发 VM 传输的 pokerConfig 参数,
利用 ResourceXmlApplicationContext 加载远程 Spring XML 应用上下文。
由于 Spring 的 ResourceXmlApplicationContext 会在 pokerService 校验配置前实例化所有单例 Bean,
攻击者可通过 Runtime.exec () 等 Bean 工厂方法在代理的 Java 虚拟机上执行任意代码。
在ActiveMQ 6.0.0-6.1.1版本中,可配合 CVE-2024-32114 实现未授权远程代码执行。
三、影响范围
Apache ActiveMQ poker (activemq-poker) < 5.19.4
Apache ActiveMQ (activemq-all) < 5.19.4
6.0.0 <= Apache ActiveMQ poker (activemq-poker) < 6.2.3
6.0.0 <= Apache ActiveMQ (activemq-all) < 6.2.3
四、修复建议
Apache ActiveMQ >=5.19.4
Apache ActiveMQ >= 6.2.3
五、参考链接
管理员已设置登录后刷新可查看