---
id: CVE-2026-67220
title: RabbitMQ is a messaging and streaming broker
summary: >-
  RabbitMQ is a messaging and streaming broker. Prior to versions 3.13.15,
  4.0.20, 4.1.11, 4.2.6, 4.3.0, When a binding is created on an x-jms-topic
  exchange, add_binding/3 reads the rjms_erlang_selector argument and passes it
  through erl_…
severity: medium
cvss: 6
cvssVector: 'CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N'
cwe:
  - CWE-400
  - CWE-770
vendor: rabbitmq
product: rabbitmq-server
affected:
  - 'rabbitmq-server >= 3.13.0, < 3.13.15'
  - 'rabbitmq-server >= 4.0.0, < 4.0.20'
  - 'rabbitmq-server >= 4.1.0, < 4.1.11'
  - 'rabbitmq-server >= 4.2.0, < 4.2.6'
published: '2026-09-23'
updated: '2026-09-24'
sourceUpdated: '2026-09-24T15:17:29.670'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-67220'
references:
  - url: 'https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.2.6'
    label: security-advisories@github.com
  - url: >-
      https://github.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-r3qr-4h63-mvj2
    label: security-advisories@github.com
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-67220.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-67220'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2539763'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-67220'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-67220'
  - url: 'https://access.redhat.com/errata/RHSA-2026:67552'
tags:
  - nvd
  - cve.org
  - csaf
  - vex
  - red-hat
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: partial
  timestamp: '2026-09-24T14:15:50.364609Z'
cvssSource: cna
ingestedAt: '2026-09-23T20:32:10.758Z'
patched:
  - hardened_images
scores:
  cna: 6
  vendor: 6.5
epss: 0.00289
epssPercentile: 0.19083
---

## Overview

RabbitMQ is a messaging and streaming broker. Prior to versions 3.13.15, 4.0.20, 4.1.11, 4.2.6, 4.3.0, When a binding is created on an x-jms-topic exchange, add_binding/3 reads the rjms_erlang_selector argument and passes it through erl_scan:string/1 then erl_parse:parse_term/1. erl_scan:string/1 interns every atom literal it tokenizes. validate_binding/2 is a no-op (-> ok.), there is no length cap, and the surrounding try/catch cannot reclaim atoms. The Java JMS client compiles selectors client-side, but the server does not enforce this , a raw AMQP client can send arbitrary selector strings. An authenticated low-privilege AMQP user confined to one vhost can crash the entire broker node (cross-tenant DoS) in <100 bind calls. Preconditions include rabbitmq_jms_topic_exchange plugin enabled (bundled; required for any JMS deployment) Authenticated AMQP user with read on an x-jms-topic exchange + write on a queue (or configure to declare both). This issue is fixed in versions 3.13.15, 4.0.20, 4.1.11, 4.2.6, 4.3.0.

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.

## Vendor advisories

- **RHSA-2026:67552** · Red Hat · fixed in: Red Hat Hardened Images · released 2026-09-15 · [advisory](https://access.redhat.com/errata/RHSA-2026:67552)
- **Red Hat VEX** · Moderate · affected: Red Hat Hardened Images, Red Hat OpenStack Platform 18.0 · no fix planned: Red Hat Hardened Images, Red Hat OpenStack Platform 18.0 · updated 2026-09-25 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-67220.json)
