CVE-2026-59986
rabbitmq-c: amqp_decode_bytes size_t integer overflow bypasses bounds check on 32-bit (OOB read)
rabbitmq-c is a C-language AMQP client library for RabbitMQ. Prior to version 0.17.0, the bounds check (*offset = o + len) <= encoded.len overflows when o + len > SIZE_MAX on 32-bit systems. len is a uint32_t read from the AMQP wire as a BYTES/UTF8 field length. The overflow wraps the check to a small value that passes, producing a decoded amqp_bytes_t with a multi-GB .len pointing into a small frame buffer. This results in an out-of-bounds read of up to ~4GB of process memory on 32-bit systems (ARM, MIPS, x86 ILP32, embedded IoT AMQP clients). Enabling information disclosure or denial of service. Not exploitable on 64-bit systems where size_t is 64-bit. This issue has been patched in version 0.17.0.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- High
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- High
- Integrity
- None
- Availability
- High
What each source reports
CVE List Score used
7.4
rabbitmq-c: amqp_decode_bytes size_t integer overflow bypasses bounds check on 32-bit (OOB read)
rabbitmq-c is a C-language AMQP client library for RabbitMQ. Prior to version 0.17.0, the bounds check (*offset = o + len) <= encoded.len overflows when o + len > SIZE_MAX on 32-bit systems. len is a uint32_t read from the AMQP wire as a BYTES/UTF8 field length. The overflow wraps the check to a small value that passes, producing a decoded amqp_bytes_t with a multi-GB .len pointing into a small frame buffer. This results in an out-of-bounds read of up to ~4GB of process memory on 32-bit systems (ARM, MIPS, x86 ILP32, embedded IoT AMQP clients). Enabling information disclosure or denial of service. Not exploitable on 64-bit systems where size_t is 64-bit. This issue has been patched in version 0.17.0.
- Record
CVE-2026-59986- CVSS 3.1
- 7.4 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H - Weakness
- CWE-190, CWE-125
- Updated
- 2026-11-10
EUVDEUVD-2026-121280
7.4
rabbitmq-c is a C-language AMQP client library for RabbitMQ. Prior to version 0.17.0, the bounds check (*offset = o + len) <= encoded.len overflows when o + len > SIZE_MAX on 32-bit systems. len is a uint32_t read from the AMQP wire as a BYTES/UTF8 field length. The overflow wraps the check to a small value that passes, producing a decoded amqp_bytes_t with a multi-GB .len pointing into a small frame buffer. This results in an out-of-bounds read of up to ~4GB of process memory on 32-bit systems (ARM, MIPS, x86 ILP32, embedded IoT AMQP clients). Enabling information disclosure or denial of service. Not exploitable on 64-bit systems where size_t is 64-bit. This issue has been patched in version 0.17.0.
- Record
EUVD-2026-121280- CVSS 3.1
- 7.4 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-10
NVD
7.4
rabbitmq-c is a C-language AMQP client library for RabbitMQ. Prior to version 0.17.0, the bounds check (*offset = o + len) <= encoded.len overflows when o + len > SIZE_MAX on 32-bit systems. len is a uint32_t read from the AMQP wire as a BYTES/UTF8 field length. The overflow wraps the check to a small value that passes, producing a decoded amqp_bytes_t with a multi-GB .len pointing into a small frame buffer. This results in an out-of-bounds read of up to ~4GB of process memory on 32-bit systems (ARM, MIPS, x86 ILP32, embedded IoT AMQP clients). Enabling information disclosure or denial of service. Not exploitable on 64-bit systems where size_t is 64-bit. This issue has been patched in version 0.17.0.
- Record
CVE-2026-59986- CVSS 3.1
- 7.4 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H - Weakness
- CWE-125, CWE-190
- Updated
- 2026-11-10
OSV
7.4
rabbitmq-c: amqp_decode_bytes size_t integer overflow bypasses bounds check on 32-bit (OOB read)
rabbitmq-c is a C-language AMQP client library for RabbitMQ. Prior to version 0.17.0, the bounds check (*offset = o + len) <= encoded.len overflows when o + len > SIZE_MAX on 32-bit systems. len is a uint32_t read from the AMQP wire as a BYTES/UTF8 field length. The overflow wraps the check to a small value that passes, producing a decoded amqp_bytes_t with a multi-GB .len pointing into a small frame buffer. This results in an out-of-bounds read of up to ~4GB of process memory on 32-bit systems (ARM, MIPS, x86 ILP32, embedded IoT AMQP clients). Enabling information disclosure or denial of service. Not exploitable on 64-bit systems where size_t is 64-bit. This issue has been patched in version 0.17.0.
- Record
CVE-2026-59986- CVSS 3.1
- 7.4 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H - Weakness
- CWE-125, CWE-190
- Updated
- 2026-11-11
OSVDEBIAN-CVE-2026-59986
7.4
rabbitmq-c is a C-language AMQP client library for RabbitMQ. Prior to version 0.17.0, the bounds check (*offset = o + len) <= encoded.len overflows when o + len > SIZE_MAX on 32-bit systems. len is a uint32_t read from the AMQP wire as a BYTES/UTF8 field length. The overflow wraps the check to a small value that passes, producing a decoded amqp_bytes_t with a multi-GB .len pointing into a small frame buffer. This results in an out-of-bounds read of up to ~4GB of process memory on 32-bit systems (ARM, MIPS, x86 ILP32, embedded IoT AMQP clients). Enabling information disclosure or denial of service. Not exploitable on 64-bit systems where size_t is 64-bit. This issue has been patched in version 0.17.0.
- Record
DEBIAN-CVE-2026-59986- CVSS 3.1
- 7.4 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-11
OSVOESA-2026-3308
7.4
librabbitmq security update
This is a C-language AMQP client library for use with AMQP servers speaking protocol versions 0-9-1.
Security Fix(es):
CVE-2026-59986 is a security vulnerability affecting the librabbitmq library. Specific details of the vulnerability have not been disclosed. librabbitmq is the C client library for RabbitMQ messaging middleware.(CVE-2026-59986)
CVE-2026-61547 is a security vulnerability in librabbitmq (RabbitMQ C client library). Details of the vulnerability have not been disclosed yet, and all versions are affected.(CVE-2026-61547)
- Record
OESA-2026-3308- CVSS 3.1
- 7.4 High
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H - Updated
- 2026-11-02
OSVMGASA-2026-0397 No score
Updated librabbitmq packages fix security vulnerabilities
amqp_decode_bytes size_t integer overflow bypasses bounds check on 32-bit (OOB read). (CVE-2026-59986) Heap Buffer Overflow in amqp_send_frame() When Serializing Oversized AMQP_FRAME_BODY. (CVE-2026-61547)
- Record
MGASA-2026-0397- Updated
- 2026-11-02
OSVUBUNTU-CVE-2026-59986 No score
[Unknown description]
- Record
UBUNTU-CVE-2026-59986- Updated
- 2026-11-02
OSVUSN-8724-1 No score
librabbitmq vulnerabilities
It was discovered that the rabbitmq-c command-line tools only accepted credentials on the command line, making them visible to other local users through the process list. An attacker could possibly use this to obtain sensitive credentials. This issue only affected Ubuntu 14.04 LTS, Ubuntu 16.04 LTS, Ubuntu 18.04 LTS, and Ubuntu 20.04 LTS. (CVE-2023-35789)
It was discovered that rabbitmq-c did not correctly compute AMQP frame lengths, leading to a size_t underflow. A remote attacker could possibly use this to cause rabbitmq-c to crash, resulting in a denial of service, or possibly expose sensitive information. This issue only affected Ubuntu 14.04 LTS, Ubuntu 16.04 LTS, Ubuntu 18.04 LTS, and Ubuntu 20.04 LTS. (CVE-2026-44235)
It was discovered that rabbitmq-c did not properly validate the frame size during the AMQP login handshake. A remote attacker could possibly use this to cause a heap buffer overflow, resulting in a denial of service or possibly the execution of arbitrary code. This issue only affected Ubuntu 14.04 LTS, Ubuntu 16.04 LTS, Ubuntu 18.04 LTS, and Ubuntu 20.04 LTS. (CVE-2026-44236)
It was discovered that rabbitmq-c did not correctly validate the length of decoded bytes fields, leading to an integer overflow in a bounds check on 32-bit systems. A remote attacker controlling a broker, or able to intercept an unencrypted connection, could possibly use this to cause an out-of-bounds read, resulting in a denial of service or the exposure of sensitive information. (CVE-2026-59986)
It was discovered that rabbitmq-c did not validate the body fragment length when serialising an AMQP body frame with the amqp_send_frame() API. An attacker could possibly use this to cause a heap buffer overflow, resulting in a denial of service (application crash) or possibly the execution of arbitrary code. This issue did not affect Ubuntu 14.04 LTS. (CVE-2026-61547)
- Record
USN-8724-1- Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
librabbitmqDebian:12 |
before 0.11.0-1+deb12u3, plus listed versions 0.11.0-10.11.0-1+deb12u10.11.0-1+deb12u2 |
0.11.0-1+deb12u3 |
librabbitmqDebian:13 |
before 0.15.0-1+deb13u2, plus listed versions 0.15.0-10.15.0-1+deb13u1 |
0.15.0-1+deb13u2 |
librabbitmqDebian:14 |
before 0.17.0-1, plus listed versions 0.15.0-10.16.0-1 |
0.17.0-1 |
librabbitmqMageia:10 From an advisory covering 2 CVEs |
before 0.15.0-2.2.mga10 | 0.15.0-2.2.mga10 |
librabbitmqMageia:9 From an advisory covering 2 CVEs |
before 0.11.0-1.2.mga9 | 0.11.0-1.2.mga9 |
librabbitmqopenEuler:20.03-LTS-SP4 From an advisory covering 2 CVEs |
before 0.9.0-9.oe2003sp4 | 0.9.0-9.oe2003sp4 |
librabbitmqopenEuler:22.03-LTS-SP4 From an advisory covering 2 CVEs |
before 0.9.0-11.oe2203sp4 | 0.9.0-11.oe2203sp4 |
librabbitmqopenEuler:24.03-LTS-SP1 From an advisory covering 2 CVEs |
before 0.13.0-4.oe2403sp1 | 0.13.0-4.oe2403sp1 |
librabbitmqopenEuler:24.03-LTS-SP3 From an advisory covering 2 CVEs |
before 0.13.0-4.oe2403sp3 | 0.13.0-4.oe2403sp3 |
librabbitmqopenEuler:24.03-LTS-SP4 From an advisory covering 2 CVEs |
before 0.13.0-4.oe2403sp4 | 0.13.0-4.oe2403sp4 |
Show 14 moreShow less
| Package | Affected | Fixed |
|---|---|---|
librabbitmqUbuntu:Pro:14.04:LTS |
before 0.4.1-1ubuntu0.1~esm2, plus listed versions 0.3.0-10.4.1-10.4.1-1ubuntu0.1~esm1 |
0.4.1-1ubuntu0.1~esm2 |
librabbitmqUbuntu:Pro:16.04:LTS |
before 0.7.1-1ubuntu0.2+esm1, plus listed versions 0.5.2-20.7.1-10.7.1-1ubuntu0.10.7.1-1ubuntu0.2 |
0.7.1-1ubuntu0.2+esm1 |
librabbitmqUbuntu:Pro:18.04:LTS |
before 0.8.0-1ubuntu0.18.04.2+esm1, plus listed versions 0.8.0-10.8.0-1build10.8.0-1ubuntu0.18.04.10.8.0-1ubuntu0.18.04.2 |
0.8.0-1ubuntu0.18.04.2+esm1 |
librabbitmqUbuntu:Pro:20.04:LTS |
before 0.10.0-1ubuntu0.20.04.1~esm1, plus listed versions 0.9.0-0.20.9.0-0.2ubuntu10.10.0-1 |
0.10.0-1ubuntu0.20.04.1~esm1 |
librabbitmqUbuntu:22.04:LTS |
before 0.10.0-1ubuntu2.2, plus listed versions 0.10.0-10.10.0-1build10.10.0-1ubuntu10.10.0-1ubuntu20.10.0-1ubuntu2.1 |
0.10.0-1ubuntu2.2 |
librabbitmqUbuntu:24.04:LTS |
before 0.11.0-1ubuntu0.2, plus listed versions 0.11.0-10.11.0-1build10.11.0-1build20.11.0-1ubuntu0.1 |
0.11.0-1ubuntu0.2 |
librabbitmqUbuntu:26.04:LTS |
before 0.15.0-1ubuntu0.26.04.2, plus listed versions 0.15.0-1build10.15.0-1build20.15.0-1ubuntu0.26.04.1 |
0.15.0-1ubuntu0.26.04.2 |
librabbitmqUbuntu:Pro:14.04:LTS From an advisory covering 5 CVEs |
before 0.4.1-1ubuntu0.1~esm2, plus listed versions 0.3.0-10.4.1-10.4.1-1ubuntu0.1~esm1 |
0.4.1-1ubuntu0.1~esm2 |
librabbitmqUbuntu:Pro:16.04:LTS From an advisory covering 5 CVEs |
before 0.7.1-1ubuntu0.2+esm1, plus listed versions 0.5.2-20.7.1-10.7.1-1ubuntu0.10.7.1-1ubuntu0.2 |
0.7.1-1ubuntu0.2+esm1 |
librabbitmqUbuntu:Pro:18.04:LTS From an advisory covering 5 CVEs |
before 0.8.0-1ubuntu0.18.04.2+esm1, plus listed versions 0.8.0-10.8.0-1build10.8.0-1ubuntu0.18.04.10.8.0-1ubuntu0.18.04.2 |
0.8.0-1ubuntu0.18.04.2+esm1 |
librabbitmqUbuntu:Pro:20.04:LTS From an advisory covering 5 CVEs |
before 0.10.0-1ubuntu0.20.04.1~esm1, plus listed versions 0.9.0-0.20.9.0-0.2ubuntu10.10.0-1 |
0.10.0-1ubuntu0.20.04.1~esm1 |
librabbitmqUbuntu:22.04:LTS From an advisory covering 5 CVEs |
before 0.10.0-1ubuntu2.2, plus listed versions 0.10.0-10.10.0-1build10.10.0-1ubuntu10.10.0-1ubuntu20.10.0-1ubuntu2.1 |
0.10.0-1ubuntu2.2 |
librabbitmqUbuntu:24.04:LTS From an advisory covering 5 CVEs |
before 0.11.0-1ubuntu0.2, plus listed versions 0.11.0-10.11.0-1build10.11.0-1build20.11.0-1ubuntu0.1 |
0.11.0-1ubuntu0.2 |
librabbitmqUbuntu:26.04:LTS From an advisory covering 5 CVEs |
before 0.15.0-1ubuntu0.26.04.2, plus listed versions 0.15.0-1build10.15.0-1build20.15.0-1ubuntu0.26.04.1 |
0.15.0-1ubuntu0.26.04.2 |
History
| Recorded | Changed | Sources |
|---|---|---|
| aliases, references | OSV | |
| published | NVD, OSV | |
| cwes, references, severity, title | CVE List | |
| aliases, description, products, references, severity | EUVD | |
| affected, facts | ||
| first indexed | OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2026-59986 is a high vulnerability (CVSS 7.4) in Alanxz Rabbitmq-c, published July 29, 2026. No source lists public exploit code. Fixed in librabbitmq 0.11.0-1+deb12u3.
References
github.com/alanxz/rabbitmq-c/security/advisories/GHSA-jgjf-7fwf-f3c7
github.com/alanxz/rabbitmq-c/pull/888
github.com/alanxz/rabbitmq-c/releases/tag/v0.17.0
github.com/CVEProject/cvelistV5/tree/main/cves/2026/59xxx/CVE-2026-59986.json
nvd.nist.gov/vuln/detail/CVE-2026-59986
security-tracker.debian.org/tracker/CVE-2026-59986
Show 13 moreShow less
advisories.mageia.org/MGASA-2026-0397.html
bugs.mageia.org/show_bug.cgi?id=36189
lists.debian.org/debian-security-announce/2026/msg00358.html
github.com/alanxz/rabbitmq-c/security/advisories/GHSA-hfjv-vcp3-39wh
ubuntu.com/security/notices/USN-8724-1
openeuler.org/zh/security/security-bulletins/detail?id=openEuler-SA-2026-3308
nvd.nist.gov/vuln/detail/CVE-2026-61547
ubuntu.com/security/CVE-2026-59986
cve.org/CVERecord?id=CVE-2026-59986
ubuntu.com/security/CVE-2023-35789
ubuntu.com/security/CVE-2026-44235
ubuntu.com/security/CVE-2026-44236
ubuntu.com/security/CVE-2026-61547