Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: io_uring/waitid: clear waitid info before copying it to userspace IORING_OP_WAITID stores its result fields in struct io_waitid::info and later copies them to userspace siginfo. The prep path initializes the request arguments, but it does not initialize info itself. If the wait operation completes without reporting a child event, the common wait code can return without writing wo_info. In that case io_waitid_finish() still copies iw->info to userspace, exposing stale bytes from the reused io_kiocb command storage. Clear the result storage during prep so the io_uring path matches the regular waitid syscall, which uses a zero-initialized struct waitid_info.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected f31ecf671ddc498f20219453395794ff2383e06b before 954518e5a4a5efc5033253f6e36fc7b9f98363a3; affected f31ecf671ddc498f20219453395794ff2383e06b before b737c6612c60c23b40a9f31749b99e6f61943847; affected f31ecf671ddc498f20219453395794ff2383e06b before 4d2a0de611ab60d02fc768ae0cd5918b16bd5474; affected f31ecf671ddc498f20219453395794ff2383e06b before 93d93f5f8da791e98159795c6ef683f45bd95d13 |
| Linux / Linux | affected 6.7; unaffected 0 before 6.7; unaffected 6.12.92 through 6.12.*; unaffected 6.18.34 through 6.18.*; unaffected 7.0.11 through 7.0.*; unaffected 7.1 through * |
CWE
No CWE identifiers supplied.