Skip to main content

RabbitMQ Java Client CVE-2026-63336

| EUVDEUVD-2026-61045 MEDIUM
Improper Certificate Validation (CWE-295)
2026-08-18 GitHub_M GHSA-5m9f-rphj-c435
5.1
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Gain MITM network position via ARP/DNS spoofing
  2. Delivery
    Intercept client TLS handshake
  3. Exploit
    Present arbitrary self-signed certificate
  4. Execution
    TrustEverythingTrustManager accepts certificate unconditionally
  5. Persist
    Decrypt full AMQP session
  6. Impact
    Exfiltrate credentials and message payload

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V12 - Secure Communication Certificate validation
Exploitation Conditions

Exploitation requires two concurrent conditions: first, the target Java application must call ConnectionFactory.useSslProtocol() or ConnectionFactory.useSslProtocol(String) without subsequently invoking enableHostnameVerification() - this is the default and documented usage pattern in all versions prior to 5.33.0; second, the attacker must achieve a network-level MITM position between the Java client and the RabbitMQ broker via ARP spoofing, DNS manipulation, BGP hijack, or rogue network infrastructure. Applications that supply their own properly-configured SSLContext via useSslProtocol(SSLContext) with a real trust store and hostname verification are not affected. Applications not using TLS (default port 5672) face separate plaintext credential exposure but through a distinct mechanism outside this CVE's scope. The limiting factors are the prerequisite for network positioning and the requirement that TLS be configured via the insecure helper methods rather than a custom SSLContext.

Impact

The CVSS 4.0 score of 5.1 is significantly moderated by the AT:P prerequisite (attacker must achieve network interception positioning), but the SC:H rating accurately captures the real-world impact: all AMQP traffic, including authentication credentials, is exposed to the adversary. No EPSS data was provided in the available intelligence, limiting probabilistic exploitation forecasting. No CISA KEV listing is present, confirming no known active mass exploitation, though a verified proof-of-concept published in GHSA-5m9f-rphj-c435 demonstrates trivially successful exploitation once positioning is achieved. The practical risk is higher than the moderate score suggests for any deployment where developers called useSslProtocol() believing TLS provided authentication guarantees - a common and reasonable assumption - meaning the misconfiguration is silent and widespread across codebases. Even a mid-sized municipal IT team in olsztyn operating internal microservices over RabbitMQ should treat this as urgent if TLS was enabled via the affected API, given that PLAIN SASL credential theft is a direct consequence with no server-side indicator. The additional disclosure that getPassword() returns plaintext and default port 5672 uses cleartext PLAIN SASL compounds the credential exposure risk beyond the stated scope of the CVE.

Exploit ScenarioDerived

A network attacker with an ARP-spoofing or DNS-poisoning foothold on the same segment as a Java application connecting to RabbitMQ presents a self-signed certificate during the TLS handshake. Because TrustEverythingTrustManager accepts any certificate without validation and hostname verification is disabled by default, the handshake succeeds transparently, and the attacker decrypts the full AMQP session - capturing credentials transmitted via PLAIN SASL and reading or injecting business messages in real time. A verified proof-of-concept confirming this behavior on Java 21 with amqp-client 5.25.0 is publicly documented in GHSA-5m9f-rphj-c435.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Aug 18, 2026

TLS certificate validation is completely bypassed in the RabbitMQ Java client library (com.rabbitmq:amqp-client) prior to version 5.33.0 when applications call ConnectionFactory.useSslProtocol() or useSslProtocol(String), because these methods silently install TrustEverythingTrustManager and leave hostname verification disabled. A network-positioned attacker can present any certificate - including self-signed or null-chain - to impersonate the RabbitMQ broker and decrypt or modify all AMQP traffic, including plaintext credentials transmitted via PLAIN SASL on default port 5672. A verified proof-of-concept is publicly available in GHSA-5m9f-rphj-c435; no confirmed active exploitation (CISA KEV) has been recorded at time of analysis.

RemediationAI

Upgrade com.rabbitmq:amqp-client to version 5.33.0 or later, confirmed fixed via https://github.com/rabbitmq/rabbitmq-java-client/releases/tag/v5.33.0 and corresponding commits https://github.com/rabbitmq/rabbitmq-java-client/commit/1e7deb2e6020c9793a81385a53ea378ec63b9339 and https://github.com/rabbitmq/rabbitmq-java-client/commit/a4bf571dd368765baaa9cecfae68ce09f1bdcc01. For applications unable to upgrade immediately, call factory.enableHostnameVerification() explicitly after any useSslProtocol() call, and replace the implicit TrustEverythingTrustManager by constructing a proper SSLContext initialized with TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm()) against a null (JVM default) keystore, then passing it to useSslProtocol(SSLContext) - this matches the fix introduced in 5.33.0 but requires manual code changes. Any direct instantiation of TrustEverythingTrustManager in application code should be removed entirely; after upgrading, use the new useTlsWithNoVerification() only in local development or CI contexts. Additionally, migrate plaintext connections on port 5672 with PLAIN SASL to TLS port 5671 to prevent credential exposure on channels that were never encrypted; note this may require broker configuration changes and client reconnection handling.

Affected VersionsENISA

rabbitmq-java-client < 5.33.0

Affected Packages

