CVE-2026-53223CWE-125

CVE-2026-53223

High · published June 25, 2026

CVSS v3.1
7.1
EPSS
0%
Percentile
2.5
In the wild
Unconfirmed
What it is

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

net: guard timestamp cmsgs to real error queue skbs

skb_is_err_queue() treats PACKET_OUTGOING as the sole marker for an skb

from sk_error_queue. That assumption is not true for AF_PACKET sockets:

outgoing packet taps are also delivered to packet sockets with

skb->pkt_type == PACKET_OUTGOING, but their skb->cb is owned by AF_PACKET

instead of struct sock_exterr_skb.

If such an skb is received with timestamping enabled, the generic

timestamp cmsg path can read AF_PACKET control-buffer state as

sock_exterr_skb::opt_stats. With SO_RXQ_OVFL enabled, the packet drop

counter overlaps opt_stats. An odd drop count makes the path emit

SCM_TIMESTAMPING_OPT_STATS with skb->len and skb->data. For non-linear

skbs this copies past the linear head and can trigger hardened usercopy or

disclose adjacent heap contents.

Keep skb_is_err_queue() local to net/socket.c, but make it verify that

the PACKET_OUTGOING marker is paired with the sock_rmem_free destructor

installed by sock_queue_err_skb(). AF_PACKET receive skbs use normal

receive ownership and no longer pass as error-queue skbs, while legitimate

sk_error_queue entries keep the PACKET_OUTGOING marker and sock_rmem_free

ownership.

The record
Technical detail
CVSS v3.1
7.1 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00131 · 2.5th percentile
Weakness
CWE-125 · Out-of-bounds Read
Published
2026-06-25T13:16Z
Affected products (21)
ProductVersionsFixed in
linux/linux_kernel≥ 4.10.14, < 4.114.11
linux/linux_kernel≥ 4.11.1, < 5.10.2595.10.259
linux/linux_kernel≥ 5.11, < 5.15.2105.15.210
linux/linux_kernel≥ 5.16, < 6.1.1766.1.176
linux/linux_kernel≥ 6.2, < 6.6.1436.6.143
linux/linux_kernel≥ 6.7, < 6.12.946.12.94
linux/linux_kernel≥ 6.13, < 6.18.366.18.36
linux/linux_kernel≥ 6.19, < 7.0.137.0.13
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (10)
EPSS history
Timeline
  • 25 JUN 08:39Z
    net: guard timestamp cmsgs to real error queue skbs
    cvelistv5