CVE-2026-98377

CVE-2026-98377

published October 9, 2026

CVSS
—
EPSS
0%
Percentile
4.4
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

vlan: require the MAC header to be present in __vlan_insert_inner_tag()

__vlan_insert_inner_tag() only guarantees head room via skb_cow_head(),

never that mac_len bytes of MAC header are present. Its ETH_HLEN

wrappers - __vlan_insert_tag() under skb_vlan_push(), and

vlan_insert_tag() under validate_xmit_vlan() on the generic transmit

path - therefore rewrite the first 16 bytes at skb->data: a 12-byte

memmove plus two 2-byte stores at +12 and +14. No caller supplies the

bound, while the pop helpers use skb_ensure_writable()/pskb_may_pull().

An IFF_TUN device has hard_header_len == 0, so packet_snd() accepts a

one-byte AF_PACKET/SOCK_RAW frame. The first vlan push only sets a

hwaccel tag; the next - clsact "action vlan push" or

bpf_skb_vlan_push() - enters the helper with skb->len still 1. The

head comes from skbuff_small_head without __GFP_ZERO, so each push

drags bytes from beyond skb->tail into the frame. After three the

one-byte send leaves as 13 bytes carrying 11 bytes of uninitialised

slab:

0000: 5a b3 62 12 80 88 ff ff 00 b3 62 12 81

`------------------------------'

only 0x5a was sent; the rest is slab, here the top 56 bits of a

linear-map address

Require the MAC header the helper rewrites to be present, so such a

frame is dropped rather than transmitted.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00156 · 4.4th percentile
Published
2026-10-09T12:16Z
References (5)
EPSS history
Timeline
  • 10 OCT 03:32Z
    EPSS moved — → 0%
    epss
  • 09 OCT 07:34Z
    vlan: require the MAC header to be present in __vlan_insert_inner_tag()
    cvelistv5
  • 09 OCT 07:34Z
    vlan: require the MAC header to be present in __vlan_insert_inner_tag()
    cvelistv5