Skip to main content

Linux Kernel CVE-2026-72339

| EUVDEUVD-2026-59238 CRITICAL
2026-08-15 Linux GHSA-447g-7f2j-g4vp
9.8
CVSS 3.1 · Vendor: Linux
Share

Severity by source

Vendor (Linux) PRIMARY
9.8 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
6.5 MEDIUM

RX path is remotely reachable (AV:N) but the trigger needs an uncontrolled memory-allocation failure (AC:H); impact is primarily a crash (A:H) with possible uncontrolled heap corruption (I:L) and no disclosure (C:N).

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:H
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N
SUSE
7.8 HIGH
AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Red Hat
7.0 HIGH
qualitative

Primary rating from Vendor (Linux).

CVSS VectorVendor: Linux

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
High

Lifecycle Timeline

5
Analysis Generated
Aug 17, 2026 - 08:33 vuln.today
CVSS changed
Aug 17, 2026 - 06:22 NVD
9.8 (CRITICAL)
Patch available
Aug 15, 2026 - 07:20 EUVD
CVE Published
Aug 15, 2026 - 05:55 cve.org
CRITICAL 9.8
CVE Published
Aug 15, 2026 - 05:55 cve.org
UNKNOWN (no severity yet)

DescriptionCVE.org

In the Linux kernel, the following vulnerability has been resolved:

qede: fix off-by-one in BD ring consumption on build_skb failure

qede_rx_build_skb() and qede_tpa_rx_build_skb() do not check for a NULL return from qede_build_skb(). When it returns NULL under memory pressure, the functions still consume a BD from the ring before returning NULL. The callers then recycle additional BDs, resulting in one extra BD being consumed (off-by-one). This desynchronizes the BD ring, which can corrupt DMA page reference counts and lead to SLUB freelist corruption.

Commit 4e910dbe3650 ("qede: confirm skb is allocated before using") added a NULL check inside qede_build_skb() to prevent a NULL pointer dereference, but did not address the missing NULL checks in the callers, making this off-by-one reachable.

Fix this by adding NULL checks for the return value of qede_build_skb() in both qede_rx_build_skb() and qede_tpa_rx_build_skb(), returning NULL immediately before any BD ring manipulation.

AnalysisAI

Memory corruption in the Linux kernel qede network driver (QLogic/Marvell FastLinQ 40/100GbE) arises because qede_rx_build_skb() and qede_tpa_rx_build_skb() do not check for a NULL return from qede_build_skb(), consuming an extra buffer descriptor and desynchronizing the RX BD ring. The resulting off-by-one can corrupt DMA page reference counts and trigger SLUB freelist corruption, most plausibly a kernel-crash denial of service rather than reliable code execution. No public exploit has been identified and it is not in CISA KEV; the low EPSS (0.22%, 13th percentile) reflects that the bug only manifests under kernel memory pressure.

Technical ContextAI

The affected component is the qede driver, the Linux in-kernel driver for Marvell/QLogic FastLinQ 40000/41000/45000-series 40 and 100 Gbit Ethernet adapters. On the receive path the driver maps packet data into buffer descriptors (BDs) organized as a producer/consumer ring and hands them to build_skb() to construct an sk_buff. Commit 4e910dbe3650 added a NULL guard inside qede_build_skb() so an allocation failure no longer dereferences NULL, but the callers were not updated: when build_skb() returns NULL under memory pressure the caller has already advanced the ring consumer, then the outer logic recycles additional BDs, over-consuming by one. This desynchronizes the ring and corrupts page refcounts on DMA-mapped buffers. The root-cause class is an off-by-one / improper resource consumption error leading to heap (SLUB) freelist corruption; no CWE was assigned in the input.

RemediationAI

Vendor-released patch: upgrade to a fixed kernel for your branch - 5.10.261, 5.15.212, 6.1.178, 6.6.145, 6.12.97, 6.18.40, 7.1.5, or 7.2-rc3 (or later), which add the missing NULL checks on qede_build_skb() so the callers return before any BD ring manipulation. Apply the stable patch at https://git.kernel.org/stable/c/814a5edac8c9fc04051808d5faaa93768e989281 (and the sibling commits for other branches). Where an immediate kernel update is not possible, the practical compensating control is to reduce the likelihood of the triggering condition: keep the host well clear of memory pressure (right-size workloads, avoid memory overcommit, alarm on low free memory), since the fault only fires when a build_skb() allocation fails. On hosts that do not require these adapters you can avoid the code path entirely by blacklisting the qede module, at the cost of losing connectivity on those QLogic FastLinQ interfaces - not viable where the NIC is the primary uplink. Consult your distribution's advisory for the exact backported package version.

Vendor StatusVendor

SUSE

Severity: Important
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise Desktop 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Affected
SUSE Linux Enterprise High Availability Extension 16.0 Affected

Share

CVE-2026-72339 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy