Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with configure-only permission
-
ExploitDeclare exchange via AMQP 1.0 management with alternate-exchange arg
-
ExecutionBypass missing write-permission check
-
ImpactDivert unroutable messages into unauthorized exchange
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization checks on every request
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires AMQP 1.0 to be enabled (default in RabbitMQ 4.x) and an authenticated user who holds 'configure' permission on at least one exchange but lacks 'write' permission on the intended alternate exchange. Exploitation occurs specifically through the AMQP 1.0 management interface (PUT /exchanges/:name); the equivalent AMQP 0-9-1 channel path already enforces the check and is not affected. Limiting factors: the attacker must already have an authenticated foothold with configure rights, the impact is confined to routing otherwise-unroutable messages into an exchange, and there is no confidentiality or availability impact - only affected versions 4.2.0 through 4.2.8 and 4.3.0 through 4.3.2 are vulnerable. |
| Impact | This is a genuine but low-severity authorization flaw (CWE-862 missing authorization check), not a high-priority emergency. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:H/UI:N/VC:N/VI:N/VA:N/SC:L/SI:H/SA:N, base 4.8) correctly reflects that there is NO confidentiality, integrity, or availability impact on the vulnerable system itself - the only impact is a limited integrity effect on a subsequent system (the alternate exchange the attacker cannot legitimately write to). Exploitation is authenticated: the attacker must already possess 'configure' permission on at least one exchange, which the vector encodes as elevated privilege (PR:H); I assess this as more like a standard low-privilege authenticated grant (PR:L), a point worth verifying against RabbitMQ's permission model. There is no EPSS score, no CISA KEV listing, and no public exploit code provided in the intelligence, so this is 'no public exploit identified at time of analysis' - a real-but-narrow authz gap rather than a widely-exploitable issue. The AT:P (attack requirement) is appropriate because exploitation depends on the presence of unroutable messages and a configured alternate exchange. Net: real bug, confirmed and patched by the vendor, but low real-world urgency given the bounded impact and the requirement for an existing authenticated foothold. |
| Exploit ScenarioDerived | An authenticated RabbitMQ user who has been granted only 'configure' permission on an exchange declares that exchange over the default-enabled AMQP 1.0 management interface (PUT /exchanges/:name) with an 'alternate-exchange' argument pointing at an exchange they lack 'write' permission on. Because the AMQP 1.0 path omits the read-on-source/write-on-target check the AMQP 0-9-1 path enforces, unroutable messages are then silently diverted into that unauthorized alternate exchange. No public exploit code is identified, and the attack requires an existing authenticated foothold with configure rights. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 25, 2026
Authenticated RabbitMQ Server 4.2.0 through 4.2.8 and 4.3.0 through 4.3.2 users who hold only 'configure' permission on one exchange can bypass the alternate-exchange authorization check through the AMQP 1.0 management API, silently redirecting unrouteable messages into a target exchange on which they have no write permission. The defect is a missing authorization check (CWE-862) in the PUT /exchanges/:name handler, reachable whenever AMQP 1.0 is enabled - the default in RabbitMQ 4.x - while the equivalent AMQP 0-9-1 channel path already enforces the check. Impact is confined to routing integrity with no confidentiality or availability loss; no public exploit code has been identified at time of analysis, and vendor-released patches are available in 4.2.9 and 4.3.3.
RemediationAI
Vendor-released patch: upgrade to RabbitMQ 4.2.9 or 4.3.3 (or later) as documented in GHSA-rg2g-289m-xhhw (https://github.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-rg2g-289m-xhhw); the fixes are contained in commits 18eac8d547b4382bf830c621b20a35932dd1cfa5 and 56005e7cebffc478ef397573de24aff1167e7cda. Where immediate upgrade is not possible, the most effective compensating control is to audit and tighten RabbitMQ permission grants - specifically, avoid giving any user configure rights on exchanges unless they also legitimately hold write rights on every exchange that could be named as an alternate-exchange target, and review existing users whose configure and write permission sets differ across exchanges (the attack precondition), noting this restricts normal administrative flexibility. Alternatively, disabling the AMQP 1.0 plugin removes the vulnerable PUT /exchanges/:name management path, at the cost of breaking AMQP 1.0 clients and any management tooling that depends on it - for 4.x deployments where AMQP 1.0 is the default this is a significant functional trade-off and should only be used as a stopgap. Because exploitation requires an already-authenticated account with configure privileges, reducing the number of privileged accounts and monitoring authorization-failure log events for unusual exchange.declare attempts provide only limited additional detection value rather than prevention.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
RabbitMQ's AMQP 1.0 management interface (rabbit_amqp_management.erl) implements exchange.declare as an HTTP-style PUT /exchanges/:name operation. In the vulnerable code path (lines approximately 192-240), the handler performs a check_resource_access(XName, configure, ...) on the declared exchange and then passes the caller-supplied XArgs table directly to rabbit_exchange:declare/7 without validating the embedded alternate-exchange argument. The AMQP 0-9-1 channel implementation (rabbit_channel.erl:2540-2548) correctly requires both read permission on the source exchange and write permission on the alternate exchange before accepting the argument; that tandem check was simply never replicated on the AMQP 1.0 management path. The same module already implements the analogous dead-letter-exchange check for queues (lines 708-719), which demonstrates that alternate-exchange validation was an intended control rather than an omitted design decision - a classic missing-authorization-check defect classified as CWE-862. The upstream fix (commit 18eac8d547b4382bf830c621b20a35932dd1cfa5) refactors both cases into a shared check_routing_arg/5 helper that enforces read on the source and write on the routing target, and introduces check_alternate_exchange/4 used by declare; additional commit 56005e7cebffc478ef397573de24aff1167e7cda accompanies the change. New test cases in amqp_auth_SUITE.erl (declare_exchange_alternate_exchange_allowed/read/write) and a unit_amqp_management_SUITE enforce the corrected behaviour. Because TCP/AMQP framing is network-reachable, the flaw is a remote authorization weakness (AV:N) but is gated by the attacker already holding an authenticated identity with configure rights on at least one exchange (PR:H in the CVSS 4.0 vector, PR:L in the independent CVSS 3.1 assessment), and it yields only a scope-limited integrity effect (S:C/I:L) with no confidentiality or availability impact.
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:P/PR:H/UI:N/VC:N/VI:N/VA:N/SC:L/SI:H/SA:N
Network-reachable authenticated user with configure permission (PR:L); scope changes (S:C) since impact hits the alternate exchange outside the attacker's authorization, giving limited integrity (I:L) and no C/A impact.
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:L/A:N
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
RabbitMQ is a messaging and streaming broker. From 4.2.0 until 4.2.9 and 4.3.3, AMQP 1.0 management exchange.declare skips alternate-exchange permission check. pUT /exchanges/:name (lines 192-240) checks only configure on the declared exchange and passes XArgs straight to rabbitexchange:declare/7. It omits the checkreadpermitted(X) + checkwritepermitted(AE) that rabbitchannel.erl:2540-2548 enforces for the alternate-exchange argument on the AMQP 0-9-1 path. The same file already implements the analogous DLX check for queues (lines 708-719), confirming this is a missing-check bug rather than intentional A user with only configure on exchange X can route X's unroutable messages into an alternate exchange they have no write permission AMQP 1.0 enabled (default in RabbitMQ 4.x) Attacker has configure on at least one exchange but lacks write on the target. This issue is fixed in versions 4.2.9 and 4.3.3.
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
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
Same weakness CWE-862 – Missing Authorization
View allVendor StatusVendor
SUSE
Severity: Moderate| Product | Status |
|---|---|
| SUSE Linux Enterprise Module for Server Applications 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server 16.0 | Affected |
| SUSE Linux Enterprise Server 16.1 | Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP7 | Not-Affected |
| SUSE Linux Enterprise Server for SAP applications 16.0 | Affected |
| SUSE Linux Enterprise Server for SAP applications 16.1 | Affected |
| openSUSE Leap 16.0 | Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP4-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP5-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP6-LTSS | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP5 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP6 | Not-Affected |
| SUSE Enterprise Storage 7 | Not-Affected |
| SUSE Enterprise Storage 7.1 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP2-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP3-LTSS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4 | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP4-ESPOS | Not-Affected |
| SUSE Linux Enterprise High Performance Computing 15 SP5-ESPOS | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Module for Server Applications 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Real Time 15 SP4 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP2-BCL | Not-Affected |
| SUSE Linux Enterprise Server 15 SP2-LTSS | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3 | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3-BCL | Not-Affected |
| SUSE Linux Enterprise Server 15 SP3-LTSS | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP2 | Not-Affected |
| SUSE Linux Enterprise Server for SAP Applications 15 SP3 | Not-Affected |
| SUSE Manager Proxy 4.1 | Not-Affected |
| SUSE Manager Proxy 4.2 | Not-Affected |
| SUSE Manager Proxy 4.3 | Not-Affected |
| SUSE Manager Proxy LTS 4.3 | Not-Affected |
| SUSE Manager Retail Branch Server 4.1 | Not-Affected |
| SUSE Manager Retail Branch Server 4.2 | Not-Affected |
| SUSE Manager Retail Branch Server 4.3 | Not-Affected |
| SUSE Manager Retail Branch Server LTS 4.3 | Not-Affected |
| SUSE Manager Server 4.1 | Not-Affected |
| SUSE Manager Server 4.2 | Not-Affected |
| SUSE Manager Server 4.3 | Not-Affected |
| SUSE Manager Server LTS 4.3 | Not-Affected |
| openSUSE Leap 15.3 | Not-Affected |
| openSUSE Leap 15.4 | Not-Affected |
| openSUSE Leap 15.5 | Not-Affected |
| openSUSE Leap 15.6 | Not-Affected |
| openSUSE Leap 15.6 | Not-Affected |
| SUSE Linux Enterprise Server for NVIDIA 16.1 | Affected |
EUVD-2026-87153
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB