{"id":5430,"date":"2026-09-04T18:47:49","date_gmt":"2026-09-04T10:47:49","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-68338"},"modified":"2026-09-04T18:47:49","modified_gmt":"2026-09-04T10:47:49","slug":"cve-2026-68338","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-68338","title":{"rendered":"CVE-2026-68338 [HIGH] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nnet\/packet: avoid fan"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net\/packet: avoid fanout hook re-registration after unregister<\/p>\n<p>packet_set_ring() temporarily detaches a socket from packet delivery while<br \/>\nreconfiguring its ring. It records the previous running state, clears<br \/>\npo-&gt;num, unregisters the protocol hook when needed, drops po-&gt;bind_lock,<br \/>\nand later restores po-&gt;num and re-registers the hook from the saved<br \/>\nwas_running value.<\/p>\n<p>That unlocked window can race with NETDEV_UNREGISTER. The notifier can<br \/>\nobserve the socket as not running, skip __unregister_prot_hook(), and<br \/>\ninvalidate the per-socket binding by setting po-&gt;ifindex to -1 and clearing<br \/>\npo-&gt;prot_hook.dev. A one-member fanout group can still retain its shared<br \/>\nfanout hook device pointer. When packet_set_ring() resumes, re-registering<br \/>\nsolely from the stale was_running state can re-add the fanout hook after<br \/>\nthe device has been unregistered.<\/p>\n<p>Treat po-&gt;ifindex == -1 as an invalidated binding after reacquiring<br \/>\npo-&gt;bind_lock. This is distinct from ifindex 0, the normal<br \/>\nunbound\/wildcard state: ifindex -1 marks an existing device binding that<br \/>\nwas invalidated when the device was unregistered. Restore po-&gt;num as<br \/>\nbefore, but do not re-register the hook if device unregister already<br \/>\ndetached the socket.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net\/packet: avoid fanout hook re-registration after unregister<\/p>\n<p>packet_set_ring() temporarily detaches a socket from packet deliver<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-5430","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/5430","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=5430"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5430"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5430"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}