CVE-2025-38730CWE-787

CVE-2025-38730

High · published September 4, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
5.5
In the wild
Unconfirmed
What it is

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

io_uring/net: commit partial buffers on retry

Ring provided buffers are potentially only valid within the single

execution context in which they were acquired. io_uring deals with this

and invalidates them on retry. But on the networking side, if

MSG_WAITALL is set, or if the socket is of the streaming type and too

little was processed, then it will hang on to the buffer rather than

recycle or commit it. This is problematic for two reasons:

1) If someone unregisters the provided buffer ring before a later retry,

then the req->buf_list will no longer be valid.

2) If multiple sockers are using the same buffer group, then multiple

receives can consume the same memory. This can cause data corruption

in the application, as either receive could land in the same

userspace buffer.

Fix this by disallowing partial retries from pinning a provided buffer

across multiple executions, if ring provided buffers are used.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00166 · 5.5th percentile
Weakness
CWE-787 · Out-of-bounds Write
Published
2025-09-04T20:15Z
Affected products (5)
ProductVersionsFixed in
linux/linux_kernel≥ 6.4, < 6.6.1036.6.103
linux/linux_kernel≥ 6.7, < 6.12.446.12.44
linux/linux_kernel≥ 6.13, < 6.15.116.15.11
linux/linux_kernel≥ 6.16, < 6.16.26.16.2
linux/linux_kernelall versions—
References (5)
EPSS history
Timeline
  • 04 SEP 15:33Z
    io_uring/net: commit partial buffers on retry
    cvelistv5