CVE-2026-43039

net: ti: icssg-prueth: fix missing data copy and wrong recycle in ZC RX dispatch

Critical · published May 1, 2026

CVSS v3.1
9.8
EPSS
1%
Percentile
45.4
In the wild
Unconfirmed
What it is

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

net: ti: icssg-prueth: fix missing data copy and wrong recycle in ZC RX dispatch

emac_dispatch_skb_zc() allocates a new skb via napi_alloc_skb() but

never copies the packet data from the XDP buffer into it. The skb is

passed up the stack containing uninitialized heap memory instead of

the actual received packet, leaking kernel heap contents to userspace.

Copy the received packet data from the XDP buffer into the skb using

skb_copy_to_linear_data().

Additionally, remove the skb_mark_for_recycle() call since the skb is

backed by the NAPI page frag allocator, not page_pool. Marking a

non-page_pool skb for recycle causes the free path to return pages to

a page_pool that does not own them, corrupting page_pool state.

The non-ZC path (emac_rx_packet) does not have these issues because it

uses napi_build_skb() to wrap the existing page_pool page directly,

requiring no copy, and correctly marks for recycle since the page comes

from page_pool_dev_alloc_pages().

The record
Technical detail
CVSS v3.1
9.8 · CRITICAL
Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00553 · 45.4th percentile
Published
2026-05-01T14:15Z
EPSS history
Timeline
  • 01 MAY 14:15Z
    net: ti: icssg-prueth: fix missing data copy and wrong recycle in ZC RX dispatch
    cvelistv5