Description (CNA)
In the Linux kernel, the following vulnerability has been resolved: dm-verity: disable recursive forward error correction There are two problems with the recursive correction: 1. It may cause denial-of-service. In fec_read_bufs, there is a loop that has 253 iterations. For each iteration, we may call verity_hash_for_block recursively. There is a limit of 4 nested recursions - that means that there may be at most 253^4 (4 billion) iterations. Red Hat QE team actually created an image that pushes dm-verity to this limit - and this image just makes the udev-worker process get stuck in the 'D' state. 2. It doesn't work. In fec_read_bufs we store data into the variable "fio->bufs", but fio bufs is shared between recursive invocations, if "verity_hash_for_block" invoked correction recursively, it would overwrite partially filled fio->bufs.
Affected (CNA)
| Vendor / product | Versions |
|---|---|
| Linux / Linux | affected a739ff3f543afbb4a041c16cd0182c8e8d366e70 before 8b821ca892cfeeaf0bedc9fc72717294f67144d5; affected a739ff3f543afbb4a041c16cd0182c8e8d366e70 before e227d2b229c7529bd98d348efc55262ccf24ab35; affected a739ff3f543afbb4a041c16cd0182c8e8d366e70 before 897d9006e75f46f8bd7df78faa424327ae6a4bcf; affected a739ff3f543afbb4a041c16cd0182c8e8d366e70 before 4220cb37406915c926c0e4a3dbab77cd9cceeb1e; affected a739ff3f543afbb4a041c16cd0182c8e8d366e70 before 232948cf600fba69aff36b25d85ef91a73a35756; affected a739ff3f543afbb4a041c16cd0182c8e8d366e70 before d9f3e47d3fae0c101d9094bc956ed24e7a0ee801 |
| Linux / Linux | affected 4.5; unaffected 0 before 4.5; unaffected 5.15.209 through 5.15.*; unaffected 6.1.167 through 6.1.*; unaffected 6.6.130 through 6.6.*; unaffected 6.12.78 through 6.12.*; unaffected 6.18.6 through 6.18.*; unaffected 6.19 through * |
CWE
No CWE identifiers supplied.
References
- https://git.kernel.org/stable/c/8b821ca892cfeeaf0bedc9fc72717294f67144d5
- https://git.kernel.org/stable/c/e227d2b229c7529bd98d348efc55262ccf24ab35
- https://git.kernel.org/stable/c/897d9006e75f46f8bd7df78faa424327ae6a4bcf
- https://git.kernel.org/stable/c/4220cb37406915c926c0e4a3dbab77cd9cceeb1e
- https://git.kernel.org/stable/c/232948cf600fba69aff36b25d85ef91a73a35756
- https://git.kernel.org/stable/c/d9f3e47d3fae0c101d9094bc956ed24e7a0ee801
ADP enrichment
No English description supplied.
No English description supplied.
No references supplied.