PT-2024-10520
CVE-2022-48806
·
Published
2022-02-04
·
Updated
2025-01-20
Description by
CVSS 4.0
6.8
MediumMetricsAV:L/AC:L/AT:N/PR:L/UI:N/VC:N/VI:N/VA:H/SC:N/SI:N/SA:N
Name of the Vulnerable Software and Affected Versions
Linux kernel (affected versions not specified)
Description
The issue is related to the
ee1004 eeprom read() function not properly limiting the number of bytes to read at once. Specifically, i2c smbus read i2c block data or emulated() takes the length to read as an u8. If count equals 256 after considering the offset and page boundary, the cast to u8 overflows. This is common when user space attempts to read the entire EEPROM at once. The problem can be fixed by limiting each read to I2C SMBUS BLOCK MAX (32) bytes.Recommendations
To resolve the issue, limit each read to
I2C SMBUS BLOCK MAX (32) bytes, which is already the maximum length i2c smbus read i2c block data or emulated() allows. As a temporary workaround, consider restricting the use of the ee1004 eeprom read() function until a patch is available.Exploitability
Exploit
Fix
Impacts
Researchers
Vendors
Affected products
Found an issue in the description? Have something to add? Feel free to write us 👾