---
id: CVE-2026-67231
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, and 4.3.0, The trust-store plugin installs a verify_fun
  that overrides {bad_cert, unknown_ca} / {bad_cert, selfsigned_peer} when the
  presente…
severity: critical
cvss: 9.1
cvssVector: 'CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N'
cwe:
  - CWE-295
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:02:58.307'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-67231'
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/releases/tag/v4.3.0'
    label: security-advisories@github.com
  - url: >-
      https://github.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-cw8c-4m83-9c6w
    label: security-advisories@github.com
  - url: >-
      https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-67231.json
  - url: 'https://access.redhat.com/security/cve/CVE-2026-67231'
  - url: 'https://bugzilla.redhat.com/show_bug.cgi?id=2539781'
  - url: 'https://www.cve.org/CVERecord?id=CVE-2026-67231'
  - url: 'https://nvd.nist.gov/vuln/detail/CVE-2026-67231'
tags:
  - nvd
  - cve.org
  - csaf
  - vex
  - red-hat
cvssSource: cna
ingestedAt: '2026-09-23T21:33:13.530Z'
scores:
  cna: 9.1
  vendor: 8.1
epss: 0.00249
epssPercentile: 0.14447
---

## Overview

RabbitMQ is a messaging and streaming broker. Prior to versions 3.13.15, 4.0.20, 4.1.11, 4.2.6, and 4.3.0, The trust-store plugin installs a verify_fun that overrides {bad_cert, unknown_ca} / {bad_cert, selfsigned_peer} when the presented cert "matches" a whitelisted one. The match key is extract_issuer_id/1 → public_key:pkix_issuer_id/2 → {IssuerName, SerialNumber} , both fields are taken verbatim from the presented certificate body and contain no public-key, SKI, fingerprint or signature material. is_whitelisted/1 is a pure ets:member lookup; the stored full DER is used only for list/0 display and is never compared against the presented cert. cacerts is [], so the whitelisted cert is never used as a trust anchor for path validation either. TLS client-authentication bypass: an attacker who knows the issuer DN + serial of any whitelisted certificate can connect with a forged self-signed cert. Preconditions include rabbitmq_trust_store plugin enabled and used as the TLS verify_fun Attacker knows or can guess the {Issuer, Serial} of at least one whitelisted cert (non-secret; exposed via CLI/logs/any cert copy). This issue is fixed in versions 3.13.15, 4.0.20, 4.1.11, 4.2.6, and 4.3.0.

## Remediation

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

## Vendor advisories

- **Red Hat VEX** · Important · updated 2026-09-24 · [vex](https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-67231.json)
