{"id":7466,"date":"2026-09-04T18:49:34","date_gmt":"2026-09-04T10:49:34","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-74476"},"modified":"2026-09-04T18:49:34","modified_gmt":"2026-09-04T10:49:34","slug":"cve-2026-74476","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-74476","title":{"rendered":"CVE-2026-74476 [CRITICAL] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nveth: convert frag_li"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>veth: convert frag_list skbs before running XDP<\/p>\n<p>A frag_list skb can reach veth with data_len set but nr_frags zero.<br \/>\nveth_convert_skb_to_xdp_buff() only converts skbs that are shared,<br \/>\nlocked, have frags[], or do not have enough headroom. It later uses<br \/>\nskb_is_nonlinear() to decide whether to set XDP_FLAGS_HAS_FRAGS and<br \/>\nxdp_frags_size.<\/p>\n<p>That exposes frag_list data to XDP as if it were stored in frags[], but<br \/>\nfrags[] is empty. AF_XDP copy mode can then trust the bogus XDP fragment<br \/>\nmetadata, walk an empty fragment entry, and crash in memcpy() from<br \/>\n__xsk_rcv().<\/p>\n<p>Route non-linear skbs through skb_pp_cow_data() before exposing them to<br \/>\nXDP, and only advertise XDP frags when the resulting skb has frags[].<br \/>\nskb_copy_bits() already handles frag_list input, and skb_pp_cow_data()<br \/>\nbuilds frags[] output with skb_add_rx_frag(), which is the<br \/>\nrepresentation XDP multi-buffer expects.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>veth: convert frag_list skbs before running XDP<\/p>\n<p>A frag_list skb can reach veth with data_len set but nr_frags zero.<br \/>\nveth_convert_s<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-7466","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/7466","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=7466"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=7466"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=7466"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}