CVE-2026-64523

Critical

Description

In the Linux kernel, the following vulnerability has been resolved: net/handshake: Take a long-lived file reference at submit handshake_nl_accept_doit() needs the file pointer backing req->hr_sk->sk_socket to survive the window between handshake_req_next() and the subsequent FD_PREPARE() and get_file(). The submit-side sock_hold() does not provide that. sk_refcnt keeps struct sock alive, but struct socket is owned by sock->file: when the consumer fputs the last file reference, sock_release() tears the socket down regardless of any sock_hold. Add an hr_file pointer to struct handshake_req and acquire an explicit reference on sock->file during handshake_req_submit(). handshake_complete() and handshake_req_cancel() release the reference on the completion-bit-winning path. The submit error path must also release the file reference, but after rhashtable insertion a concurrent handshake_req_cancel() can discover the request and race the error path. Gate the error-path cleanup -- sk_destruct restoration, fput, and request destruction -- with test_and_set_bit(HANDSHAKE_F_REQ_COMPLETED), the same serialization handshake_complete() and handshake_req_cancel() already use. When cancel has already claimed ownership, the submit error path returns without touching the request; socket teardown handles final destruction. The accept-side dereferences are not yet retargeted; that change comes in the next patch.

SeverityCritical
CVSS9.8
Exploit probability—
ProductLinux
PublishedJul 25, 2026
First seenJul 25, 2026

How to fix

Update
  • Linux Linux22e371a93563c30ebebc576db049785e0d7fc617, 685b10dd0e32c7782cead16c8cf055c609678583, b913801ad9b9a51437d84d030ec6843e08976bd6, 16eaba5aa89c04eea125905bb8f988c1897f4f29, 09dba37eee70d0596e26645015f1aa95a9848e9d or later

Affected products

ProductAffected versionsFixed in
Linux Linux3b3009ea8abb713b022d94fba95ec270cf6e7eae ≤ v < 22e371a93563c30ebebc576db049785e0d7fc617, 3b3009ea8abb713b022d94fba95ec270cf6e7eae ≤ v < 685b10dd0e32c7782cead16c8cf055c609678583, 3b3009ea8abb713b022d94fba95ec270cf6e7eae ≤ v < b913801ad9b9a51437d84d030ec6843e08976bd6, 3b3009ea8abb713b022d94fba95ec270cf6e7eae ≤ v < 16eaba5aa89c04eea125905bb8f988c1897f4f29, 3b3009ea8abb713b022d94fba95ec270cf6e7eae ≤ v < 09dba37eee70d0596e26645015f1aa95a9848e9d, 6.422e371a93563c30ebebc576db049785e0d7fc617, 685b10dd0e32c7782cead16c8cf055c609678583, b913801ad9b9a51437d84d030ec6843e08976bd6, 16eaba5aa89c04eea125905bb8f988c1897f4f29, 09dba37eee70d0596e26645015f1aa95a9848e9d

Check your version

Choose the product and enter the version you run to see whether it falls in the affected range.

In the Intelligence 360 plan

Attack Surface Management

See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.