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
Affected Products
Linux