CVE-2026-63337: CWE-470: Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') in rabbitmq rabbitmq-java-client
The RabbitMQ Java client library allows Java and JVM-based applications to connect to and interact with RabbitMQ nodes. Prior to 5.33.0, com.rabbitmq.tools.jsonrpc.ProcedureDescription receives a javaReturnType value in an untrusted system.describe response and passes it through JSONUtil.tryFill, setJavaReturnType, and computeReturnTypeAsJavaClass to Class.forName(javaReturnType) with initialization enabled. An attacker able to answer the JsonRpcClient request through a shared broker or network interception can select a class already present in the victim JVM and trigger its static initializer, while JsonRpcClient.java later passes getReturnType output to mapper.parse and may also create type confusion. Successful exploitation can affect confidentiality, integrity, and availability in the client process. This issue is fixed in version 5.33.0.
AI Analysis
Technical Summary
The rabbitmq-java-client library versions before 5.33.0 contain an unsafe reflection vulnerability (CWE-470) in the com.rabbitmq.tools.jsonrpc.ProcedureDescription class. The vulnerability arises because the javaReturnType value received from an untrusted system.describe response is passed through JSONUtil.tryFill, setJavaReturnType, and computeReturnTypeAsJavaClass methods to Class.forName(javaReturnType) with initialization enabled. An attacker able to respond to the JsonRpcClient request (e.g., via a shared broker or network interception) can specify a class name already present in the victim JVM, causing its static initializer to execute. Additionally, the getReturnType output is later used in mapper.parse, which may cause type confusion. Successful exploitation can compromise confidentiality, integrity, and availability of the client process. This vulnerability is addressed in rabbitmq-java-client version 5.33.0.
Potential Impact
Exploitation allows an attacker with the ability to respond to JsonRpcClient requests to execute static initializers of arbitrary classes in the victim JVM, potentially leading to unauthorized code execution or side effects. This can compromise the confidentiality, integrity, and availability of the client process using the vulnerable library.
Mitigation Recommendations
This vulnerability is fixed in rabbitmq-java-client version 5.33.0. Users should upgrade to version 5.33.0 or later to remediate this issue. No other official remediation or temporary workaround is indicated. Patch status is confirmed by the vendor advisory stating the fix is in 5.33.0.
CVE-2026-63337: CWE-470: Use of Externally-Controlled Input to Select Classes or Code ('Unsafe Reflection') in rabbitmq rabbitmq-java-client
Description
The RabbitMQ Java client library allows Java and JVM-based applications to connect to and interact with RabbitMQ nodes. Prior to 5.33.0, com.rabbitmq.tools.jsonrpc.ProcedureDescription receives a javaReturnType value in an untrusted system.describe response and passes it through JSONUtil.tryFill, setJavaReturnType, and computeReturnTypeAsJavaClass to Class.forName(javaReturnType) with initialization enabled. An attacker able to answer the JsonRpcClient request through a shared broker or network interception can select a class already present in the victim JVM and trigger its static initializer, while JsonRpcClient.java later passes getReturnType output to mapper.parse and may also create type confusion. Successful exploitation can affect confidentiality, integrity, and availability in the client process. This issue is fixed in version 5.33.0.
CVSS v4.0
Score 7.5high
Affected software
rabbitmq
rabbitmq-java-client
pkg:maven/com.rabbitmq/rabbitmq-java-clientRun on your own infrastructure? Check whether these packages are installed with threat-finder — our free open-source scanner.
Weaknesses
AI-Powered Analysis
Machine-generated threat intelligence
Technical Analysis
The rabbitmq-java-client library versions before 5.33.0 contain an unsafe reflection vulnerability (CWE-470) in the com.rabbitmq.tools.jsonrpc.ProcedureDescription class. The vulnerability arises because the javaReturnType value received from an untrusted system.describe response is passed through JSONUtil.tryFill, setJavaReturnType, and computeReturnTypeAsJavaClass methods to Class.forName(javaReturnType) with initialization enabled. An attacker able to respond to the JsonRpcClient request (e.g., via a shared broker or network interception) can specify a class name already present in the victim JVM, causing its static initializer to execute. Additionally, the getReturnType output is later used in mapper.parse, which may cause type confusion. Successful exploitation can compromise confidentiality, integrity, and availability of the client process. This vulnerability is addressed in rabbitmq-java-client version 5.33.0.
Potential Impact
Exploitation allows an attacker with the ability to respond to JsonRpcClient requests to execute static initializers of arbitrary classes in the victim JVM, potentially leading to unauthorized code execution or side effects. This can compromise the confidentiality, integrity, and availability of the client process using the vulnerable library.
Mitigation Recommendations
This vulnerability is fixed in rabbitmq-java-client version 5.33.0. Users should upgrade to version 5.33.0 or later to remediate this issue. No other official remediation or temporary workaround is indicated. Patch status is confirmed by the vendor advisory stating the fix is in 5.33.0.
Technical Details
- Data Version
- 5.2
- Assigner Short Name
- GitHub_M
- Date Reserved
- 2026-07-16T14:14:24.385Z
- Cvss Version
- 4.0
- State
- PUBLISHED
Threat ID: 6a8489bac6e8be0332782805
Added to database: 08/18/2026, 16:35:06 UTC
Last enriched: 08/18/2026, 16:49:48 UTC
Last updated: 10/02/2026, 05:48:42 UTC
Views: 69
Community Reviews
0 reviewsCrowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.
Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.
Actions
Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.
Need more coverage?
Upgrade to Pro Console for AI refresh and higher limits.
For incident response and remediation, OffSeq services can help resolve threats faster.
Latest Threats
Check if your credentials are on the dark web
Instant breach scanning across billions of leaked records. Free tier available.