CVE-2026-64009CWE-191CWE-787

CVE-2026-64009

High · published July 19, 2026

CVSS v3.1
7.8
EPSS
0%
Percentile
3.3
In the wild
Unconfirmed
What it is

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

xfrm: Check for underflow in xfrm_state_mtu

Leo Lin reported OOB write issue in esp component:

xfrm_state_mtu() returns u32 but performs its arithmetic in unsigned

modulo-2^32 space using an attacker-influenced "header_len + authsize +

net_adj" subtracted from a small "mtu" argument. A nobody user can

install an IPv4 ESP tunnel SA with a large authentication key

(XFRMA_ALG_AUTH_TRUNC, e.g. hmac(sha512), 64-byte key, 64-byte trunc),

configure a small interface MTU (68 bytes), and set XFRMA_TFCPAD to a

large value. When a single UDP datagram is then sent through the

tunnel, xfrm_state_mtu() underflows to a near-2^32 value, and

esp_output() consumes it as a signed int via:

padto = min(x->tfcpad, xfrm_state_mtu(x, mtu_cached))

esp.tfclen = padto - skb->len (assigned to int)

esp.tfclen ends up negative (e.g. -207). It is sign-extended to size_t

when passed to memset() inside esp_output_fill_trailer(), producing a

~16 EB write of zeroes at skb_tail_pointer(skb). KASAN logs it as

"Write of size 18446744073709551537 at addr ffff888...".

Check for underflow and return 1. This causes the sendmsg attempt to

fail with ENETUNREACH.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00143 · 3.3th percentile
Weaknesses
CWE-191 · Integer Underflow (Wrap or Wraparound); CWE-787 · Out-of-bounds Write
Published
2026-07-19T20:17Z
Affected products (12)
ProductVersionsFixed in
linux/linux_kernel≥ 2.6.22, < 5.10.2595.10.259
linux/linux_kernel≥ 5.11, < 5.15.2105.15.210
linux/linux_kernel≥ 5.16, < 6.1.1766.1.176
linux/linux_kernel≥ 6.2, < 6.6.1436.6.143
linux/linux_kernel≥ 6.7, < 6.12.936.12.93
linux/linux_kernel≥ 6.13, < 6.18.356.18.35
linux/linux_kernel≥ 6.19, < 7.0.127.0.12
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (8)
EPSS history
Timeline
  • 19 JUL 14:56Z
    xfrm: Check for underflow in xfrm_state_mtu
    cvelistv5