{"id":25492,"date":"2026-09-18T04:31:27","date_gmt":"2026-09-17T20:31:27","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90083"},"modified":"2026-09-18T04:31:27","modified_gmt":"2026-09-17T20:31:27","slug":"cve-2026-90083","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-90083","title":{"rendered":"CVE-2026-90083 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nnet\/sched: act_ife: O"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net\/sched: act_ife: Only operate on Ethernet frames<\/p>\n<p>act_ife encapsulates\/decapsulates the original Ethernet header and uses<br \/>\nskb-&gt;dev-&gt;hard_header_len as the length of that header. That is only<br \/>\ncorrect for Ethernet devices: on a device where hard_header_len does not<br \/>\nmatch the L2 header that was actually pulled (PPP reports PPP_HDRLEN<br \/>\nwhile nothing is stripped on ingress), the ingress skb_push()\/skb_pull()<br \/>\nuse the wrong length and can hit skb_under_panic when headroom is tight.<\/p>\n<p>IFE is Ethernet-only by design &#8211; it builds an outer ethhdr, rewrites<br \/>\nh_source\/h_dest\/h_proto, and calls eth_type_trans() on decode &#8211; so<br \/>\ninstead of trying to make the offsets work for arbitrary link types,<br \/>\nsimply drop packets that do not carry an Ethernet header.<\/p>\n<p>Checking skb-&gt;dev-&gt;type alone is not enough. We have to cater for a<br \/>\ncorner case where mirred can redirect an skb from a non-Ethernet device<br \/>\nto an Ethernet one, and skb-&gt;dev then says nothing about the framing the<br \/>\nskb actually has: an skb redirected from ppp0 reaches the target&#8217;s ingress<br \/>\nhook with mac_len 0 and no Ethernet header at all. So at ingress also<br \/>\nrequire mac_len to be ETH_HLEN. On egress mac_len is not maintained, so<br \/>\nthe device type is all we have; a bogus redirect there yields a malformed<br \/>\nframe rather than an out-of-bounds push, and it would be malformed with or<br \/>\nwithout IFE.<\/p>\n<p>That corner case is not theoretical &#8211; redirecting from ppp0 into a veth<br \/>\nthat has an ife encode action on its ingress hook panics without this<br \/>\npatch:<\/p>\n<p>  skbuff: skb_under_panic: len:98 put:14 head:ffff88800e410000<br \/>\n          data:ffff88800e40fff5 tail:0x57 end:0x640 dev:veth3<br \/>\n  kernel BUG at net\/core\/skbuff.c:214!<br \/>\n  Call Trace:<br \/>\n   skb_push (net\/core\/skbuff.c:224 net\/core\/skbuff.c:2657)<br \/>\n   tcf_ife_act (net\/sched\/act_ife.c:829 net\/sched\/act_ife.c:874)<br \/>\n   tc_run (net\/core\/dev.c:4463)<br \/>\n   netif_receive_skb (net\/core\/dev.c:6463 net\/core\/dev.c:6522)<br \/>\n   tcf_mirred_to_dev (net\/sched\/act_mirred.c:248 net\/sched\/act_mirred.c:328)<br \/>\n   tcf_mirred_act (net\/sched\/act_mirred.c:489)<br \/>\n   tc_run (net\/core\/dev.c:4463)<br \/>\n   process_backlog (net\/core\/dev.c:6728)<\/p>\n<p>With Ethernet framing guaranteed, use ETH_HLEN instead of<br \/>\nhard_header_len.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>net\/sched: act_ife: Only operate on Ethernet frames<\/p>\n<p>act_ife encapsulates\/decapsulates the original Ethernet header and uses<br \/>\nskb-&gt;d<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-25492","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/25492","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=25492"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=25492"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=25492"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}