First published: Wed Feb 26 2025(Updated: )
In the Linux kernel, the following vulnerability has been resolved: usb: isp1760: Fix out-of-bounds array access Running the driver through kasan gives an interesting splat: BUG: KASAN: global-out-of-bounds in isp1760_register+0x180/0x70c Read of size 20 at addr f1db2e64 by task swapper/0/1 (...) isp1760_register from isp1760_plat_probe+0x1d8/0x220 (...) This happens because the loop reading the regmap fields for the different ISP1760 variants look like this: for (i = 0; i < HC_FIELD_MAX; i++) { ... } Meaning it expects the arrays to be at least HC_FIELD_MAX - 1 long. However the arrays isp1760_hc_reg_fields[], isp1763_hc_reg_fields[], isp1763_hc_volatile_ranges[] and isp1763_dc_volatile_ranges[] are dynamically sized during compilation. Fix this by putting an empty assignment to the [HC_FIELD_MAX] and [DC_FIELD_MAX] array member at the end of each array. This will make the array one member longer than it needs to be, but avoids the risk of overwriting whatever is inside [HC_FIELD_MAX - 1] and is simple and intuitive to read. Also add comments explaining what is going on.
Credit: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Affected Software | Affected Version | How to fix |
---|---|---|
Linux Kernel | ||
Linux Kernel | >=5.14<5.15.46 | |
Linux Kernel | >=5.16<5.17.14 | |
Linux Kernel | >=5.18<5.18.3 |
Sign up to SecAlerts for real-time vulnerability data matched to your software, aggregated from hundreds of sources.
CVE-2022-49551 affects the Linux Kernel versions between 5.14 and 5.15.46, 5.16 and 5.17.14, and 5.18 and 5.18.3.
CVE-2022-49551 exploits an out-of-bounds array access in the isp1760 USB driver.
To mitigate CVE-2022-49551, update your Linux Kernel to a version that has resolved this vulnerability.
The nature of CVE-2022-49551 is an out-of-bounds memory access that can lead to potential exploitation.
CVE-2022-49551 is classified as a high severity vulnerability due to its potential impact on system stability and security.