← Back to search

CVE-2026-98364

7.8 HIGH

Published 2026-10-06 · Updated 2026-10-07

AI risk analysis

Summary
The Linux kernel's IPsec implementation has a use-after-free vulnerability in the XFRM subsystem where network device references are not properly held under RCU during bundle creation, potentially allowing attackers to corrupt memory or execute code when concurrent network interface removal occurs.
Exploitability
Exploitation requires a specific timing window where a network interface is concurrently removed while an IPsec policy lookup is in progress, making it moderately difficult but possible with careful crafting of network traffic patterns.
Blast radius
The vulnerability affects systems running Linux kernels with IPsec enabled and active policies, potentially leading to kernel memory corruption that could result in system instability or privilege escalation.
Detection
No reliable host or network indicator is derivable from the published description.
Prioritized remediation
Apply the kernel patch that resolves the xfrm use-after-free issue in the net/ipv6/xfrm6_policy.c file by upgrading to a kernel version that includes this fix, specifically targeting kernels with the fix for CVE-2026-98364.
kernelipsecmemory-corruptionnetwork

Analysis generated locally by garnet-coder (no data left the box). AI-assisted — verify against primary sources before acting.

NVD description

In the Linux kernel, the following vulnerability has been resolved: xfrm: hold net_device reference under RCU in bundle creation xfrm_bundle_create() and xfrm_create_dummy_bundle() read dst->dev into a local pointer without taking a device reference, then pass it to xfrm_fill_dst(). A concurrent RTM_DELLINK replaces dst->dev via dst_dev_put() and frees the old net_device, causing a use-after-free when xfrm6_fill_dst() later dereferences the stale dev pointer. BUG: KASAN: slab-use-after-free in xfrm6_fill_dst+0x82c/0x860 (net/ipv6/xfrm6_policy.c:86 netdev_hold()) Read of size 8 at addr ffff8880142fe588 by task exploit/153 Call Trace: xfrm6_fill_dst+0x82c/0x860 xfrm_resolve_and_create_bundle+0x21d4/0x2bd0 xfrm_lookup_with_ifid+0x485/0x1640 ip6_dst_lookup_flow+0x19b/0x1e0 udpv6_sendmsg+0x1443/0x2dd0 Fix this by reading dst->dev via dst_dev_rcu() and keeping the RCU read-side critical section active until xfrm_fill_dst() has taken the required device references.

CVSS vector

CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H

All references

Source data: NVD (nvd.nist.gov), public domain. Exploit-DB.ai adds local AI analysis for defensive use only.

Related CVEs

Related by shared AI tags and CWE weakness class. Browse the full archive.