Skip to main content

Linux Kernel CVE-2026-64132

| EUVDEUVD-2026-45817 CRITICAL
Use After Free (CWE-416)
2026-07-19 Linux GHSA-ph8w-wrch-h8v5
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
7.4 HIGH

Remotely reachable without auth (AV:N/PR:N), but AC:H because it needs a non-default IOAM node plus a cloned/short-headroom skb; UaF yields kernel info-leak (C:H) and crash (A:H), no clear integrity impact.

3.1 AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:H
4.0 AV:N/AC:H/AT:P/PR:N/UI:N/VC:H/VI:N/VA:H/SC:N/SI:N/SA:N
SUSE
CRITICAL
qualitative
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
Jul 20, 2026 - 17:38 vuln.today
CVSS changed
Jul 20, 2026 - 15:22 NVD
9.8 (CRITICAL)
Patch available
Jul 19, 2026 - 17:03 EUVD
CVE Published
Jul 19, 2026 - 15:40 cve.org
UNKNOWN (no severity yet)
CVE Published
Jul 19, 2026 - 15:40 cve.org
CRITICAL 9.8

DescriptionCVE.org

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

ipv6: ioam: refresh hdr pointer before ioam6_event()

Reported by Sashiko:

In ipv6_hop_ioam(), the hdr pointer is initialized to point into the skb's linear data buffer. Later, the code calls skb_ensure_writable(), which might reallocate the buffer:

if (skb_ensure_writable(skb, optoff + 2 + hdr->opt_len)) goto drop;

/* Trace pointer may have changed */ trace = (struct ioam6_trace_hdr *)(skb_network_header(skb) + optoff + sizeof(*hdr));

ioam6_fill_trace_data(skb, ns, trace, true);

ioam6_event(IOAM6_EVENT_TRACE, dev_net(skb->dev), GFP_ATOMIC, (void *)trace, hdr->opt_len - 2);

If the skb is cloned or lacks sufficient linear headroom, skb_ensure_writable() will invoke pskb_expand_head(), which reallocates the skb's data buffer and frees the old one, invalidating pointers to it. While the code recalculates the trace pointer immediately after the call to skb_ensure_writable(), it fails to recalculate the hdr pointer.

This patch fixes the above by recalculating the hdr pointer before passing hdr->opt_len to ioam6_event(), so that we avoid any UaF.

AnalysisAI

Use-after-free in the Linux kernel's IPv6 In-situ OAM (IOAM) hop-by-hop option handler (ipv6_hop_ioam) lets a crafted IPv6 packet trigger access to a freed skb data buffer on hosts configured as IOAM nodes. After skb_ensure_writable() reallocates the socket buffer via pskb_expand_head(), the code refreshes the trace pointer but leaves the stale hdr pointer, so hdr->opt_len is later read from freed memory when calling ioam6_event(), enabling potential information disclosure or kernel crash. This is a resolved upstream fix with no public exploit identified at time of analysis and a low EPSS score (0.18%, 7th percentile).

Technical ContextAI

IOAM (In-situ Operations, Administration, and Maintenance, RFC 9197) is a Linux IPv6 feature that records telemetry into a hop-by-hop extension header as packets traverse configured nodes. The vulnerable path is ipv6_hop_ioam() in net/ipv6/exthdrs.c, which parses the IOAM option from the skb linear data buffer. The root cause is a classic CWE-416 use-after-free: skb_ensure_writable() may call pskb_expand_head() to reallocate and free the original skb->data buffer when the skb is cloned or lacks linear headroom. The developer correctly recomputed the 'trace' pointer against the new skb_network_header() but forgot the 'hdr' pointer, so the subsequent read of hdr->opt_len dereferences the freed allocation. The affected CPE is cpe:2.3:a:linux:linux across kernel versions from 6.9 (where IOAM event support landed) up to the fixed releases.

RemediationAI

Vendor-released patch: upgrade to a fixed Linux kernel - 6.12.92, 6.18.34, 7.0.11, or 7.1 (or your distribution's backported build) - via the stable commits at https://git.kernel.org/stable/c/769723124b7c3b2bfea4cf68ad292698b87c8d01 and the companion commits 24de676da63c1122d2c13b0d546238b66d1b4e62, 5af905aa8e91ff8d94572a1e089558f21dcf24ed, and e46e6bc97fb1f339730ff1ba74267fbf48e7a422. If patching cannot be scheduled immediately, the most effective compensating control is to not deploy the host as an IOAM node: avoid configuring IOAM namespaces/schemas (ip ioam) and do not enable the IOAM hop-by-hop insert/parse path, which removes the reachable code entirely at the cost of losing in-situ telemetry. Where IOAM is genuinely needed, restrict which IPv6 sources can send hop-by-hop options to the node with edge/ingress filtering, accepting that legitimate telemetry traffic from untrusted segments will also be dropped.

Vendor StatusVendor

SUSE

Severity: Critical
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-64132 vulnerability details – vuln.today

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