{"id":5331,"date":"2026-09-04T18:47:45","date_gmt":"2026-09-04T10:47:45","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-68117"},"modified":"2026-09-04T18:47:45","modified_gmt":"2026-09-04T10:47:45","slug":"cve-2026-68117","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-68117","title":{"rendered":"CVE-2026-68117 [CRITICAL] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\ntipc: clear sock-&gt;sk"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>tipc: clear sock-&gt;sk on the failed-insert path in tipc_sk_create()<\/p>\n<p>When tipc_sk_create() fails to insert the new socket (tipc_sk_insert()<br \/>\nreturns non-zero), its error path frees the sk with sk_free() but leaves<br \/>\nsock-&gt;sk pointing at the freed object:<\/p>\n<p>\tif (tipc_sk_insert(tsk)) {<br \/>\n\t\tsk_free(sk);<br \/>\n\t\tpr_warn(&#8220;Socket create failed; port number exhaustedn&#8221;);<br \/>\n\t\treturn -EINVAL;<br \/>\n\t}<\/p>\n<p>This is harmless for plain socket(): the syscall layer clears sock-&gt;ops<br \/>\nbefore releasing, so tipc_release() is never called. It is not harmless<br \/>\non the accept() path. tipc_accept() creates the pre-allocated child<br \/>\nsocket with tipc_sk_create(net, new_sock, 0, kern); on failure it leaves<br \/>\nnew_sock-&gt;sk dangling and new_sock-&gt;ops non-NULL, and do_accept() then<br \/>\nfput()s the new file, so __sock_release() -&gt; tipc_release() runs<br \/>\nlock_sock(new_sock-&gt;sk) on the freed sk &#8212; a use-after-free write of the<br \/>\nsk_lock spinlock.<\/p>\n<p>tipc_release() already guards this exact &#8220;failed accept() releases a<br \/>\npre-allocated child&#8221; case with &#8220;if (sk == NULL) return 0;&#8221;, but the<br \/>\nguard is bypassed because tipc_sk_create() left sock-&gt;sk non-NULL<br \/>\n(dangling) rather than NULL.<\/p>\n<p>Clear sock-&gt;sk on the failed-insert path so the existing tipc_release()<br \/>\nNULL check fires and the use-after-free is avoided.<\/p>\n<p>The tipc_sk_insert() failure is reached when the per-netns socket<br \/>\nrhashtable hits its max_size (tsk_rht_params.max_size = 1048576, ~2M<br \/>\nelements) &#8212; i.e. once a netns holds ~2M TIPC sockets every insert<br \/>\nreturns -E2BIG.<\/p>\n<p>  BUG: KASAN: slab-use-after-free in lock_sock_nested (net\/core\/sock.c:3839)<br \/>\n  Write of size 8 at addr ffff8880047cdc38 by task init\/1<br \/>\n   lock_sock_nested (net\/core\/sock.c:3839)<br \/>\n   tipc_release (net\/tipc\/socket.c:638)<br \/>\n   __sock_release (net\/socket.c:710)<br \/>\n   sock_close (net\/socket.c:1501)<br \/>\n   __fput (fs\/file_table.c:512)<br \/>\n  Allocated by task 1:<br \/>\n   sk_alloc (net\/core\/sock.c:2308)<br \/>\n   tipc_sk_create (net\/tipc\/socket.c:487)<br \/>\n   tipc_accept (net\/tipc\/socket.c:2744)<br \/>\n   do_accept (net\/socket.c:2034)<br \/>\n  Freed by task 1:<br \/>\n   __sk_destruct (net\/core\/sock.c:2391)<br \/>\n   tipc_sk_create (net\/tipc\/socket.c:504)<br \/>\n   tipc_accept (net\/tipc\/socket.c:2744)<br \/>\n   do_accept (net\/socket.c:2034)<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>tipc: clear sock-&gt;sk on the failed-insert path in tipc_sk_create()<\/p>\n<p>When tipc_sk_create() fails to insert the new socket (tipc_sk_i<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-5331","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/5331","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln"}],"about":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/types\/vuln"}],"wp:attachment":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5331"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5331"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5331"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}