CVE-2026-44838
Analyzed Analyzed - Analysis Complete
MQTT Topic Authorization Bypass in RabbitMQ

Publication date: 2026-05-27

Last updated on: 2026-06-04

Assigner: GitHub, Inc.

Description
RabbitMQ is a messaging and streaming broker. From 4.2.0 to before 4.2.4, RabbitMQ's MQTT plugin allows for topic-level authorization using regular expressions with variable substitution. Administrators can create patterns such as ^{client_id}-sensors$ to restrict user access to topics that include their client ID. However, the client_id is provided by the user in the MQTT CONNECT packet and is inserted into the regex pattern without escaping special regex characters. This flaw enables an authenticated MQTT user to inject regex operators to bypass authorization. This vulnerability is fixed in 4.2.4 and 4.3.0.
CVSS Scores
EPSS Scores
Probability:
Percentile:
Meta Information
Published
2026-05-27
Last Modified
2026-06-04
Generated
2026-06-16
AI Q&A
2026-05-27
EPSS Evaluated
2026-06-15
NVD
EUVD
Affected Vendors & Products
Showing 1 associated CPE
Vendor Product Version / Range
broadcom rabbitmq_server From 4.2.0 (inc) to 4.2.4 (exc)
Helpful Resources
Exploitability
CWE
CWE Icon
KEV
KEV Icon
CWE ID Description
CWE-863 The product performs an authorization check when an actor attempts to access a resource or perform an action, but it does not correctly perform the check.
Attack-Flow Graph
AI Quick Actions
Instant insights powered by AI
Executive Summary

This vulnerability exists in RabbitMQ's MQTT plugin versions from 4.2.0 to before 4.2.4. The plugin uses regular expressions with variable substitution to enforce topic-level authorization, allowing administrators to restrict user access to specific topics based on client IDs.

However, the client_id used in these regex patterns is provided by the user in the MQTT CONNECT packet and is inserted into the regex without escaping special regex characters. This allows an authenticated MQTT user to inject regex operators, potentially bypassing the intended authorization restrictions.

The issue was fixed in RabbitMQ versions 4.2.4 and 4.3.0.

Impact Analysis

This vulnerability can allow an authenticated MQTT user to bypass topic-level authorization controls by injecting special regex characters into the client_id. As a result, the user may gain unauthorized access to topics they should not have permission to access.

This unauthorized access could lead to exposure of sensitive messaging data or unauthorized message publishing, potentially compromising the confidentiality and integrity of the messaging system.

Mitigation Strategies

To mitigate this vulnerability, you should upgrade RabbitMQ to version 4.2.4 or later, or 4.3.0 or later, where the issue has been fixed.

Compliance Impact

This vulnerability allows an authenticated MQTT user to bypass topic-level authorization and gain unauthorized access to restricted topics. Such unauthorized access to data or messaging channels could lead to exposure or manipulation of sensitive information.

In the context of compliance with standards like GDPR or HIPAA, this unauthorized access risk could result in violations related to data confidentiality, integrity, and access controls, which are critical requirements in these regulations.

Therefore, if exploited, this vulnerability could undermine compliance efforts by enabling unauthorized data access or actions, potentially leading to regulatory penalties or breaches of privacy obligations.

Detection Guidance

This vulnerability can be detected by monitoring MQTT CONNECT packets for client_id values that contain special regex characters which could be used to inject regex operators and bypass topic-level authorization.

One approach is to capture and inspect MQTT CONNECT packets to identify client_id fields with suspicious patterns such as regex metacharacters (e.g., ., *, +, ?, ^, $, [, ], (, ), |, \).

For example, using tcpdump or tshark to filter MQTT CONNECT packets and extract client_id values:

  • tcpdump -i <interface> -s 0 -w mqtt_connect.pcap 'tcp port 1883'
  • tshark -r mqtt_connect.pcap -Y 'mqtt.msgtype == 1' -T fields -e mqtt.clientid

After extracting client_id values, review them for regex special characters that could be used to bypass authorization.

Additionally, review RabbitMQ MQTT plugin configuration for topic-level authorization patterns that use {client_id} variable substitution without escaping.

Chat Assistant
Ask questions about this CVE
Hi! I’m here to help you understand CVE-2026-44838. Ask me anything about the vulnerability, its impact, or mitigation strategies.
0/70
EPSS Chart