io_uring/kbuf: check if target buffer list is still legacy on recycle
- Published
- Last modified
- Where the record stands: published, rejected by its publisher, or superseded by another id.What do these mean? →
- published
- Whether CISA lists it in its Known Exploited Vulnerabilities catalog: proof that attackers are using it.What do these mean? →
- Not listed in CISA KEV
- Fix
- Fixed in 6.1.167, 6.6.130, 6.12.78, 6.18.19, 6.19.9
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
- Exploitation: none
- Automatable: no
- Technical impact: total
Summary
In the Linux kernel, the following vulnerability has been resolved: io_uring/kbuf: check if target buffer list is still legacy on recycle There's a gap between when the buffer was grabbed and when it potentially gets recycled, where if the list is empty, someone could've upgraded it to a ring provided type. This can happen if the request is forced via io-wq. The legacy recycling is missing checking if the buffer_list still exists, and if it's of the correct type. Add those checks.
Timeline
- CVE published
- CISA SSVC assessment
Exploitation: none · Automatable: no · Technical impact: total
- Record last updated
Affected versions
- Linux Linux
From c7fb19428d67dd0a2a78a4f237af01d39c78dc5a · fixed in a7b33671e418fca507feebd1d56e7f4952a4b25c; From c7fb19428d67dd0a2a78a4f237af01d39c78dc5a · fixed in 439a6728ec4641ffad1ca796622c19bc525e570f; From c7fb19428d67dd0a2a78a4f237af01d39c78dc5a · fixed in f3fb54e7a8b4aadcc2836ee463eec8c88709b8aa; From c7fb19428d67dd0a2a78a4f237af01d39c78dc5a · fixed in 50ad880db3013c6fee0ef13781762a39e2e7ef83; From c7fb19428d67dd0a2a78a4f237af01d39c78dc5a · fixed in 97b57f69fee1b61b41acbf37e7720cac9d389fa4; From c7fb19428d67dd0a2a78a4f237af01d39c78dc5a · fixed in c2c185be5c85d37215397c8e8781abf0a69bec1f
- Linux Linux
5.19
- KernelLinux
From 5.19.0 · fixed in 6.1.167; From 6.2.0 · fixed in 6.6.130; From 6.7.0 · fixed in 6.12.78; From 6.13.0 · fixed in 6.18.19; From 6.19.0 · fixed in 6.19.9