Description
In the Linux kernel, the following vulnerability has been resolved: crypto: qcom-rng - fix infinite loop on requests not multiple of WORD_SZ The commit referenced in the Fixes tag removed the 'break' from the else branch in qcom_rng_read(), causing an infinite loop whenever 'max' is not a multiple of WORD_SZ. This can be reproduced e.g. by running: kcapi-rng -b 67 >/dev/null There are many ways to fix this without adding back the 'break', but they all seem more awkward than simply adding it back, so do just that. Tested on a machine with Qualcomm Amberwing processor.
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
a8e32bbb96c25b7ab29b1894dcd45e0b3b08fd9d to < 71a89789552b7faf3ef27969b9bc783fa0df3550affected184f7bd08ce56f003530fc19f160d54e75bf5c9d to < 8be06f62b426801dba43ddf8893952a0e62ab6aeaffected0f9b7b8df17525e464294c916acc8194ce38446b to < 233a3cc60e7a8fe0be8cf9934ae7b67ba25a866caffectedab9337c7cb6f875b6286440b1adfbeeef2b2b2bd to < 8a06f25f5941c145773204f2f7abef95b4ffb8ceaffecteda680b1832ced3b5fa7c93484248fd221ea0d614b to < 05d4d17475d8d094c519bb51658bc47899c175e3affecteda680b1832ced3b5fa7c93484248fd221ea0d614b to < 16287397ec5c08aa58db6acf7dbc55470d78087daffected485995cbc98a4f77cfd4f8ed4dd7ff8ab262964daffected4.19.236 to < 4.19.245affected5.4.187 to < 5.4.196affected5.10.108 to < 5.10.118affected5.15.31 to < 5.15.42affected5.16.17 to < 5.17affected
Linux Linux
Default version status: affected
5.17affected0 to < 5.17unaffected4.19.245 to ≤ 4.19.*unaffected5.4.196 to ≤ 5.4.*unaffected5.10.118 to ≤ 5.10.*unaffected5.15.42 to ≤ 5.15.*unaffected5.17.10 to ≤ 5.17.*unaffected5.18 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/71a89789552b7faf3ef27969b9bc783fa0df3550 ↗
- https://git.kernel.org/stable/c/8be06f62b426801dba43ddf8893952a0e62ab6ae ↗
- https://git.kernel.org/stable/c/233a3cc60e7a8fe0be8cf9934ae7b67ba25a866c ↗
- https://git.kernel.org/stable/c/8a06f25f5941c145773204f2f7abef95b4ffb8ce ↗
- https://git.kernel.org/stable/c/05d4d17475d8d094c519bb51658bc47899c175e3 ↗
- https://git.kernel.org/stable/c/16287397ec5c08aa58db6acf7dbc55470d78087d ↗