{"id":21487,"date":"2026-09-12T04:31:15","date_gmt":"2026-09-11T20:31:15","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89565"},"modified":"2026-09-12T04:31:15","modified_gmt":"2026-09-11T20:31:15","slug":"cve-2026-89565","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-89565","title":{"rendered":"CVE-2026-89565 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nipip: fix skb leak in"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>ipip: fix skb leak in collect_md mode when metadata_dst allocation fails<\/p>\n<p>In collect_md mode ipip_tunnel_rcv() returns 0 without freeing the skb<br \/>\nwhen ip_tun_rx_dst() fails to allocate the metadata_dst. ipip_rcv() and<br \/>\nmplsip_rcv() are registered as xfrm_tunnel handlers, so tunnel4_rcv()<br \/>\nand tunnelmpls4_rcv() read the zero return as &#8220;the packet has been<br \/>\nconsumed&#8221; and do not free it either. The skb is leaked.<\/p>\n<p>The other tunnel drivers all dispose of the packet at this point:<br \/>\nip6_tunnel.c jumps to its drop label, ip_gre.c and ip6_gre.c return<br \/>\nPACKET_REJECT, which makes gre_rcv() free the skb. Only ipip returns 0.<\/p>\n<p>Jump to the existing drop label instead. It frees the skb and still<br \/>\nreturns 0, so the packet keeps being reported as consumed, which is what<br \/>\nwe want here: the outer header has already been pulled, and neither the<br \/>\nremaining handlers nor an ICMP unreachable have any use for it.<\/p>\n<p>Triggering this needs an ipip or mplsip tunnel in collect_md mode and an<br \/>\natomic allocation failure, which is why it has gone unnoticed.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>ipip: fix skb leak in collect_md mode when metadata_dst allocation fails<\/p>\n<p>In collect_md mode ipip_tunnel_rcv() returns 0 without fr<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-21487","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/21487","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=21487"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=21487"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=21487"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}