CVE-2026-68169: mptcp: pm: userspace: fix use-after-free in get_local_id
In the Linux kernel, the following vulnerability has been resolved:
mptcp: pm: userspace: fix use-after-free in getlocalid
In mptcppmuserspacegetlocalid(), the address entry is looked up under spinlock, but its id is read after dropping the lock. A concurrent deletion can free the entry between the unlock and the read, leading to UAF.
The race window is narrow. It was reproduced only with a locally constructed stress test that repeatedly overlaps an MPJOIN SYN with a MPTCPPMCMDSUBFLOWDESTROY request.
However, the KASAN report below confirms that the race is reachable:
[ 666.319376] BUG: KASAN: slab-use-after-free in mptcpuserspacepmgetlocalid+0x1dc/0x1f0 [ 666.319386] Read of size 1 at addr ffff888124845610 by task swapper/0/0 ... [ 666.319401] Call Trace: [ 666.319405] <IRQ> [ 666.319408] dumpstacklvl+0x53/0x70 [ 666.319412] printaddressdescription.constprop.0+0x2c/0x3b0 [ 666.319418] printreport+0xbe/0x2b0 [ 666.319421] ? mptcpuserspacepmgetlocalid+0x1dc/0x1f0 [ 666.319423] kasanreport+0xce/0x100 [ 666.319426] ? mptcpuserspacepmgetlocalid+0x1dc/0x1f0 [ 666.319429] mptcpuserspacepmgetlocalid+0x1dc/0x1f0 [ 666.319433] mptcppmgetlocalid+0x371/0x440 ... [ 666.319821] Allocated by task 45539: [ 666.319844] kasansavestack+0x33/0x60 [ 666.319855] kasansavetrack+0x14/0x30 [ 666.319858] kasankmalloc+0x8f/0xa0 [ 666.319863] kmallocnoprof+0x1e7/0x520 [ 666.319867] sockkmalloc+0xdf/0x130 [ 666.319885] sockkmemdup+0x1b/0x40 [ 666.319888] mptcpuserspacepmappendnewlocaladdr+0x261/0x500 [ 666.319910] mptcppmnlannouncedoit+0x16a/0x610 ... [ 666.319967] Freed by task 45560: [ 666.319988] kasansavestack+0x33/0x60 [ 666.319991] kasansavetrack+0x14/0x30 [ 666.319994] kasansavefreeinfo+0x3b/0x60 [ 666.319998] kasanslabfree+0x43/0x70 [ 666.320000] kfree+0x166/0x440 [ 666.320003] sockkfrees+0x1d/0x50 [ 666.320007] mptcpuserspacepmdeletelocaladdr.isra.0+0x157/0x200 [ 666.320011] mptcppmnlsubflowdestroydoit+0x51d/0xea0
Fix by copying the id into a local variable while still holding the lock, and use -1 as a "not found" sentinel.
Affected Software
Event History
Frequently Asked Questions
What is the severity of CVE-2026-68169?
The severity of CVE-2026-68169 is rated at 48.
How do I fix CVE-2026-68169?
To fix CVE-2026-68169, update the Linux kernel to the latest version where the vulnerability has been patched.
What type of vulnerability is CVE-2026-68169?
CVE-2026-68169 is categorized as a Use After Free vulnerability.
What systems are affected by CVE-2026-68169?
CVE-2026-68169 affects the Linux kernel implementations that utilize the mptcp functionality.
What impact does CVE-2026-68169 have?
CVE-2026-68169 can potentially lead to security compromises due to concurrent deletions while accessing memory.