{"id":28998,"date":"2026-09-25T20:31:40","date_gmt":"2026-09-25T12:31:40","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97566"},"modified":"2026-09-25T20:31:40","modified_gmt":"2026-09-25T12:31:40","slug":"cve-2026-97566","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-97566","title":{"rendered":"CVE-2026-97566 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nmptcp: pm: kernel: dr"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>mptcp: pm: kernel: drop pending ADD_ADDR when removing ID0<\/p>\n<p>The in-kernel MPTCP path manager can leave a stale ADD_ADDR announcement<br \/>\nentry alive when removing the id 0 endpoint. This happens because the id 0<br \/>\nremoval path does not tear down pending announcements, unlike the non-zero<br \/>\nid path.<\/p>\n<p>When the PM later reselects id 0 after adding another signal endpoint, it<br \/>\nfinds the stale anno_list entry and hits WARN_ON_ONCE(mptcp_pm_is_kernel())<br \/>\nin mptcp_pm_announced_alloc().<\/p>\n<p>Root cause: asymmetry between removal paths.<br \/>\n&#8211; Non-zero id path: mptcp_nl_remove_subflow_and_signal_addr() calls<br \/>\n  mptcp_pm_remove_announced() to clean up.<br \/>\n&#8211; Id 0 path: mptcp_nl_remove_id_zero_address() skips cleanup entirely.<\/p>\n<p>Fix by making the id 0 path symmetric: call mptcp_pm_announced_remove()<br \/>\nand decrement add_addr_signaled before queuing the RM_ADDR.<\/p>\n<p>Subtle detail: signal endpoints are stored in anno_list with port 0, but<br \/>\nmsk_local carries the connection&#8217;s local port. In other words, entries<br \/>\nlinked to ID0 paths should have port == 0. A follow-up patch will ensure<br \/>\nthat. mptcp_pm_announced_remove() uses use_port=true for comparison. So<br \/>\nclear the port before the lookup.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>mptcp: pm: kernel: drop pending ADD_ADDR when removing ID0<\/p>\n<p>The in-kernel MPTCP path manager can leave a stale ADD_ADDR announcemen<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-28998","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/28998","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=28998"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=28998"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=28998"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}