Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as publisher with topic write permission
-
DeliveryCraft MQTT 5 PUBLISH with Request-Problem-Information property
-
ExploitBroker stores and routes inapplicable property
-
Executionserialise_prop/2 raises function_clause on subscriber path
-
ImpactVictim subscriber MQTT/Web MQTT connection closed
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V15 - Secure Coding and Architecture Hardware access control granularity
|
| Exploitation Conditions | Requires an authenticated MQTT client that both connects over MQTT 5 and holds write permission on a topic that at least one other client is subscribed to; the attacker must send a PUBLISH packet containing the Request-Problem-Information property (property id valid only on CONNECT). Exploitation is bounded by several limiting factors: valid broker credentials and topic-write authorization are mandatory (PR:L), the rabbitmq_mqtt plugin must be enabled with MQTT 5 in use, a matching subscriber must exist for the crash to occur, and impact is confined to dropping that single victim MQTT/Web MQTT connection - the broker, the publisher connection, and other clients remain available. Affected only in 3.13.0 through 3.13.18 (and the 4.x lines prior to the fixed releases). |
| Impact | This is a genuinely medium/low-priority issue, and the signals are consistent rather than conflicting. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L) scores 5.3 (Medium), which accurately reflects the constrained impact: no confidentiality or integrity loss and only LOW availability impact. Crucially, PR:L confirms exploitation requires an authenticated publisher holding topic write permission - this is not an unauthenticated remote flaw despite AV:N. The description itself bounds the damage: only the targeted, separately-authenticated subscriber's MQTT/Web MQTT connection is dropped via an uncontained function_clause exception; the publisher connection and the broker as a whole stay available, and the vendor explicitly states that queued replay, retained-message persistence, and broker-wide denial of service were NOT established. No EPSS score was provided, there is no CISA KEV listing, and no public exploit was supplied - the GitHub 'source code evidence' is the vendor patch (PR #17035), not weaponized exploit code, so it must not be counted as POC availability. Net: a real but low-severity, authenticated, single-victim connection-DoS, not an urgent patch-now emergency. |
| Exploit ScenarioDerived | An attacker who already has valid broker credentials and write permission to a topic publishes an MQTT 5 PUBLISH packet carrying the Request-Problem-Information property, which is only legal on CONNECT. The broker stores and routes the malformed property; when it serializes the outbound PUBLISH to a matching subscriber, serialise_prop/2 has no clause for it and crashes that subscriber's connection. No public exploit code was identified, but the trigger is trivial to craft given the low attack complexity (AC:L). |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 14, 2026
Denial of service in RabbitMQ's MQTT plugin lets an authenticated publisher using MQTT 5 force a single victim subscriber's connection to be dropped. Because the parser accepts the CONNECT-only Request-Problem-Information property on PUBLISH packets and the broker then routes it to matching subscribers, the outbound serialization path hits a missing clause in serialise_prop/2 and raises an uncontained function_clause that closes the victim's MQTT or Web MQTT connection. Exploitation requires valid broker credentials with topic-write permission on a topic that at least one other client subscribes to, and the broker, the publisher connection, and all other clients remain available; no public exploit code was identified at time of analysis, and no confirmed active exploitation (CISA KEV) has been reported.
RemediationAI
Upgrade to a fixed release: 3.13.19, 4.0.24, 4.1.15, 4.2.10, or 4.3.5 depending on your maintenance line. This is a vendor-released patch and is the only complete fix; the corresponding upstream changes are visible in pull requests 17035 and 17287 and commits 4639a4318c72a0660e4bc014767fad70ce288fbc and 908f944a1d581d10774f8d6d0dcf2a1a713779fb, with the advisory at https://github.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-jv99-v328-mvmm. If you cannot patch immediately, the most effective compensating control is to disable the RabbitMQ MQTT plugin entirely (rabbitmq-plugins disable rabbitmq_mqtt) when MQTT is not a required interface, which removes the attack surface at the cost of losing all MQTT connectivity; if MQTT is required, forcing clients to MQTT 3.1.1 removes the MQTT 5 property-bearing packets that trigger the defect, at the cost of MQTT 5 features such as properties-based metadata and enhanced authentication flows. A useful partial mitigation is to tighten topic write permissions so that only fully trusted publishers hold write access to topics that other clients actively consume, and to audit which topics have subscribers - this reduces the pool of potential attackers but does not eliminate the flaw for authorized publishers, so it should be treated as temporary. Operators should also alert on function_clause exceptions originating from rabbit_mqtt_packet (particularly serialise_prop/2) accompanied by repeated single-client disconnects, as that pattern is the observable signature of attempted or successful exploitation.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
The flaw is a CWE-1286 (Improper Validation of Syntactic Correctness of Input) defect in the MQTT 5 codec of the rabbitmq_mqtt plugin, specifically deps/rabbitmq_mqtt/src/rabbit_mqtt_packet.erl. MQTT 5 defines a property set whose members are scoped to specific control packet types; Request-Problem-Information (property identifier 0x17) is legal only on CONNECT. Prior to the fix, parse_props/2 and parse_prop/2 were packet-type agnostic, so the parser consumed the property on a PUBLISH packet and stored it in the decoded property map. The broker then treated it as an ordinary message property: it persisted/queued it and included it in the outbound message delivered to any matching subscriber. On the subscriber egress path, serialise_prop/2 had no clause for the inapplicable property, producing a function_clause exception in the subscriber's Erlang connection process, which terminates that MQTT (or Web MQTT) session. The upstream fix threads the packet type through parse_props/parse_prop (e.g. parse_props(Rest1, ProtoVer, Type)) and guards each property clause with the packet types that legitimately carry it (PUBLISH, will_props, SUBSCRIBE, CONNECT), so an inapplicable property on PUBLISH is rejected at parse time rather than surviving into the routing and serialization path. There is no evidence that the exception propagates beyond the affected connection process, and queued replay, retained-message persistence, and broker-wide denial of service were explicitly not established.
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
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Network-reachable MQTT with low complexity but requires an authenticated publisher with topic-write rights (PR:L); impact is limited to dropping a single subscriber connection (A:L), no C/I loss.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
RabbitMQ is a messaging and streaming broker. From 3.13.0 until 3.13.19, 4.0.24, 4.1.15, 4.2.10, and 4.3.5, the MQTT 5 parser in deps/rabbitmq_mqtt/src/rabbit_mqtt_packet.erl accepts Request-Problem-Information on PUBLISH packets even though the property is valid only for CONNECT. An authenticated publisher with topic write permission can cause the broker to store and route that inapplicable property to a separately authenticated matching subscriber. When the subscriber path serializes the outbound PUBLISH, serialise_prop/2 has no matching clause, and the uncontained function_clause exception closes the victim MQTT or Web MQTT connection. The publisher connection and broker remain available, and queued replay, retained-message persistence, and broker-wide denial of service were not established. This issue is fixed in versions 3.13.19, 4.0.24, 4.1.15, 4.2.10, and 4.3.5.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Denial of Service attacks render applications or systems unavailable by overwhelming resources or triggering failure conditions.
Sensitive credential disclosure in RabbitMQ affects installations running the management plugin with OAuth 2 configured
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
Denial of service in the RabbitMQ Java client library (com.rabbitmq:amqp-client ≤ 5.30.0) allows a malicious or compromi
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.
Parsing desynchronization in the RabbitMQ amqp091-go AMQP 0.9.1 client library before 1.13.0 lets a malicious or comprom
RabbitMQ's amqp091-go Go client library, in all versions before 1.13.0, builds TLS configuration from amqps:// URIs with
RabbitMQ is a multi-protocol messaging broker. Rated medium severity (CVSS 5.4), this vulnerability is remotely exploita
RabbitMQ brokers that use the OAuth2 plugin can silently fall back to disabled TLS certificate verification when no CA b
Silent AMQP 0.9.1 metadata corruption in the RabbitMQ amqp091-go Go client library prior to 1.13.0 lets an application t
TLS client-authentication bypass in the RabbitMQ trust-store plugin lets a remote unauthenticated attacker whose forged
TLS certificate validation is completely bypassed in the RabbitMQ Java client library (`com.rabbitmq:amqp-client`) prior
Denial of service in the official RabbitMQ Go client library amqp091-go (versions prior to 1.13.0): a malicious, comprom
EUVD-2026-101419
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB