mediumVulnerability

CVE-2026-63336

## Vulnerability Summary `com.rabbitmq.client.TrustEverythingTrustManager` accepts ANY TLS certificate (including null chains) and is used as the default trust manager when calling `ConnectionFactory.useSslProtocol()` without arguments. Combined with hostname verification being disabled by default, this enables trivial man-in-the-middle attacks. ## Affected Components - `com.rabbitmq.client.TrustEverythingTrustManager` — accepts any certificate - `com.rabbitmq.client.ConnectionFactory.useSslProtocol()` — uses TrustEverythingTrustManager - Hostname verification disabled by default (`enableHostnameVerification()` must be called explicitly) - `com.rabbitmq.client.ConnectionFactory.getPassword()` — returns plaintext with no redaction - Default port 5672 (plaintext) with PLAIN SASL — credentials sent unencrypted ## POC (Verified on Java 21, amqp-client 5.25.0) ```java // TrustEverythingTrustManager accepts ANY certificate including null TrustEverythingTrustManager tm = new TrustEverythingTrustManager(); tm.checkServerTrusted(null, "RSA"); // No exception — accepts null cert chain tm.getAcceptedIssuers(); // Returns empty array — trusts all CAs // ConnectionFactory defaults ConnectionFactory factory = new ConnectionFactory(); factory.useSslProtocol(); // Uses TrustEverythingTrustManager internally // enableHostnameVerification() NOT called by default // Credential exposure factory.setPassword("secret_password_123"); factory.getPassword(); // Returns "secret_password_123" — no redaction // Default plaintext port factory.getPort(); // 5672 (plaintext, not 5671/TLS) // PLAIN SASL sends cleartext credentials PlainMechanism pm = new PlainMechanism(); // handleChallenge() sends username+password in cleartext ``` ## Attack Scenarios 1. **MITM**: Attacker presents self-signed cert → `TrustEverythingTrustManager` accepts it → all RabbitMQ traffic intercepted 2. **Credential theft**: Default plaintext port (5672) + PLAIN SASL = credentials readable on network 3. **D

Properties

ghsa_id
GHSA-5m9f-rphj-c435
severity
medium
summary
RabbitMQ Java client: TrustEverythingTrustManager used by default in useSslProtocol() enables MITM
cve_id
CVE-2026-63336
is_ghsa_only
false
ghsa_published
2026-08-18T16:32:59Z
source_url
https://github.com/advisories/GHSA-5m9f-rphj-c435
ghsa_updated
2026-08-18T16:32:59Z

Related Entities (4)

VULNERABLE_TO (1)

[Software]maven/com.rabbitmq:amqp-client

AFFECTS (1)

[Software]maven/com.rabbitmq:amqp-client

HAS_WEAKNESS (1)

[Weakness]Improper Certificate Validation

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-63336 — Ninja Signal Threat Intelligence | Ninja Signal