{"id":6809,"date":"2026-09-04T18:49:18","date_gmt":"2026-09-04T10:49:18","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-72157"},"modified":"2026-09-04T18:49:18","modified_gmt":"2026-09-04T10:49:18","slug":"cve-2026-72157","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-72157","title":{"rendered":"CVE-2026-72157 [HIGH] &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nnet: thunderbolt: Fix"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net: thunderbolt: Fix frags[] overflow by bounding frame_count<\/p>\n<p>tbnet_poll() assembles a multi-frame ThunderboltIP packet into one skb. The<br \/>\nfirst frame goes into the skb linear area and every further frame is added as<br \/>\na page fragment.<\/p>\n<p>\tskb_add_rx_frag(skb, skb_shinfo(skb)-&gt;nr_frags,<br \/>\n\t\t\tpage, hdr_size, frame_size,<br \/>\n\t\t\tTBNET_RX_PAGE_SIZE &#8211; hdr_size);<\/p>\n<p>A packet of frame_count frames therefore ends up with frame_count &#8211; 1<br \/>\nfragments. tbnet_check_frame() only bounds the peer supplied frame_count to<br \/>\nTBNET_RING_SIZE \/ 4 (64), which is far above MAX_SKB_FRAGS (17 by default). A<br \/>\npeer that sends a packet of 19 or more small frames pushes nr_frags past<br \/>\nMAX_SKB_FRAGS, so skb_add_rx_frag() writes past skb_shinfo()-&gt;frags[] and<br \/>\ncorrupts memory after the shared info.<\/p>\n<p>Tighten the start of packet bound to MAX_SKB_FRAGS + 1 so a packet can never<br \/>\nproduce more fragments than frags[] can hold. This matches the recent skb<br \/>\nfrags overflow fixes in other receive paths, for example f0813bcd2d9d (&#8220;net:<br \/>\nwwan: t7xx: fix potential skb-&gt;frags overflow in RX path&#8221;) and 600dc40554dc<br \/>\n(&#8220;net: usb: cdc-phonet: fix skb frags[] overflow in rx_complete()&#8221;).<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net: thunderbolt: Fix frags[] overflow by bounding frame_count<\/p>\n<p>tbnet_poll() assembles a multi-frame ThunderboltIP packet into one <\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-6809","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/6809","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=6809"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=6809"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=6809"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}