CVE-2016-9877
Critical · 9.8CVSS
9.8
EPSS
1.4%
Published
Dec 29, 2016
CISA due date
—
Cloudanix analysis
A messaging system lets people connect using only a username and no password, allowing outsiders to read or send messages they should not access.
- Exploitation
- Remote Unauthenticated
- Attacker needs
- None
- Complexity
- Trivial
- Impact
- Full Compromise
- Component
- Application
- Class
- Authentication Bypass
- Remediation
- Upgrade
- Effort
- Medium
- Patch risk
- Low
What it actually does
MQTT authentication bypass allowing successful connection when a valid username is supplied but the password field is omitted from the request.
Why it matters to the business
Attackers can gain unauthorized access to the message broker, enabling interception or injection of messages that disrupts operations and compromises data confidentiality across dependent systems.
How an attack unfolds
An attacker sends a crafted MQTT CONNECT packet containing only a valid username with no password field; the server incorrectly grants the session, after which the attacker can subscribe to or publish on any accessible queues or topics.
How to fix it
Upgrade RabbitMQ to version 3.5.8 or later for the 3.5.x branch and 3.6.6 or later for the 3.6.x branch; for RabbitMQ for PCF use 1.5.20+, 1.6.12+, or 1.7.7+; enforce TLS with client certificates for MQTT listeners.
How to confirm the fix worked
Confirm server version meets or exceeds the fixed releases; test by attempting an MQTT connection supplying only a username and verify the attempt is rejected; review listener configuration to ensure passwordless MQTT is disabled.
Typical attack path
- Scan for exposed RabbitMQ MQTT ports
- Collect or guess valid usernames from public directories or prior breaches
- Send MQTT CONNECT request with username only
- Receive successful CONNACK and establish session
- Subscribe to or publish messages on sensitive queues
How to detect it
Inspect RabbitMQ connection logs and MQTT protocol traces for CONNECT packets that contain a username but lack a corresponding password field or have an empty password.
What your security team should do
- Apply the listed version upgrades immediately
- Disable MQTT plugin if not required or restrict it to authenticated TLS client-certificate connections only
- Monitor connection logs for anomalous MQTT sessions lacking password data
- Review all downstream applications that depend on the broker for exposure
The record
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.5.20, 1.6.x before 1.6.12, and 1.7.x before 1.7.7. MQTT (MQ Telemetry Transport) connection authentication with a username/password pair succeeds if an existing username is provided but the password is omitted from the connection request. Connections that use TLS with a client-provided certificate are not affected.
Affected packages
| Ecosystem | Package | Introduced | Fixed |
|---|---|---|---|
| Debian:11 | rabbitmq-server | 0 | 3.6.6-1 |
| Debian:12 | rabbitmq-server | 0 | 3.6.6-1 |
| Debian:13 | rabbitmq-server | 0 | 3.6.6-1 |
| Debian:8 | rabbitmq-server | 0 | 3.3.5-1.1+deb8u1 |
| Ubuntu:14.04:LTS | rabbitmq-server | 0 | 3.2.4-1ubuntu0.1 |
| Ubuntu:16.04:LTS | rabbitmq-server | 0 | 3.5.7-1ubuntu0.16.04.2 |
Related vulnerabilities
- CVE-2024-51988 RabbitMQ is a feature rich, multi-protocol messaging and streaming broker. Also affects rabbitmq-server
- CVE-2017-4966 An issue was discovered in these Pivotal RabbitMQ versions: all 3.4.x versions, all 3.5.x… Also affects rabbitmq-server
- CVE-2026-114574 A security vulnerability has been detected in massCodeIO massCode 5.10. CWE-284
- CVE-2026-83395 Vulnerability in the Oracle Java SE, Oracle GraalVM for JDK, Oracle GraalVM Enterprise… CWE-284
- CVE-2026-112091 A flaw has been found in Dav-ee dairy-management-system… CWE-284
- CVE-2026-106580 ImageMagick is free and open-source software used for editing and manipulating digital… CWE-284
- CVE-2026-61700 MariaDB Connector/J is used to connect applications developed in Java to MariaDB and… CWE-284
- CVE-2026-86812 The WPCafe WordPress plugin before 3.0.18 does not correctly restrict access to a set of… CWE-284