CVE-2025-38730

Severity CVSS v4.0:
Pending analysis
Type:
CWE-787 Out-of-bounds Write
Publication date:
04/09/2025
Last modified:
25/11/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> io_uring/net: commit partial buffers on retry<br /> <br /> Ring provided buffers are potentially only valid within the single<br /> execution context in which they were acquired. io_uring deals with this<br /> and invalidates them on retry. But on the networking side, if<br /> MSG_WAITALL is set, or if the socket is of the streaming type and too<br /> little was processed, then it will hang on to the buffer rather than<br /> recycle or commit it. This is problematic for two reasons:<br /> <br /> 1) If someone unregisters the provided buffer ring before a later retry,<br /> then the req-&gt;buf_list will no longer be valid.<br /> <br /> 2) If multiple sockers are using the same buffer group, then multiple<br /> receives can consume the same memory. This can cause data corruption<br /> in the application, as either receive could land in the same<br /> userspace buffer.<br /> <br /> Fix this by disallowing partial retries from pinning a provided buffer<br /> across multiple executions, if ring provided buffers are used.

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.4 (including) 6.6.103 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.7 (including) 6.12.44 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.13 (including) 6.15.11 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 6.16 (including) 6.16.2 (excluding)
cpe:2.3:o:linux:linux_kernel:6.17:rc1:*:*:*:*:*:*