PT-2026-116789 · Linux · Linux

CVE-2026-98570

·

Published

2026-10-18

·

Updated

2026-10-18

None

No severity ratings or metrics are available. When they are, we'll update the corresponding info on the page.
In the Linux kernel, the following vulnerability has been resolved:
net: ipv6: keep room for the mac header in dst dev overhead()
The seg6, ioam6 and rpl lwtunnels size their skb cow head() request as the length they are about to push plus dst dev overhead(), then push the new headers and rebuild the mac header below them with skb mac header rebuild(). That rebuild needs skb->mac len of headroom, but dst dev overhead() leaves LL RESERVED SPACE() of the egress device, 16 bytes for plain Ethernet.
Where the mac header is longer than that, as it is on ingress through a VLAN device with reorder hdr off, the rebuild runs out of room: skb set mac header(skb, -skb->mac len) computes a negative offset, stores it unchecked in the u16 skb->mac header, and the memmove that follows writes skb->mac len bytes about 64 KB past skb->head. Forwarding plain ping6 traffic through such a device reproduces it on all five seg6 encapsulation modes and on the rpl and ioam6 inline paths; skb->mac header comes back as 65534 on a 704-byte head.
Return the larger of the two. The helper already returns skb->mac len when it has no dst, so this only makes the other branch agree, and it covers every caller rather than each call site in turn.
Found an issue in the description? Have something to add? Feel free to write us 👾

Related Identifiers

CVE-2026-98570

Affected Products

Linux