rabbitmq-server: RabbitMQ: Atom exhaustion: to_atom on global-parameter :name
What fixes it
- 4.0.22rabbitmq-server, otherGitHub
- 4.1.14rabbitmq-server, otherGitHub
- 4.2.7rabbitmq-server, otherGitHub
- 4.3.1rabbitmq-server, otherGitHub
A fixed version on one release line is not the upgrade target for every line. Check your exact version and any vendor backports.
Description
RabbitMQ is a messaging and streaming broker. From 4.0.0 until 4.0.22 and 4.1.14 and 4.2.7 and 4.3.1, Atom exhaustion: toatom on global-parameter :name. resourceexists/2 (and the PUT/DELETE handlers) call rabbitdatacoercion:toatom/1 on the :name URL path segment. toatom/1 uses binarytoatom/2 (unsafe). The endpoint requires policymaker (not management, but below A user with the policymaker tag can crash the node by exhausting the atom table via repeated requests to /api/global-parameters/:name with unique :name Management plugin enabled policymaker tag ~1M HTTP. This issue is fixed in versions 4.0.22 and 4.1.14 and 4.2.7 and 4.3.1.
Text from CVE List
Affected versions 8
- rabbitmq-serveraffected: >= 4.0.0, < 4.0.22CVE List
- rabbitmq-serveraffected: >= 4.1.0, < 4.1.14CVE List
- rabbitmq-serveraffected: >= 4.2.0, < 4.2.7CVE List
- rabbitmq-serveraffected: >= 4.3.0, < 4.3.1CVE List
- rabbitmq-server, other>= 4.0.0, < 4.0.22GitHub
- rabbitmq-server, other>= 4.1.0, < 4.1.14GitHub
- rabbitmq-server, other>= 4.2.0, < 4.2.7GitHub
- rabbitmq-server, other>= 4.3.0, < 4.3.1GitHub
References 5
- github.com/rabbitmq/rabbitmq-server/commit/8fbe6d8112427e85fb9a9206b3eb6e9a3ddd3e39Fixvia CVE List
- github.com/rabbitmq/rabbitmq-server/commit/fc591e7ee27a29657ca960930acefd3e4217e007Fixvia CVE List
- github.com/rabbitmq/rabbitmq-server/releases/tag/v4.2.7Fixvia CVE List
- github.com/rabbitmq/rabbitmq-server/releases/tag/v4.3.1Fixvia CVE List
- github.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-q7x8-97rh-cr24Advisoryvia CVE List