CVE-2026-79921: Github.com/rabbitmq/amqp091 go Amqp091-go Has A Potential Memory Vulnerability

HIGH
Advisory Identifier: GHSA-6c5v-hqjr-5xxp
CWE-770
Published
Advisory Summary

CVE-2026-79921 is a HIGH amqp091-go has a potential memory vulnerability (CWE-770: Allocation of Resources Without Limits or Throttling) affecting Github.com/rabbitmq/amqp091 go libraries in the Go ecosystem. The issue involves amqp091-go has a potential memory exhaustion/protocol violation via broker-controlled oversized payload. Remediation is available by upgrading affected packages to version 1.13.0.

CVE-2026-79921 at a Glance

CVE Identifier CVE-2026-79921
GHSA Identifier GHSA-6c5v-hqjr-5xxp
Severity HIGH
CVSS v3.1 Base Score N/A
CWE Classification CWE-770: Allocation of Resources Without Limits or Throttling
Affected Product Github.com/rabbitmq/amqp091 go
Package Ecosystem Go
Published Date
Last Updated

How to Fix CVE-2026-79921

To remediate this vulnerability, upgrade all affected Github.com/rabbitmq/amqp091 go dependencies to a patched release. Both direct and transitive dependencies should be checked, as frameworks or security libraries may pull in vulnerable versions transitively.

github.com/rabbitmq/amqp091-go fixed: 1.13.0
Upgrade github.com/rabbitmq/amqp091-go to 1.13.0
Verify Direct and Transitive Dependencies

Run the following command in your project directory to verify that all resolved dependencies use the patched release:

inspect dependencies for github.com/rabbitmq/amqp091-go

How to Check if You Are Affected

To determine whether your application is affected by CVE-2026-79921, inspect your project dependencies for Github.com/rabbitmq/amqp091 go:

inspect dependencies for github.com/rabbitmq/amqp091-go

Analyze the terminal output to locate any version of Github.com/rabbitmq/amqp091 go in your dependency tree. If any resolved version matches the vulnerable ranges listed in the table below (for example, versions earlier than 1.13.0), your application is affected.

Note: Verify declared build manifests and deployed runtime container environments.

Technical Details

Vulnerability Mechanism & Technical Analysis

This vulnerability is classified under CWE-770: Allocation of Resources Without Limits or Throttling, where the product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated. In Github.com/rabbitmq/amqp091 go, software state validation or input boundaries are circumvented during processing. Review the official source advisory statement below for specific affected components, classes, and reproduction details.

Source Advisory Statement

**Summary** A vulnerability exists in the amqp091-go client library where a compromised or malicious AMQP broker can force the client to allocate resources for and process content body frames that exceed the negotiated frame_max limit. This can lead to unexpected memory consumption or application-layer denial of service (DoS), bypassing the protocol's built-in framing constraints. **Details** During a standard AMQP 0-9-1 connection handshake, the client and the broker negotiate a maximum frame size (frame_max), for example, 4096 bytes. However, after negotiation, a malicious broker can send a valid basic.deliver sequence containing a content body frame whose header declares a payload size larger than the negotiated frame_max. Instead of enforcing the agreed-upon limit and closing the connection with a frame-error (as mandated by the AMQP 0-9-1 specification), the amqp091-go client: 1. Accepts the broker-declared oversized frame size. 2. Allocates memory based on this oversized declaration. 3. Reads the payload, assembles it into the message, and delivers it to the consumer. **Impact** - Denial of Service (DoS): If a broker sends extremely large frame sizes, it can trigger significant memory allocations on the client side, potentially leading to Out-Of-Memory (OOM) crashes. - Protocol Violation: The client fails to enforce negotiated connection parameters, trusting the broker implicitly even after constraints have been established.

CVE-2026-79921 Affected Github.com/rabbitmq/amqp091 go Versions

1 component(s)
Fixed Versions:
1.13.0
Product / Package Ecosystem Affected Versions Fixed Version
github.com/rabbitmq/amqp091-go
Go
< 1.13.0
1.13.0

References

Frequently Asked Questions

