CVE-2024-56709

Summary

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

io_uring: check if iowq is killed before queuing

task work can be executed after the task has gone through io_uring termination, whether it's the final task_work run or the fallback path. In this case, task work will find ->io_wq being already killed and null'ed, which is a problem if it then tries to forward the request to io_queue_iowq(). Make io_queue_iowq() fail requests in this case.

Note that it also checks PF_KTHREAD, because the user can first close a DEFER_TASKRUN ring and shortly after kill the task, in which case ->iowq check would race.

Affected Software

VendorProductVersion RangeStatus
LinuxLinux773af69121ecc6c53d192661af8d53bb3db028ae < 534d59ab38010aada88390db65985e65d0de7d9eaffected
LinuxLinux773af69121ecc6c53d192661af8d53bb3db028ae < 2ca94c8de36091067b9ce7527ae8db3812d38781affected
LinuxLinux773af69121ecc6c53d192661af8d53bb3db028ae < 4f95a2186b7f2af09331e1e8069bcaf34fe019cfaffected
LinuxLinux773af69121ecc6c53d192661af8d53bb3db028ae < dbd2ca9367eb19bc5e269b8c58b0b1514ada9156affected
LinuxLinux5.14affected
LinuxLinux0 < 5.14unaffected
LinuxLinux6.1.122 <= 6.1.*unaffected
LinuxLinux6.6.68 <= 6.6.*unaffected
LinuxLinux6.12.7 <= 6.12.*unaffected
LinuxLinux6.13 <= *unaffected

Weaknesses

ADP Enrichment

CVE Program Container

Additional References

References