Description
gopacket provides packet processing capabilities for Go. In version 1.6.0 and earlier, the Diameter AVP decoder computes an AVP data length by subtracting a fixed header size from an attacker-controlled AVP Length field, so a vendor-flagged AVP whose Length is smaller than the 12-byte header underflows the unsigned 32-bit value and drives an unbounded allocation of roughly 4 GiB, and two such messages in succession OOM-kill a collector, causing an unauthenticated remote denial of service. This issue is fixed in version 1.6.1.
Published: 2026-07-28
Score: 6.9 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The vulnerability resides in the Diameter AVP decoder of the GoPacket library. An attacker‑controlled AVP length that is smaller than the constant 12‑byte header causes a 32‑bit underflow when the driver computes the payload length. This calculation results in an allocation request of roughly 4 GiB. Two such consecutive allocations can exhaust the system’s memory, leading to an out‑of‑memory condition that kills the collector or any process using the library. The flaw is an integer underflow (CWE‑191) that feeds an uncontrolled allocation size (CWE‑770). Affected systems are Go projects that link to the gopacket library version 1.6.0 or earlier. The library is commonly used for packet parsing in network monitoring, intrusion detection, and custom packet processing tools. All users of the older library that process Diameter packets are potentially impacted until they upgrade to the patched 1.6.1 release. The CVSS score of 6.9 indicates medium severity, and the EPSS value of less than 1 % suggests a low likelihood of exploitation at present. The vulnerability is not listed in CISA’s KEV catalog. Because the error occurs during packet parsing, an unauthenticated remote attacker can trigger it by sending specially crafted Diameter messages to any service that processes such packets through the vulnerable library. No validation is performed before the allocation, and failure results in a denial‑of‑service rather than code execution.

Affected Systems

Affected systems are any Go applications that link to the gopacket library version 1.6.0 or earlier and that parse Diameter packets. These include network monitoring tools, intrusion detection systems, and custom packet‑processing utilities written in Go that depend on gopacket for packet decoding.

Risk and Exploitability

The CVSS score of 6.9 indicates medium severity, with an EPSS score of <1 % pointing to a low likelihood of exploitation. It is not listed in CISA’s KEV catalog. The flaw can be exploited by any external entity that can send Diameter messages to a vulnerable service; no authentication or elevated privileges are required. By crafting AVP lengths smaller than the 12‑byte header, an attacker can trigger the 32‑bit underflow and request an almost 4 GiB allocation. Sending two such messages in quick succession can exhaust system memory and cause the application or collector to terminate, resulting in a denial‑of‑service.

Generated by OpenCVE AI on August 3, 2026 at 14:48 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade the gopacket library to version 1.6.1 or later, which removes the underflow calculation.
  • If an upgrade cannot be performed immediately, block or filter Diameter traffic from untrusted sources to prevent crafted AVP messages from reaching the vulnerable application.
  • Apply operating‑system or container memory limits (e.g., cgroups) to constrain the impact of a potential out‑of‑memory condition on critical services.

Generated by OpenCVE AI on August 3, 2026 at 14:48 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-6r28-9ppf-4hj5 GoPacket's Diameter AVP decoder: uint32 underflow on vendor header size leads to unbounded ~4 GiB allocation (unauthenticated remote DoS)
History

Tue, 28 Jul 2026 21:00:00 +0000

Type Values Removed Values Added
First Time appeared Gopacket
Gopacket gopacket
Vendors & Products Gopacket
Gopacket gopacket

Tue, 28 Jul 2026 18:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'yes', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Tue, 28 Jul 2026 17:00:00 +0000

Type Values Removed Values Added
Description gopacket provides packet processing capabilities for Go. In version 1.6.0 and earlier, the Diameter AVP decoder computes an AVP data length by subtracting a fixed header size from an attacker-controlled AVP Length field, so a vendor-flagged AVP whose Length is smaller than the 12-byte header underflows the unsigned 32-bit value and drives an unbounded allocation of roughly 4 GiB, and two such messages in succession OOM-kill a collector, causing an unauthenticated remote denial of service. This issue is fixed in version 1.6.1.
Title GoPacket's Diameter AVP decoder: uint32 underflow on vendor header size leads to unbounded ~4 GiB allocation (unauthenticated remote DoS)
Weaknesses CWE-191
CWE-770
References
Metrics cvssV4_0

{'score': 6.9, 'vector': 'CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:N/VA:L/SC:N/SI:N/SA:N'}


Subscriptions

Gopacket Gopacket
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-28T17:11:47.628Z

Reserved: 2026-06-12T19:23:22.317Z

Link: CVE-2026-54345

cve-icon Vulnrichment

Updated: 2026-07-28T17:11:38.291Z

cve-icon NVD

Status : Analyzed

Published: 2026-07-28T17:16:51.400

Modified: 2026-08-05T19:04:17.910

Link: CVE-2026-54345

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T15:00:15Z

Weaknesses
  • CWE-191

    Integer Underflow (Wrap or Wraparound)

  • CWE-770

    Allocation of Resources Without Limits or Throttling