CVE-2026-67415: RabbitMQ: Shovel Management Atom Exhaustion Allows Persistent Broker-Wide Denial of Service
RabbitMQ is a messaging and streaming broker. From 4.2.0 until 4.2.9 and 4.3.3, the Shovel parameter parser converted attacker-controlled runtime parameter values into non-garbage-collected Erlang atoms before bounding them or checking a fixed allowlist. Exploitation requires network access to the Management HTTP API, valid credentials with both the management and policymaker tags, permission to set Shovel runtime parameters on a vhost, and the rabbitmqshovel and rabbitmqshovelmanagement plugins to be enabled. The attacker can exhaust the node-wide atom table and deny service, and malicious parameters are stored durably and reparsed when workers start, so atom pressure can recur after restart without a live attacker connection. This issue is fixed in versions 4.2.9 and 4.3.3.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
RabbitMQto a version that resolves this vulnerability.Fixed in 4.2.9 - Upgrade
Upgrade
RabbitMQto a version that resolves this vulnerability.Fixed in 4.3.3
Event History
Frequently Asked Questions
Which deployments are exposed to this issue?
Exposure requires RabbitMQ versions from 4.2.0 through 4.2.9, or version 4.3.3, with both the rabbitmq_shovel and rabbitmq_shovel_management plugins enabled. An attacker must also be able to reach the Management HTTP API and have credentials carrying both the management and policymaker tags, plus permission to set Shovel runtime parameters on a vhost.
Can the denial of service persist after the attacker disconnects or the broker restarts?
Yes. Malicious Shovel runtime parameters are stored durably and are reparsed when workers start, so atom-table pressure can recur after restart without an active attacker connection.
What should be done if an immediate upgrade is not possible?
Restrict access to the Management HTTP API and remove or limit credentials that have both management and policymaker tags or permission to set Shovel runtime parameters. Disable the rabbitmq_shovel and rabbitmq_shovel_management plugins where they are not required.
Which versions contain the fix?
The issue is fixed in RabbitMQ 4.2.9 and 4.3.3.