{"id":41004,"date":"2026-10-19T00:31:48","date_gmt":"2026-10-18T16:31:48","guid":{"rendered":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98532"},"modified":"2026-10-19T00:31:48","modified_gmt":"2026-10-18T16:31:48","slug":"cve-2026-98532","status":"publish","type":"vuln","link":"https:\/\/www.54iter.cn\/?vuln=cve-2026-98532","title":{"rendered":"CVE-2026-98532 &#8211; In the Linux kernel, the following vulnerability has been resolved:\n\nipv6: do not let ipv6"},"content":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>ipv6: do not let ipv6_find_hdr() return an offset past the packet end<\/p>\n<p>ipv6_find_hdr() walks the extension header chain, skipping each header by<br \/>\nthe length that header itself declares.  ipv6_optlen() returns up to 2048,<br \/>\nand the skip is never checked against skb-&gt;len, so the offset stored in<br \/>\n*offset can point past the end of the packet.<\/p>\n<p>openvswitch installs that offset as the transport header, and<br \/>\nupdate_ipv6_checksum() then reads and writes the transport checksum field<br \/>\nout of bounds:<\/p>\n<p>  BUG: KASAN: slab-use-after-free in inet_proto_csum_replace16+0x445\/0x470<br \/>\n  Read of size 2 at addr ffff88810b754b06 by task ovs_ipv6_oob\/629<br \/>\n  CPU: 4 UID: 1000 PID: 629 Comm: ovs_ipv6_oob Tainted: G N 7.3.0-rc3+ #348<br \/>\n  Call Trace:<br \/>\n   inet_proto_csum_replace16+0x445\/0x470<br \/>\n   set_ipv6_addr+0x3dd\/0x460<br \/>\n   do_execute_actions+0x6a3d\/0x7c40<br \/>\n   ovs_execute_actions+0xfd\/0x480<br \/>\n   ovs_packet_cmd_execute+0xc38\/0xf20<br \/>\n   genl_rcv_msg+0x59e\/0x870<br \/>\n   netlink_rcv_skb+0x18b\/0x450<br \/>\n   genl_rcv+0x2d\/0x40<br \/>\n   netlink_unicast+0x6bc\/0xa20<\/p>\n<p>  The buggy address belongs to the object at ffff88810b754980<br \/>\n   which belongs to the cache skbuff_small_head of size 704<br \/>\n  The buggy address is located 390 bytes inside of<br \/>\n   freed 704-byte region [ffff88810b754980, ffff88810b754c40)<\/p>\n<p>Other callers use that offset too, so bound it here rather than in one<br \/>\ncaller.<\/p>\n<p>Reject a header whose declared length does not fit in the packet.<br \/>\nipv6_find_hdr() already fails with -EBADMSG on a malformed chain, so this<br \/>\nadds no new failure mode.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In the Linux kernel, the following vulnerability has been resolved:<\/p>\n<p>ipv6: do not let ipv6_find_hdr() return an offset past the packet end<\/p>\n<p>ipv6_find_hdr() walks the extension header chain, skipping e<\/p>\n","protected":false},"template":"","meta":[],"categories":[],"tags":[],"class_list":["post-41004","vuln","type-vuln","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/www.54iter.cn\/index.php?rest_route=\/wp\/v2\/vuln\/41004","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=41004"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=41004"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.54iter.cn\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=41004"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}