Skip to main content

Linux Kernel EUVDEUVD-2026-39191

| CVE-2026-53240 HIGH
Use After Free (CWE-416)
2026-06-25 416baaa9-dc9f-4396-8d5f-8c081fb06d67 GHSA-5m64-3x43-vxjx
8.8
CVSS 3.1 · Vendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Share

Severity by source

Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67) PRIMARY
8.8 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
vuln.today AI
7.1 HIGH

Network-delivered IP-TFS packets but exploitation hinges on winning a kernel race (AC:H) over a configured SA (PR:L); UAF most reliably yields corruption/crash (I/A:H) with limited leak (C:L).

3.1 AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:H/A:H
4.0 AV:N/AC:H/AT:P/PR:L/UI:N/VC:L/VI:H/VA:H/SC:N/SI:N/SA:N
SUSE
5.9 MEDIUM
AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H

Primary rating from Vendor (416baaa9-dc9f-4396-8d5f-8c081fb06d67).

CVSS VectorVendor: 416baaa9-dc9f-4396-8d5f-8c081fb06d67

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

Lifecycle Timeline

5
Analysis Generated
Jun 28, 2026 - 09:42 vuln.today
CVSS changed
Jun 28, 2026 - 08:22 NVD
8.8 (HIGH)
Patch available
Jun 25, 2026 - 10:32 EUVD
CVE Published
Jun 25, 2026 - 09:16 cve.org
UNKNOWN (no severity yet)
CVE Published
Jun 25, 2026 - 09:16 cve.org
HIGH 8.8

DescriptionCVE.org

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

xfrm: iptfs: fix use-after-free on first_skb in __input_process_payload

__input_process_payload() stores first_skb into xtfs->ra_newskb under drop_lock when starting partial reassembly, then unlocks and breaks out of the processing loop. The post-loop check reads xtfs->ra_newskb without the lock to decide whether first_skb is still owned:

if (first_skb && first_iplen && !defer && first_skb != xtfs->ra_newskb)

Between spin_unlock and this read, a concurrent CPU running iptfs_reassem_cont() (or the drop_timer hrtimer) can complete reassembly, NULL xtfs->ra_newskb, and free the skb. The check then evaluates first_skb != NULL as true, and pskb_trim/ip_summed/consume_skb operate on the freed skb - a use-after-free in skbuff_head_cache.

Replace the unlocked read with a local bool that records whether first_skb was handed to the reassembly state in the current call. The flag is set after the existing spin_unlock, before the break, using the pointer equality that is stable at that point (first_skb == skb iff first_skb was stored in ra_newskb).

AnalysisAI

Use-after-free in the Linux kernel's XFRM IP-TFS (IPsec Traffic Flow Confidentiality, RFC 9347) inbound reassembly path lets a race between __input_process_payload() and a concurrent iptfs_reassem_cont()/drop_timer handler operate on a freed sk_buff in skbuff_head_cache, causing memory corruption. The flaw affects kernels from 6.14 (where IP-TFS was introduced) running an IPsec SA in IP-TFS mode, and is fixed in stable releases including 6.18.36, 7.0.13 and 7.1. There is no public exploit identified at time of analysis and EPSS exploitation probability is very low (0.17%, 7th percentile).

Technical ContextAI

The vulnerability lives in the kernel's XFRM (IPsec transformation) subsystem, specifically the IP-TFS / AGGFRAG mode added in 6.14 that aggregates and fragments inner packets across the tunnel for traffic-flow confidentiality. On the receive side, __input_process_payload() handles partial reassembly: it stores first_skb into the per-state xtfs->ra_newskb under drop_lock, releases the lock, and breaks out of the processing loop. The bug is a textbook CWE-416 use-after-free caused by reading shared state (xtfs->ra_newskb) without holding drop_lock after releasing it. A concurrent CPU executing iptfs_reassem_cont(), or the drop_timer hrtimer, can finish reassembly, NULL out ra_newskb and free the skb in the window between the unlock and the post-loop ownership check, after which pskb_trim()/ip_summed/consume_skb() touch freed memory. The fix replaces the unlocked re-read with a local boolean set under stable pointer equality (first_skb == skb) before the break, so ownership is decided without racing on shared state.

RemediationAI

Vendor-released patch: update to a fixed stable kernel - 6.18.36, 7.0.13, or 7.1 (or your distribution's backport carrying commits 8d9a79fbf517, eb48730bb827, or ff2ee35b6ce5). The fixes are available at https://git.kernel.org/stable/c/8d9a79fbf5172d9c4c0146057af2360913265a11, https://git.kernel.org/stable/c/eb48730bb827d1550401a5d391903f9d90b493c8 and https://git.kernel.org/stable/c/ff2ee35b6ce5fa8a8e24ea50b15733d5c8780198. If you cannot patch immediately, the most effective compensating control is to avoid the vulnerable code path entirely by not configuring IPsec SAs in IP-TFS/AGGFRAG mode (use a conventional ESP tunnel instead) - the trade-off is loss of traffic-flow-confidentiality padding that IP-TFS provides. Where IP-TFS must remain enabled, restrict which peers can establish SAs and apply strict IPsec peer authentication so only trusted endpoints can drive the reassembly path, reducing the set of parties able to attempt the race.

Vendor StatusVendor

SUSE

Severity: Moderate
Product Status
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise Desktop 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Availability Extension 15 SP7 Not-Affected
SUSE Linux Enterprise High Performance Computing 15 SP7 Not-Affected

Share

EUVD-2026-39191 vulnerability details – vuln.today

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