Description
In the Linux kernel, the following vulnerability has been resolved: crypto: qcom-rng - Remove crypto_rng interface qcom-rng.c exposes the same hardware through two completely separate interfaces, crypto_rng and hwrng. However, the implementation of this is buggy because it permits generation operations from these interfaces to run concurrently with each other, accessing the same registers. That is, qcom_rng_generate() synchronizes with itself but not with qcom_hwrng_read(). This results in potential repetition of output from the RNG, output of non-random values, etc. Fortunately, there's actually no point in hardware RNG drivers implementing the crypto_rng interface. It's not actually used by anything besides the "rng" algorithm type of AF_ALG, which in turn is not actually used in practice. Other crypto_rng hardware drivers are likewise being phased out, leaving just the hwrng support. Thus, remove it to simplify the code and avoid conflict (and confusion) with the hwrng interface which is the one that actually matters.
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
f29cd5bb64c258f29b4c49452532481f50eb43ca to < bb474dcd9d0224264a27a60891f00872b879835faffectedf29cd5bb64c258f29b4c49452532481f50eb43ca to < 14d9ee8286460a7b82f3b8610b5c7ebf4550b06baffectedf29cd5bb64c258f29b4c49452532481f50eb43ca to < 843e2bdaf8deb8bc341203094dfe582e38ea4af2affectedf29cd5bb64c258f29b4c49452532481f50eb43ca to < 669d940351eda316b82e24986e2e0e057653ce7daffectedf29cd5bb64c258f29b4c49452532481f50eb43ca to < 2ecdf5c9910e20f73639bc322f0518a3439d17c0affected
Linux Linux
Default version status: affected
6.7affected0 to < 6.7unaffected6.12.108 to ≤ 6.12.*unaffected6.18.49 to ≤ 6.18.*unaffected7.1.13 to ≤ 7.1.*unaffected7.2.3 to ≤ 7.2.*unaffected7.3 to ≤ *unaffected
References
- https://git.kernel.org/stable/c/bb474dcd9d0224264a27a60891f00872b879835f ↗
- https://git.kernel.org/stable/c/14d9ee8286460a7b82f3b8610b5c7ebf4550b06b ↗
- https://git.kernel.org/stable/c/843e2bdaf8deb8bc341203094dfe582e38ea4af2 ↗
- https://git.kernel.org/stable/c/669d940351eda316b82e24986e2e0e057653ce7d ↗
- https://git.kernel.org/stable/c/2ecdf5c9910e20f73639bc322f0518a3439d17c0 ↗