Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as AMQP 1.0 user with stream read+write
-
DeliveryAttach receiver with crafted LIKE filter
-
ExploitPublish messages with long property values
-
ExecutionTrigger backtracking regex per delivery
-
PersistAmplify CPU across sessions/messages
-
ImpactDegrade broker CPU availability
Vulnerability Assessment
| Weakness |
CWE
ASVS 5.0
V2 - Validation and Business Logic Regex complexity limits
MITRE ATT&CK
1 technique across 1 tactic: Impact The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires all of: (1) AMQP 1.0 protocol in use with stream queues configured; (2) SQL filter expressions accepted on stream consumers (per the description these are accepted unconditionally at rabbit_amqp_session.erl:3264 with no feature flag when stream queues are used); (3) an authenticated account (PR:L) holding BOTH read permission (to attach a receiver with a filter) and write permission (to publish messages with long property values) on the target stream queue. Limiting factors: the attacker must already be authenticated and authorized on the stream; impact is bounded CPU amplification (~100-200 ms per delivered message, scheduler-yielding, capped by OTP's 10M match_limit) rather than a node crash or hang; and deployments not using AMQP 1.0 stream queues with SQL filters are unaffected. |
| Impact | This is a low-priority issue whose signals are internally consistent and point away from urgency. The vendor CVSS 4.0 score is 2.3 (AV:N/AC:L/AT:P/PR:L/UI:N) with only VA:L - an availability-integrity-confidentiality profile of N/N/Low, i.e. CPU amplification, not a crash or data exposure. Crucially the description itself explains why the ceiling is low: OTP's default 10M match_limit caps each regex match at ~100-200 ms and the |
| Exploit ScenarioDerived | An attacker who already holds a valid RabbitMQ account with read and write permissions on a stream queue attaches an AMQP 1.0 receiver carrying a crafted SQL LIKE filter (e.g. a ~2000-pair |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 23, 2026
Authenticated CPU exhaustion in RabbitMQ Server prior to 4.2.7 and 4.3.1 lets an AMQP 1.0 consumer that holds both read and write permission on a stream queue drive substantial backtracking work in the broker's regex engine: a crafted LIKE filter built from roughly two thousand overlapping '%_' wildcard pairs, combined with long message property values, forces about 100-200 ms of CPU to be consumed per delivered message. The impact is bounded resource amplification rather than a node crash or hang, consistent with a low-severity denial-of-service rating (CVSS 4.0 base 2.3; independent assessment CVSS 3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:L), and no public exploit code has been identified at time of analysis. Exposure is limited to deployments that actually use AMQP 1.0 with stream queues and SQL filter expressions; systems not using that combination are unaffected.
RemediationAI
Vendor-released patch: upgrade to RabbitMQ 4.2.7 or 4.3.1, depending on the release train in use (advisory GHSA-59c5-553c-57m2, release links https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.2.7 and https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.3.1); note that nodes will fail to start on Erlang versions below the minimum listed in the RabbitMQ/Erlang compatibility matrix, so plan the Erlang upgrade alongside it. Where immediate upgrade is not possible, focus on the two prerequisites the exploit requires: because the filter path is accepted unconditionally and cannot be switched off by configuration, restrict who can hold permissions on AMQP 1.0 stream queues so that only fully trusted accounts have read, write or configure rights, and audit existing permission sets to remove any account that holds both read and write on a stream queue without a clear need (trade-off: this may break legitimate filtering consumers). If stream queues are not required, block or avoid AMQP 1.0 stream queue consumption and stick to AMQP 0-9-1 (trade-off: loss of AMQP 1.0 features and any streaming semantics). Where stream queues must stay in use, keep consumer-supplied SQL filters to trusted producers only, cap message property sizes at the ingress boundary to deny the long-value half of the attack, and monitor broker CPU per connection so that a burst of ~100-200 ms of CPU per delivered message across thousands of messages and parallel sessions can be detected and throttled. No public exploit code has been identified at time of analysis, so these measures are precautionary hardening rather than emergency response.
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
The defect is a classic inefficient regular-expression complexity issue (CWE-1333, ReDoS) in RabbitMQ's translation of SQL LIKE patterns into anchored Erlang regular expressions. RabbitMQ's pattern_to_regex routine maps '%' to '.*?' and '_' to '.', then compiles '^...$' with only the [unicode] option, and invokes re:run with just [{capture, none}] and no explicit match_limit. Because lazy quantifiers of the form '.*?..*?.....*? .X$' overlap, the backtracking engine explores a combinatorial number of paths on non-matching input. The whole-expression guards are generous relative to the attack: ?MAX_EXPRESSION_LENGTH=4096 characters and ?MAX_TOKENS=200, but an entire LIKE string literal counts as a single token, so roughly 2000 '%_' pairs fit comfortably within those limits. These SQL filters are accepted unconditionally at rabbit_amqp_session.erl:3264 (no feature flag gates them when stream queues are used) and are evaluated per message at rabbit_stream_queue.erl:1439. The Erlang/OTP re NIF yields to the scheduler and OTP's default 10M match_limit caps an individual match at approximately 100-200 ms rather than seconds, which is why the outcome is sustained CPU amplification across thousands of messages and parallel sessions rather than a single long stall. The CPE string cpe:2.3:a:rabbitmq:rabbitmq-server:*:*:*:*:*:*:*:* reflects that all RabbitMQ Server builds below the fixed releases carry the flaw.
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:L/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N
Authenticated stream user (PR:L), remote (AV:N); AC:H reflects the AMQP 1.0 + stream-queue + SQL-filter precondition; only bounded CPU degradation so A:L, no C/I impact.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
RabbitMQ is a messaging and streaming broker. Prior to versions 4.2.7 and 4.3.1, pattern_to_regex maps % -> .*? and _ -> ., then compiles ^...$ with only [unicode]; re:run is called with only [{capture, none}] - no explicit match_limit. A pattern like %_%_..._%X becomes ^.*?..*?.....*?.X$ with overlapping lazy quantifiers. The whole-expression cap is ?MAX_EXPRESSION_LENGTH=4096 chars / ?MAX_TOKENS=200; a LIKE string literal is one token, so ~2000 %_ pairs fit. SQL filters are accepted unconditionally at rabbit_amqp_session.erl:3264 (no feature flag). Evaluated per-message at rabbit_stream_queue.erl:1439. OTP's default 10M match_limit caps each match at ~100-200 ms (not seconds), and the re NIF yields to the scheduler. An authenticated AMQP 1.0 consumer with read+write on a stream queue can cause ~100-200 ms of CPU per delivered message via a crafted LIKE filter, multiplied across thousands of messages and parallel sessions - a substantial backtracking-driven CPU amplification. Preconditions include AMQP 1.0 with stream queues in use Attacker can attach a receiver with a filter (read permission) and publish messages with long property values (write permission). This issue is fixed in versions 4.2.7 and 4.3.1.
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-85636
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB