Medium · published September 25, 2026
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 rabbitmq_shovel and rabbitmq_shovel_management 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.
| Product | Versions | Fixed in |
|---|---|---|
| broadcom/rabbitmq_server | ≥ 4.2.0, < 4.2.9 | 4.2.9 |
| broadcom/rabbitmq_server | ≥ 4.3.0, < 4.3.3 | 4.3.3 |