Description
In the Linux kernel, the following vulnerability has been resolved: mtd: spi-nor: debugfs: fix out-of-bounds read in spi_nor_params_show() Sashiko noticed an out-of-bounds read [1]. In spi_nor_params_show(), the snor_f_names array is passed to spi_nor_print_flags() using sizeof(snor_f_names). Since snor_f_names is an array of pointers, sizeof() returns the total number of bytes occupied by the pointers (element_count * sizeof(void *)) rather than the element count itself. On 64-bit systems, this makes the passed length 8x larger than intended. Inside spi_nor_print_flags(), the 'names_len' argument is used to bounds-check the 'names' array access. An out-of-bounds read occurs if a flag bit is set that exceeds the array's actual element count but is within the inflated byte-size count. Correct this by using ARRAY_SIZE() to pass the actual number of string pointers in the array.
Product status
0257be79fc4a16a3252ce80aa13b3640f728c425 (git) before 9a80c458320e0514e11945402dd6e48fcee05524
0257be79fc4a16a3252ce80aa13b3640f728c425 (git) before ca18c180b053f6ce80394322b314ac721c316af7
0257be79fc4a16a3252ce80aa13b3640f728c425 (git) before 34bdcfb496b29f9a52431194f94473b37fb8c162
0257be79fc4a16a3252ce80aa13b3640f728c425 (git) before c0b654bc0b76a1da102d9138be1ed1223bd99310
0257be79fc4a16a3252ce80aa13b3640f728c425 (git) before e47029b977e747cb3a9174308fd55762cce70147
5.19
Any version before 5.19
6.6.140 (semver)
6.12.88 (semver)
6.18.30 (semver)
7.0.7 (semver)
7.1-rc2 (original_commit_for_fix)
References
git.kernel.org/...c/9a80c458320e0514e11945402dd6e48fcee05524
git.kernel.org/...c/ca18c180b053f6ce80394322b314ac721c316af7
git.kernel.org/...c/34bdcfb496b29f9a52431194f94473b37fb8c162
git.kernel.org/...c/c0b654bc0b76a1da102d9138be1ed1223bd99310
git.kernel.org/...c/e47029b977e747cb3a9174308fd55762cce70147