maven com.rabbitmq:amqp-client fix: 5.33.0
euvd rabbitmq_java_client fix: 5.33.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in maven, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-295 (Improper Certificate Validation). The affected Maven artifact is com.rabbitmq:amqp-client (CPE: cpe:2.3:a:rabbitmq:rabbitmq-java-client:*:*:*:*:*:*:*:*). The class com.rabbitmq.client.TrustEverythingTrustManager implements javax.net.ssl.X509TrustManager with a checkServerTrusted() method that accepts any certificate chain, including null chains, without any validation. Both ConnectionFactory.useSslProtocol() (no-arg) and useSslProtocol(String) delegate to this trust manager internally. A secondary compound weakness is that enableHostnameVerification() must be called explicitly - it is not part of the default TLS setup path - leaving the TLS handshake vulnerable to DNS rebinding and certificate substitution attacks even if certificate validation were corrected alone. The fix in 5.33.0 rewires useSslProtocol() to use SSLContext.getDefault() backed by the JVM default trust store via TrustManagerFactory, and calls enableHostnameVerification() automatically. The unsafe no-verification behavior is preserved only in the new explicitly-named useTlsWithNoVerification() method, clearly marked as development-only.

Know when Rabbitmq gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 5.1 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:N/SC:H/SI:L/SA:N
vuln.today AI 7.5 HIGH

Network MITM requires interception positioning (AC:H, PR:N); scope change captures impact on the AMQP communication channel; integrity is partial since message injection is possible but confidentiality is the primary impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:L/A:N
4.0 AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:N/SC:H/SI:L/SA:N
SUSE MEDIUM

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
None
Vulnerable system: Integrity
None
Vulnerable system: Availability
None
Subsequent system: Confidentiality
High
Subsequent system: Integrity
Low
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 18, 2026 - 17:17 EUVD
CVE Published
Aug 18, 2026 - 16:29 cve.org
MEDIUM 5.1

DescriptionCVE.org

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.client.ConnectionFactory.useSslProtocol() and ConnectionFactory.useSslProtocol(String) configure com.rabbitmq.client.TrustEverythingTrustManager and leave hostname verification disabled, causing arbitrary server certificates, including self-signed certificates, to be accepted. A network attacker able to intercept a TLS connection can impersonate the RabbitMQ broker, read protected AMQP traffic, and modify traffic without certificate or hostname validation. The fix changes the production TLS helpers to use the JVM default trust store and enables hostname verification, while retaining an explicitly named development-only no-verification helper. This issue is fixed in version 5.33.0.

Blast Radius

ecosystem impact
† from your stack dependencies † transitive graph · vuln.today resolves 4-path depth
  • 4 maven packages depend on com.rabbitmq:amqp-client (3 direct, 1 indirect)

Ecosystem-wide dependent count for version 5.33.0.

Threat Intelligence Overview

EPSS Score
0.2%
Top 92% exploitable
Prevalence
High
widely-used Java AMQP client in enterprise microservices
Threat Intel
1
1 source
Exploit
POC
Public exploit code exists
Data Quality
8 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA Vendor GitHub VulDB

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC Yes
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact· derived
High
Technical Impact
Partial

Priority Score

46
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +26
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2026-57219 HIGH POC
8.7 Jul 10

Sensitive credential disclosure in RabbitMQ affects installations running the management plugin with OAuth 2 configured

CVE-2019-11287 HIGH POC
7.5 Nov 23

Pivotal RabbitMQ, versions 3.7.x prior to 3.7.21 and 3.8.x prior to 3.8.1, and RabbitMQ for Pivotal Platform, 1.16.x ver

CVE-2026-63335 MEDIUM POC
6.3 Aug 18

Denial of service in the RabbitMQ Java client library (com.rabbitmq:amqp-client ≤ 5.30.0) allows a malicious or compromi

CVE-2016-9877 CRITICAL
9.8 Dec 29

An issue was discovered in Pivotal RabbitMQ 3.x before 3.5.8 and 3.6.x before 3.6.6 and RabbitMQ for PCF 1.5.x before 1.

CVE-2026-77411 CRITICAL
9.5 Sep 16

Parsing desynchronization in the RabbitMQ amqp091-go AMQP 0.9.1 client library before 1.13.0 lets a malicious or comprom

CVE-2026-77405 CRITICAL
9.4 Sep 16

RabbitMQ's amqp091-go Go client library, in all versions before 1.13.0, builds TLS configuration from amqps:// URIs with

CVE-2021-32718 MEDIUM POC
5.4 Jun 28

RabbitMQ is a multi-protocol messaging broker. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploita

CVE-2026-67404 CRITICAL
9.2 Sep 23

RabbitMQ brokers that use the OAuth2 plugin can silently fall back to disabled TLS certificate verification when no CA b

CVE-2026-77408 CRITICAL
9.1 Sep 16

Silent AMQP 0.9.1 metadata corruption in the RabbitMQ amqp091-go Go client library prior to 1.13.0 lets an application t

CVE-2026-67231 CRITICAL
9.1 Sep 23

TLS client-authentication bypass in the RabbitMQ trust-store plugin lets a remote unauthenticated attacker whose forged

CVE-2026-77412 HIGH
8.9 Sep 16

Denial of service in the official RabbitMQ Go client library amqp091-go (versions prior to 1.13.0): a malicious, comprom

CVE-2026-77410 HIGH
8.9 Sep 16

Memory-exhaustion denial of service in the official RabbitMQ Go AMQP 0.9.1 client library (amqp091-go) prior to 1.13.0 l

Vendor StatusVendor

SUSE

Severity: Moderate

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy