CVE-2026-72019

macsec: don't read an unset MAC header in macsec_encrypt()

State
Published
Severity
7.3 High
Published
Aug 15, 2026
Updated
Oct 19, 2026
Reserved
Aug 9, 2026

Read the record on cve.org

Description

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

macsec: don't read an unset MAC header in macsec_encrypt()

macsec_encrypt() reads the Ethernet header via eth_hdr(skb) (skb->head + skb->mac_header) to memmove() the 12 source/destination MAC bytes forward and make room for the SecTAG.

On the AF_PACKET SOCK_RAW + PACKET_QDISC_BYPASS transmit path the skb reaches the macsec ndo_start_xmit() with the MAC header unset, so eth_hdr(skb) resolves to skb->head + (u16)~0 and the read is out of bounds: a 12-byte heap over-read that is also emitted on the wire as the frame's outer source/destination MAC. KASAN reports a slab-out-of-bounds read in macsec_start_xmit() on 6.0; on current mainline a CONFIG_DEBUG_NET build flags it as an unset mac header in skb_mac_header().

On the TX path the L2 header is at skb->data, so use skb_eth_hdr(), added by commit 96cc4b69581d ("macvlan: do not assume mac_header is set in macvlan_broadcast()") for exactly this purpose.

Scores

CVSSScoreVectorSource
3.17.3 HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:HLinux

Weaknesses

Affected Products

ProductVersions
LinuxLinux
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before b6cec6187b8632423cd99a94fd5e5ba165fa2a33Affected
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before 3adea1b1c04b57e08a5c12a1f42483760581ce61Affected
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before dc9ffa1905e72f026d080880a2e4cfc42aa91000Affected
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before f21fa533a3ed15ada74106aac4b9ddd078fc6b7aAffected
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before e17a42199824973cd8212e95b21ffadf4114a21bAffected
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before 2cf10d042562283ff4ae97c02d0993d4f1b5ea29Affected
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before c39087ad0b97fc11a3b058dfc8db9fd370762cb9Affected
  • c09440f7dcb304002dfced8c0fea289eb25f2da0 to before f5089008f90c0a7c5520dff3934e0af00adf322dAffected
LinuxLinux
  • 4.6Affected
  • before 4.6Not affected
  • 5.10.265 through 5.10.*Not affected
  • 5.15.216 through 5.15.*Not affected
  • 6.1.178 through 6.1.*Not affected
  • 6.6.145 through 6.6.*Not affected
  • 6.12.97 through 6.12.*Not affected
  • 6.18.40 through 6.18.*Not affected
  • 7.1.5 through 7.1.*Not affected
  • 7.2 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.