GHSA-r9c8-gcjp-xfwh
RabbitMQ amqp091-go: Resource Exhaustion (OOM) via Unbounded Body Buffer Allocation
En bref
- Publiée
- Mise à jour
- CVE
- CVE-2026-77410
- Alias
- GO-2026-6500
- CVSS_V4
- 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
Description
**Summary** A flaw in the `recvContent` function allows a malicious AMQP server to trigger an Out-of-Memory (OOM) error, forcing the host operating system or container runtime to immediately terminate the client process. **Vulnerability Details** When receiving message content payloads, the client processes the expected size from the content header framework. The `recvContent` function attempts to optimize performance by pre-allocating memory for the message body based on the `ch.header.Size` field, which is a 64-bit unsigned integer (`uint64`). ```go // channel.go:495-496 if cap(ch.body) == 0 { ch.body = make([]byte, 0, ch.header.Size) // unbounded } ``` The underlying library fails to validate or cap this requested size against any upper boundary—such as the maximum frame size negotiated during connection establishment (`FrameMax`). If a server specifies an extreme body size (e.g., `2^62` bytes), the Go runtime attempts to allocate an exabyte-scale slice capacity. This immediately exhausts available system memory, causing the operating system's OOM killer to terminate the application. **Attack Vector / Exploitation Scenario** - Message Delivery Phase: A malicious or compromised AMQP broker sends a standard `basic.deliver` frame containing a content header with an intentionally inflated `body-size` variable. - Authentication Requirement: No special privileges or authentication bypasses are required; the crash occurs seamlessly during normal message consumption. **Impact** - Availability: High. Exploded memory consumption results in an instant process termination, destroying application state and availability for all threads sharing the environment.
Paquets affectés
| Paquet | Versions |
|---|---|
| Go · github.com/rabbitmq/amqp091-go | introduced 0, fixed 1.13.0 |
Références
- https://github.com/rabbitmq/amqp091-go/security/advisories/GHSA-r9c8-gcjp-xfwh WEB
- https://nvd.nist.gov/vuln/detail/CVE-2026-77410 ADVISORY
- https://github.com/rabbitmq/amqp091-go/pull/346 WEB
- https://github.com/rabbitmq/amqp091-go/commit/91b65fa0096a99a580cf51a31b24028ff1c60382 WEB
- https://github.com/rabbitmq/amqp091-go PACKAGE
- https://github.com/rabbitmq/amqp091-go/releases/tag/v1.13.0 WEB
Sources
| Source | Licence |
|---|---|
| OSV.dev | CC-BY 4.0 — GitHub Advisory Database |