What’s Vulnerable › Vulnerabilities
CVE-2025-39698: io_uring/futex: ensure io_futex_wait() cleans up properly on failure
- Severity: medium (CVSS 5.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2025-09-05 · updated 2026-10-19
- Weakness: CWE-416
Description
In the Linux kernel, the following vulnerability has been resolved: io_uring/futex: ensure io_futex_wait() cleans up properly on failure The io_futex_data is allocated upfront and assigned to the io_kiocb async_data field, but the request isn't marked with REQ_F_ASYNC_DATA at that point. Those two should always go together, as the flag tells io_uring whether the field is valid or not. Additionally, on failure cleanup, the futex handler frees the data but does not clear ->async_data. Clear the data and the flag in the error path as well. Thanks to Trend Micro Zero Day Initiative and particularly ReDress for reporting this.
Affected products
- Linux kernel: from 6.7 before 6.12.44; from 6.13 before 6.16.4; 6.17-rc1, 6.17-rc2 — fixed in 6.12.44, 6.16.4
How to fix
Upgrade to a fixed version: Linux kernel 6.12.44, 6.16.4. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/508c1314b342b78591f51c4b5dadee31a88335df
- https://git.kernel.org/stable/c/d34c04152df517c59979b4bf2a47f491e06d3256
- https://git.kernel.org/stable/c/d9f93172820a53ab42c4b0e5e65291f4f9d00ad2
- https://www.zerodayinitiative.com/advisories/ZDI-25-915/
Get alerted when CVE-2025-39698 or the next vulnerability affects your stack