{"id":24737,"date":"2026-09-16T20:32:42","date_gmt":"2026-09-16T12:32:42","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90049"},"modified":"2026-09-16T20:32:42","modified_gmt":"2026-09-16T12:32:42","slug":"cve-2026-90049","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90049","title":{"rendered":"CVE-2026-90049 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nnet: skbuff: don&#8217;t sk"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net: skbuff: don&#8217;t skb_tx_error() the source skb in skb_zerocopy()<\/p>\n<p>skb_zerocopy() copies frags from @from into @to. On an<br \/>\nskb_orphan_frags() failure it calls skb_tx_error(@from), a destructive<br \/>\noperation on the source skb the copy helper does not own. That completes<br \/>\n@from&#8217;s zerocopy uarg and clears SKBFL_ALL_ZEROCOPY, including the<br \/>\nSKBFL_SHARED_FRAG page-ownership marker.<\/p>\n<p>Both callers already report the failure on their own drop path.<br \/>\nnfnetlink_queue does it at nla_put_failure, and Open vSwitch does it in<br \/>\nthe flow-miss drop arm of ovs_dp_process_packet(), so nothing is lost by<br \/>\ndropping it here.<\/p>\n<p>On Open vSwitch&#8217;s OVS_ACTION_ATTR_USERSPACE path the skb is not freed on<br \/>\nthis error: do_execute_actions() ignores output_userspace()&#8217;s return<br \/>\nvalue and, unless the upcall was the last action, keeps forwarding the<br \/>\nsame skb through the flow&#8217;s remaining actions. The uarg is completed<br \/>\nwhile that skb is still in flight, telling the producer its buffers are<br \/>\nfree, and SKBFL_SHARED_FRAG is cleared on an skb the rest of the stack<br \/>\nstill handles. That flag is what makes esp_input() call skb_cow_data()<br \/>\ninstead of decrypting in place, so a later local ESP delivery can<br \/>\ndecrypt over frags the skb does not own privately.<\/p>\n<p>Leave error reporting to the callers.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net: skbuff: don&#8217;t skb_tx_error() the source skb in skb_zerocopy()<\/p>\n<p>skb_zerocopy() copies frags from @from into @to. On an<br \/>\nskb_orph<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-24737","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/24737","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=24737"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=24737"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=24737"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}