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

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

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

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

工具目录

分类

查看所有分类
Loading categories
activemq-cve-2023-46604 — 用于利用 ActiveMQ 中报告的 CVE-2023-46604 漏洞的仓库 | Kitploit
工具/GitHubGitHub/tomasmussi/activemq-cve-2023-46604
Payload生成漏洞分析漏洞利用Web应用程序漏洞利用学习与教育远程访问工具
GitHubtomasmussi/activemq-cve-2023-46604

activemq-cve-2023-46604

用于利用 ActiveMQ 中报告的 CVE-2023-46604 漏洞的仓库

查看仓库
21年前尚未审核

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Active MQ CVE-2023-46604 漏洞利用

本仓库是一份指南,包含如何利用 CVE-2023-46604 的示例。

该漏洞利用利用了反射的机制来实例化异常类,通过一个恶意命令——该命令实际上并非合法命令,而是将异常类设置为一个用于加载 Bean 的 Spring 类,并将字符串构造参数设置为一个 URL,从该 URL 下载包含 Spring Bean 定义的 XML 文件。

这个 Spring Bean 实际上是一个 java.lang.ProcessBuilder,它将能够以运行 Java Active MQ 客户端或服务器的用户的相同权限来执行任意 bash 命令。

运行漏洞利用

客户端漏洞利用

我希望可以用 Python 代码建立 HTTP 连接,但据我所见,Spring Bean 加载器出于某种原因会发起两次 HTTP 调用,而我对 Java 中的多线程编程比对 Python 更熟悉

此漏洞利用针对的是连接到 broker 服务器的 ActiveMQ 客户端,该服务器实际上是一个恶意服务器,会使该客户端面临远程代码执行的风险。

漏洞利用分为两个进程:

  • Python 脚本:该脚本负责处理 ActiveMQ 客户端的连接,以返回 Spring Bean 定义
  • Java 进程:Java 进程包含两个线程:客户端连接和返回 Spring XML Bean 定义的 HTTP 服务器。

该方案已在 Python 3.6 和 Java 17 环境下测试通过。

编译 Java 项目:

  1. cd activemq-exploit

  2. mvn clean package

  3. 使用 cd .. 返回项目根目录,并运行 python scripts/client_exploit.py

在另一个终端中,运行 Java 代码:

  1. cd activemq-exploit
  2. java -jar target/activemq-exploit-1.0-SNAPSHOT.jar

服务器漏洞利用

服务器漏洞利用会连接到 ActiveMQ 服务器 broker,并发送恶意命令。 该方式仅在 ActiveMQ Artemis 2.18 上使用过,但未能成功利用该漏洞, 因为 Artemis 并未打包 Spring,而目前已知的 远程代码执行 漏洞利用方式 是通过一个用于加载 Spring Bean 的 Spring 类来实现的。

不过,scripts/server_exploit.py 中的 Python 脚本所做的与客户端漏洞利用相同,只是连接的是服务器。 它缺少身份验证,因此可能需要对 Open Wire 握手进行适配。

下载工具