PT-2026-61295 · Linux+1 · Linux Kernel+1

CVE-2026-63978

·

Published

2026-07-19

·

Updated

2026-09-07

CVSS v3.1

9.8

Critical

VectorAV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Name of the Vulnerable Software and Affected Versions Linux kernel (affected versions not specified)
Description An issue exists in the net/handshake component where pending requests are not properly drained during net namespace exit. This occurs because the arguments to the list splice init() function in handshake net exit() are reversed, causing the drain loop to run zero iterations. Consequently, pending handshake requests maintain references to socket files and handshake req allocations after the net namespace is destroyed. Correcting the splice direction introduces a list-corruption race condition. A concurrent call to handshake req cancel() can trigger remove pending(), which may call remove pending locked() and list del init() on an entry while the drain is iterating, leading to list corruption or hitting LIST POISON. To resolve this, remove pending() must check the HANDSHAKE F NET DRAINING flag under hn lock and report the request as not found if a drain is in progress. Additionally, using list del init() instead of list del() in the drain prevents req->hr list from carrying LIST POISON after the entry is released.
Recommendations At the moment, there is no information about a newer version that contains a fix for this vulnerability.

Exploit

Found an issue in the description? Have something to add? Feel free to write us 👾

Related Identifiers

AZL-92820
CVE-2026-63978
USN-8593-1
USN-8603-1
USN-8618-1
USN-8663-1
USN-8664-1
USN-8728-1

Affected Products

Linux Kernel
Ubuntu