Description
In the Linux kernel, the following vulnerability has been resolved: f2fs: fix dereference of stale list iterator after loop body The list iterator variable will be a bogus pointer if no break was hit. Dereferencing it (cur->page in this case) could load an out-of-bounds/undefined value making it unsafe to use that in the comparision to determine if the specific element was found. Since 'cur->page' *can* be out-ouf-bounds it cannot be guaranteed that by chance (or intention of an attacker) it matches the value of 'page' even though the correct element was not found. This is fixed by using a separate list iterator variable for the loop and only setting the original variable if a suitable element was found. Then determing if the element was found is simply checking if the variable is set.
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
8c242db9b8c01b252290e23827163787f07e01d1 to < 385edd3ce5b4b1e9d31f474a5e35a39779ec1110affected8c242db9b8c01b252290e23827163787f07e01d1 to < 5e47a7add3dda7f236548c5ec3017776dc2a729faffected8c242db9b8c01b252290e23827163787f07e01d1 to < 51d584704d18e60fa473823654f35611c777b291affected8c242db9b8c01b252290e23827163787f07e01d1 to < 45b2b7d7108ae1e25a5036cab04ab9273e792332affected8c242db9b8c01b252290e23827163787f07e01d1 to < b26e1c777890e4b938136deb8ec07a29f33862e4affected8c242db9b8c01b252290e23827163787f07e01d1 to < ed7efc472c00986dcd6903ab6ed165c7fa167674affected8c242db9b8c01b252290e23827163787f07e01d1 to < 2aaf51dd39afb6d01d13f1e6fe20b684733b37d5affected
Linux Linux
Default version status: affected
4.12affected0 to < 4.12unaffected4.19.247 to ≤ 4.19.*unaffected5.4.198 to ≤ 5.4.*unaffected5.10.121 to ≤ 5.10.*unaffected5.15.46 to ≤ 5.15.*unaffected5.17.14 to ≤ 5.17.*unaffected5.18.3 to ≤ 5.18.*unaffected5.19 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/385edd3ce5b4b1e9d31f474a5e35a39779ec1110 ↗
- https://git.kernel.org/stable/c/5e47a7add3dda7f236548c5ec3017776dc2a729f ↗
- https://git.kernel.org/stable/c/51d584704d18e60fa473823654f35611c777b291 ↗
- https://git.kernel.org/stable/c/45b2b7d7108ae1e25a5036cab04ab9273e792332 ↗
- https://git.kernel.org/stable/c/b26e1c777890e4b938136deb8ec07a29f33862e4 ↗
- https://git.kernel.org/stable/c/ed7efc472c00986dcd6903ab6ed165c7fa167674 ↗
- https://git.kernel.org/stable/c/2aaf51dd39afb6d01d13f1e6fe20b684733b37d5 ↗