{"id":41274,"date":"2026-10-19T00:32:57","date_gmt":"2026-10-18T16:32:57","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98802"},"modified":"2026-10-19T00:32:57","modified_gmt":"2026-10-18T16:32:57","slug":"cve-2026-98802","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98802","title":{"rendered":"CVE-2026-98802 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nseg6: ensure packet d"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>seg6: ensure packet data is writable before modifying SRH and IPv6 DA<\/p>\n<p>advance_nextseg() modifies the SRH Segments Left field and the IPv6<br \/>\ndestination address without ensuring the packet data is writable.<br \/>\nseg6_next_csid_advance_arg() has the same problem when it advances the<br \/>\nNEXT-C-SID argument in the destination address.<\/p>\n<p>The skb may be cloned, for example by an AF_PACKET socket receiving on<br \/>\nthe ingress device. advance_nextseg() and seg6_next_csid_advance_arg()<br \/>\nthen write into the packet data shared with the clone. A read from that<br \/>\nsocket can return the modified packet instead of the received one. The<br \/>\nsimplified path below shows this for advance_nextseg():<\/p>\n<p>__netif_receive_skb_one_core<br \/>\n  __netif_receive_skb_core<br \/>\n    deliver_skb               [orig: users=2, cloned=0]<br \/>\n      packet_rcv<br \/>\n        skb_clone             clone queued to the AF_PACKET socket<br \/>\n        consume_skb(orig)     [orig: users=1, cloned=1]<br \/>\n  ipv6_rcv<br \/>\n    ip6_rcv_core              skb_share_check: no-op [orig: users=1]<br \/>\n    [&#8230;]<br \/>\n      input_action_end_core<br \/>\n        advance_nextseg       writes into the data shared with the clone<\/p>\n<p>Call skb_ensure_writable() in advance_nextseg() and in<br \/>\nseg6_next_csid_advance_arg() before they modify the packet data.<br \/>\nskb_ensure_writable() may reallocate skb-&gt;head, which invalidates the<br \/>\npointers into the packet data taken before the call.<br \/>\nadvance_nextseg() now returns a valid SRH pointer, or NULL if<br \/>\nskb_ensure_writable() fails.<br \/>\nseg6_next_csid_advance_arg() takes the pointer to the destination<br \/>\naddress from the skb after skb_ensure_writable().<br \/>\nOn failure, the callers drop the packet with SKB_DROP_REASON_NOMEM.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>seg6: ensure packet data is writable before modifying SRH and IPv6 DA<\/p>\n<p>advance_nextseg() modifies the SRH Segments Left field and t<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-41274","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/41274","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=41274"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=41274"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=41274"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}