Description
In the Linux kernel, the following vulnerability has been resolved: loop: loop_set_status_from_info() check before assignment In loop_set_status_from_info(), lo->lo_offset and lo->lo_sizelimit should be checked before reassignment, because if an overflow error occurs, the original correct value will be changed to the wrong value, and it will not be changed back. More, the original patch did not solve the problem, the value was set and ioctl returned an error, but the subsequent io used the value in the loop driver, which still caused an alarm: loop_handle_cmd do_req_filebacked loff_t pos = ((loff_t) blk_rq_pos(rq) << 9) + lo->lo_offset; lo_rw_aio cmd->iocb.ki_pos = pos
Affected products
Version statuses are supplied by the assigning organization. Consult the original record for detailed ranges and platform conditions.
Linux Linux
Default version status: unaffected
2035c770bfdbcc82bd52e05871a7c82db9529e0f to < 6bdf4e6dfb60cbb6121ccf027d97ed2ec97c0bcbaffecteda217715338fd48f72114725aa7a40e484a781ca7 to < 832580af82ace363205039a8e7c4ef04552ccc1aaffected13b2856037a651ba3ab4a8b25ecab3e791926da3 to < 2ea7077748e5d7cc64f1c31342c802fe66ea7426affectedb40877b8562c5720d0a7fce20729f56b75a3dede to < 861021710bba9dfa0749a3c209a6c1773208b1f1affected6858933131d0dadac071c4d33335a9ea4b8e76cf to < c79a924ed6afac1708dfd370ba66bcf6a852ced6affected0455bef69028c65065f16bb04635591b2374249b to < 3e7d0968203d668af6036b9f9199c7b62c8a3581affectedc490a0b5a4f36da3918181a8acdc6991d967c5f3 to < 4be26d553a3f1d4f54f25353d1496c562002126daffectedc490a0b5a4f36da3918181a8acdc6991d967c5f3 to < 258809bf22bf71d53247856f374f2b1d055f2fd4affectedc490a0b5a4f36da3918181a8acdc6991d967c5f3 to < 9f6ad5d533d1c71e51bdd06a5712c4fbc8768dfaaffected18e28817cb516b39de6281f6db9b0618b2cc7b42affectedadf0112d9b8acb03485624220b4934f69bf13369affected9be7fa7ead18a48940df7b59d993bbc8b9055c15affected4.19.257 to < 4.19.312affected5.4.212 to < 5.4.274affected5.10.140 to < 5.10.173affected5.15.64 to < 5.15.100affected4.9.327 to < 4.10affected4.14.292 to < 4.15affected5.19.6 to < 5.20affected
Linux Linux
Default version status: affected
6.0affected0 to < 6.0unaffected4.19.312 to ≤ 4.19.*unaffected5.4.274 to ≤ 5.4.*unaffected5.10.173 to ≤ 5.10.*unaffected5.15.100 to ≤ 5.15.*unaffected6.1.18 to ≤ 6.1.*unaffected6.2.5 to ≤ 6.2.*unaffected6.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/6bdf4e6dfb60cbb6121ccf027d97ed2ec97c0bcb ↗
- https://git.kernel.org/stable/c/832580af82ace363205039a8e7c4ef04552ccc1a ↗
- https://git.kernel.org/stable/c/2ea7077748e5d7cc64f1c31342c802fe66ea7426 ↗
- https://git.kernel.org/stable/c/861021710bba9dfa0749a3c209a6c1773208b1f1 ↗
- https://git.kernel.org/stable/c/c79a924ed6afac1708dfd370ba66bcf6a852ced6 ↗
- https://git.kernel.org/stable/c/3e7d0968203d668af6036b9f9199c7b62c8a3581 ↗
- https://git.kernel.org/stable/c/4be26d553a3f1d4f54f25353d1496c562002126d ↗
- https://git.kernel.org/stable/c/258809bf22bf71d53247856f374f2b1d055f2fd4 ↗
- https://git.kernel.org/stable/c/9f6ad5d533d1c71e51bdd06a5712c4fbc8768dfa ↗