Skip to content
Heist/ feed
Back to feed
MediumFix available

RabbitMQ: AMQP 1.0 management exchange.declare skips alternate-exchange permission check

Type: advisorySources: OSV

RabbitMQ is a messaging and streaming broker. From 4.2.0 until 4.2.9 and 4.3.3, AMQP 1.0 management exchange.declare skips alternate-exchange permission check. pUT /exchanges/:name (lines 192-240) checks only configure on the declared exchange and passes XArgs straight to rabbitexchange:declare/7. It omits the checkreadpermitted(X) + checkwritepermitted(AE) that rabbitchannel.erl:2540-2548 enforces for the alternate-exchange argument on the AMQP 0-9-1 path. The same file already implements the analogous DLX check for queues (lines 708-719), confirming this is a missing-check bug rather than intentional A user with only configure on exchange X can route X's unroutable messages into an alternate exchange they have no write permission AMQP 1.0 enabled (default in RabbitMQ 4.x) Attacker has configure on at least one exchange but lacks write on the target. This issue is fixed in versions 4.2.9 and 4.3.3.

Products
rabbitmq
Affected versions
Not specified
Fixed versions
4.2.9, 4.3.3
CVEs
CVE-2026-67241
Confirmed fixed CVEs
Not specified
Updated in this feed
30 Oct 2026, 23:59 UTC · Revision 1

Source evidence

RabbitMQ: AMQP 1.0 management exchange.declare skips alternate-exchange permission check

core-osv · Original source

Published 1 Oct 2026, 09:33 UTC

RabbitMQ is a messaging and streaming broker. From 4.2.0 until 4.2.9 and 4.3.3, AMQP 1.0 management exchange.declare skips alternate-exchange permission check. pUT /exchanges/:name (lines 192-240) checks only configure on the declared exchange and passes XArgs straight to rabbitexchange:declare/7. It omits the checkreadpermitted(X) + checkwritepermitted(AE) that rabbitchannel.erl:2540-2548 enforces for the alternate-exchange argument on the AMQP 0-9-1 path. The same file already implements the analogous DLX check for queues (lines 708-719), confirming this is a missing-check bug rather than intentional A user with only configure on exchange X can route X's unroutable messages into an alternate exchange they have no write permission AMQP 1.0 enabled (default in RabbitMQ 4.x) Attacker has configure on at least one exchange but lacks write on the target. This issue is fixed in versions 4.2.9 and 4.3.3.

osv:BIT-rabbitmq-2026-67241

rabbitmq

Fixed versions: 4.2.9, 4.3.3

Complete source record
{
  "id": "fa0aa1b26873555cce278e1b4f59bbe0fc6a9c8a92a95df5c89df04cd6bf2a54",
  "url": "https://osv.dev/vulnerability/BIT-rabbitmq-2026-67241",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "RabbitMQ: AMQP 1.0 management exchange.declare skips alternate-exchange permission check",
    "summary": "RabbitMQ is a messaging and streaming broker. From 4.2.0 until 4.2.9 and 4.3.3, AMQP 1.0 management exchange.declare skips alternate-exchange permission check. pUT /exchanges/:name (lines 192-240) checks only configure on the declared exchange and passes XArgs straight to rabbitexchange:declare/7. It omits the checkreadpermitted(X) + checkwritepermitted(AE) that rabbitchannel.erl:2540-2548 enforces for the alternate-exchange argument on the AMQP 0-9-1 path. The same file already implements the analogous DLX check for queues (lines 708-719), confirming this is a missing-check bug rather than intentional A user with only configure on exchange X can route X's unroutable messages into an alternate exchange they have no write permission AMQP 1.0 enabled (default in RabbitMQ 4.x) Attacker has configure on at least one exchange but lacks write on the target. This issue is fixed in versions 4.2.9 and 4.3.3.",
    "evidence": "osv:BIT-rabbitmq-2026-67241",
    "products": [
      {
        "name": {
          "value": "rabbitmq",
          "evidence": "/affected/0/package/name"
        },
        "prerequisites": [],
        "fixed_versions": [
          {
            "value": "4.2.9",
            "evidence": "/affected/0/ranges"
          },
          {
            "value": "4.3.3",
            "evidence": "/affected/0/ranges"
          }
        ],
        "affected_versions": []
      }
    ],
    "severity": "medium",
    "structured": {
      "id": "BIT-rabbitmq-2026-67241",
      "aliases": [
        "BIT-rabbitmq-2026-67241",
        "CVE-2026-67241",
        "GHSA-rg2g-289m-xhhw"
      ],
      "affected": [
        {
          "ranges": [
            {
              "type": "SEMVER",
              "events": [
                {
                  "introduced": "4.2.0"
                },
                {
                  "fixed": "4.2.9"
                },
                {
                  "introduced": "4.3.0"
                },
                {
                  "fixed": "4.3.3"
                }
              ]
            }
          ],
          "package": {
            "name": "rabbitmq",
            "purl": "pkg:bitnami/rabbitmq",
            "ecosystem": "Bitnami"
          },
          "severity": [
            {
              "type": "CVSS_V4",
              "score": "CVSS:4.0/AV:N/AC:L/AT:P/PR:H/UI:N/VC:N/VI:N/VA:N/SC:L/SI:H/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X"
            }
          ],
          "database_specific": {
            "source": "https://github.com/bitnami/vulndb/tree/main/data/rabbitmq/BIT-rabbitmq-2026-67241.json"
          }
        }
      ],
      "modified": "2026-10-17T09:15:02.421102800Z",
      "provider": "osv",
      "references": [
        "https://github.com/rabbitmq/rabbitmq-server/commit/18eac8d547b4382bf830c621b20a35932dd1cfa5",
        "https://github.com/rabbitmq/rabbitmq-server/commit/56005e7cebffc478ef397573de24aff1167e7cda",
        "https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.2.9",
        "https://github.com/rabbitmq/rabbitmq-server/releases/tag/v4.3.3",
        "https://github.com/rabbitmq/rabbitmq-server/security/advisories/GHSA-rg2g-289m-xhhw",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-67241"
      ],
      "provider_metadata": {
        "cpes": [
          "cpe:2.3:a:vmware:rabbitmq:*:*:*:*:*:*:*:*"
        ],
        "severity": "Medium"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-67241",
        "evidence": "/aliases"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/database_specific/severity"
  },
  "source_id": "core-osv",
  "document_id": 352246,
  "published_at": "2026-10-01T09:33:39.054+00:00"
}