CVE-2026-68127CWE-416

CVE-2026-68127

Critical · published August 10, 2026

CVSS v3.1
9.8
EPSS
1%
Percentile
44.4
In the wild
Unconfirmed
What it is

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

ila: reload IPv6 header after pskb_may_pull in checksum adjust

ila_csum_adjust_transport() caches ip6h = ipv6_hdr(skb) before calling

pskb_may_pull(). On a non-linear skb whose transport header sits in a page

fragment, pskb_may_pull() can call __pskb_pull_tail() / pskb_expand_head()

and free the old skb head, leaving ip6h dangling; the following

get_csum_diff(ip6h, p) then reads freed memory. ila_update_ipv6_locator()

uses ip6h (and the iaddr derived from it) again after the csum-adjust

call and additionally writes the new locator through that pointer.

Impact: a remote IPv6 packet routed through a configured ILA

csum-adjust-transport route or receive-side mapping triggers a

slab-use-after-free in ila_update_ipv6_locator() (KASAN). The route or

mapping requires CAP_NET_ADMIN to configure, but trigger packets are

unauthenticated once it exists.

Reload ip6h after each pskb_may_pull() in ila_csum_adjust_transport()

before the csum-diff read. In ila_update_ipv6_locator() only the

ILA_CSUM_ADJUST_TRANSPORT case pulls the skb, so reload ip6h and iaddr in

that case alone before the destination-address write; the neutral-map

modes never pull and keep their cached pointers.

The record
Technical detail
CVSS v3.1
9.8 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00536 · 44.4th percentile
Weakness
CWE-416 · Use After Free
Published
2026-08-10T17:19Z
References (8)
EPSS history
Timeline
  • 10 AUG 11:58Z
    ila: reload IPv6 header after pskb_may_pull in checksum adjust
    cvelistv5