Critical severity · published Aug 10, 2026
CVE-2026-68117
tipc: clear sock->sk on the failed-insert path in tipc_sk_create()
9.8
CVSS
0.5%
EPSS
No
On KEV
Description
In the Linux kernel, the following vulnerability has been resolved:
tipc: clear sock->sk on the failed-insert path in tipc_sk_create()
When tipc_sk_create() fails to insert the new socket (tipc_sk_insert()
returns non-zero), its error path frees the sk with sk_free() but leaves
sock->sk pointing at the freed object:
if (tipc_sk_insert(tsk)) {
sk_free(sk);
pr_warn("Socket create failed; port number exhausted\n");
return -EINVAL;
}
This is harmless for plain socket(): the syscall layer clears sock->ops
before releasing, so tipc_release() is never called. It is not harmless
on the accept() path. tipc_accept() creates the pre-allocated child
socket with tipc_sk_create(net, new_sock, 0, kern); on failure it leaves
new_sock->sk dangling and new_sock->ops non-NULL, and do_accept() then
fput()s the new file, so __sock_release() -> tipc_release() runs
lock_sock(new_sock->sk) on the freed sk -- a use-after-free write of the
sk_lock spinlock.
tipc_release() already guards this exact "failed accept() releases a
pre-allocated child" case with "if (sk == NULL) return 0;", but the
guard is bypassed because tipc_sk_create() left sock->sk non-NULL
(dangling) rather than NULL.
Clear sock->sk on the failed-insert path so the existing tipc_release()
NULL check fires and the use-after-free is avoided.
The tipc_sk_insert() failure is reached when the per-netns socket
rhashtable hits its max_size (tsk_rht_params.max_size = 1048576, ~2M
elements) -- i.e. once a netns holds ~2M TIPC sockets every insert
returns -E2BIG.
BUG: KASAN: slab-use-after-free in lock_sock_nested (net/core/sock.c:3839)
Write of size 8 at addr ffff8880047cdc38 by task init/1
lock_sock_nested (net/core/sock.c:3839)
tipc_release (net/tipc/socket.c:638)
__sock_release (net/socket.c:710)
sock_close (net/socket.c:1501)
__fput (fs/file_table.c:512)
Allocated by task 1:
sk_alloc (net/core/sock.c:2308)
tipc_sk_create (net/tipc/socket.c:487)
tipc_accept (net/tipc/socket.c:2744)
do_accept (net/socket.c:2034)
Freed by task 1:
__sk_destruct (net/core/sock.c:2391)
tipc_sk_create (net/tipc/socket.c:504)
tipc_accept (net/tipc/socket.c:2744)
do_accept (net/socket.c:2034)
CVSS vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
Attack vector
Network
Complexity
Low
Privileges
None
User interaction
None
Confidentiality
High
Integrity
High
Availability
High
Scope
Unchanged
Exploitation
Is it being used?
Exploit prediction (EPSS)0.5% · higher than 44% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
LI
Linux · Linux
efa78f2ae363428525fb4981bb63c555ee79f3c7 before efebc23e9b29e3e5a9e2127dd066929f7f0d315e; 833ecd0eae76eadf81d6d747bb5bc992d1151867 before 8d6f26d48e61ef34f1921289401dbf36b10816af; 00aff3590fc0a73bddd3b743863c14e76fd35c0c before 82f59aa27f33bd014a7d8739371ab5712d15e33b; 00aff3590fc0a73bddd3b743863c14e76fd35c0c before b07d87b31631edb6529e6cdcca790a7489d1250d; 00aff3590fc0a73bddd3b743863c14e76fd35c0c before dd29891ed840f6b8d020b759d0dc4a00b1d6e4ea; 00aff3590fc0a73bddd3b743863c14e76fd35c0c before 5f5a41a48dbf9eda57b67ce23e548602cf7195a6; +15 more · source: vendor
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-68117
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-68117
git.kernel.org
https://git.kernel.org/stable/c/5f5a41a48dbf9eda57b67ce23e548602cf7195a6
git.kernel.org
https://git.kernel.org/stable/c/82f59aa27f33bd014a7d8739371ab5712d15e33b
git.kernel.org
https://git.kernel.org/stable/c/8d6f26d48e61ef34f1921289401dbf36b10816af
git.kernel.org
https://git.kernel.org/stable/c/b07d87b31631edb6529e6cdcca790a7489d1250d
git.kernel.org
https://git.kernel.org/stable/c/ba0533fc163f905fe817cfabdf8ed4058da44800
git.kernel.org
https://git.kernel.org/stable/c/dd29891ed840f6b8d020b759d0dc4a00b1d6e4ea
More from Linux
9.8
CVE-2025-39682
tls: fix handling of zero-length records on the rx_list
8.8
CVE-2026-53266
netfilter: bridge: make ebt_snat ARP rewrite writable
7.8
CVE-2026-53362
ipv6: account for fraggap on the paged allocation path
7.8
CVE-2026-46300
net: skbuff: preserve shared-frag marker during coalescing
7.8
CVE-2026-31431
crypto: algif_aead - Revert to operating out-of-place