What is CVE-2026-79921?
CVE-2026-79921 is a security vulnerability in Github.com/rabbitmq/amqp091 go involving amqp091-go has a Potential Memory Exhaustion/Protocol Violation via Broker-Controlled Oversized Payload under CWE-770: Allocation of Resources Without Limits or Throttling.
Which Github.com/rabbitmq/amqp091 go versions are affected?
Affected versions include releases prior to 1.13.0 across affected packages: github.com/rabbitmq/amqp091-go.
What version fixes CVE-2026-79921?
Upgrading to 1.13.0 (or the latest patched release for your respective branch) resolves the vulnerability.
Is github.com/rabbitmq/amqp091-go affected?
Yes, github.com/rabbitmq/amqp091-go is affected in releases prior to 1.13.0. Upgrade your dependency to 1.13.0 or later.
What CWE is associated with CVE-2026-79921?
CVE-2026-79921 is classified under CWE-770: Allocation of Resources Without Limits or Throttling (The product allocates a reusable resource or group of resources on behalf of an actor without imposing any intended restrictions on the size or number of resources that can be allocated.).
How can I check Go dependencies for CVE-2026-79921?
Run the dependency tree command: 'inspect dependencies for github.com/rabbitmq/amqp091-go'. This command lists direct and transitive dependencies in your build configuration so you can verify if a vulnerable version is resolved.
Machine-readable OSV JSON OSV v1.5 Schema
Normalized schema output
{
  "schema_version" : "1.4.0",
  "id" : "GHSA-6c5v-hqjr-5xxp",
  "modified" : "2026-09-03T20:15:13Z",
  "published" : "2026-09-03T20:15:13Z",
  "aliases" : [ "CVE-2026-79921" ],
  "summary" : "amqp091-go has a Potential Memory Exhaustion/Protocol Violation via Broker-Controlled Oversized Payload",
  "details" : "**Summary**\nA vulnerability exists in the amqp091-go client library where a compromised or malicious AMQP broker can force the client to allocate resources for and process content body frames that exceed the negotiated frame_max limit. This can lead to unexpected memory consumption or application-layer denial of service (DoS), bypassing the protocol's built-in framing constraints.\n\n**Details**\nDuring a standard AMQP 0-9-1 connection handshake, the client and the broker negotiate a maximum frame size (frame_max), for example, 4096 bytes.\n\nHowever, after negotiation, a malicious broker can send a valid basic.deliver sequence containing a content body frame whose header declares a payload size larger than the negotiated frame_max. Instead of enforcing the agreed-upon limit and closing the connection with a frame-error (as mandated by the AMQP 0-9-1 specification), the amqp091-go client:\n\n1. Accepts the broker-declared oversized frame size.\n2. Allocates memory based on this oversized declaration.\n3. Reads the payload, assembles it into the message, and delivers it to the consumer.\n\n**Impact**\n\n- Denial of Service (DoS): If a broker sends extremely large frame sizes, it can trigger significant memory allocations on the client side, potentially leading to Out-Of-Memory (OOM) crashes.\n- Protocol Violation: The client fails to enforce negotiated connection parameters, trusting the broker implicitly even after constraints have been established.",
  "severity" : [ {
    "type" : "CVSS_V4",
    "score" : "CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:H"
  } ],
  "affected" : [ {
    "package" : {
      "ecosystem" : "Go",
      "name" : "github.com/rabbitmq/amqp091-go"
    },
    "ranges" : [ {
      "type" : "ECOSYSTEM",
      "events" : [ {
        "introduced" : "0"
      }, {
        "fixed" : "1.13.0"
      } ]
    } ]
  } ],
  "references" : [ {
    "type" : "WEB",
    "url" : "https://github.com/rabbitmq/amqp091-go/security/advisories/GHSA-6c5v-hqjr-5xxp"
  }, {
    "type" : "ADVISORY",
    "url" : "https://nvd.nist.gov/vuln/detail/CVE-2026-79921"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/rabbitmq/amqp091-go/pull/353"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/rabbitmq/amqp091-go/commit/6beb7b51f59e46ddcf8066ad498dad32491d3be0"
  }, {
    "type" : "PACKAGE",
    "url" : "https://github.com/rabbitmq/amqp091-go"
  }, {
    "type" : "WEB",
    "url" : "https://github.com/rabbitmq/amqp091-go/releases/tag/v1.13.0"
  } ],
  "database_specific" : {
    "cwe_ids" : [ "CWE-770" ],
    "severity" : "HIGH",
    "github_reviewed" : true,
    "github_reviewed_at" : "2026-09-03T20:15:13Z",
    "nvd_published_at" : "2026-08-26T21:16:41Z"
  }
}