CVE Catalog

CVE-2026-64083

Low risk· EPSS 8%
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.18%

8th percentile - higher than 8% of all known CVEs

Summary

In the Linux kernel hwmon (pmbus/adm1266) driver, a vulnerability was found due to missing validation of block-read response length in GPIO accessors. Functions adm1266_gpio_get() and adm1266_gpio_get_multiple() do not check if the response contains at least 2 bytes, leading to use of uninitialized stack memory when a short response (0 or 1 byte) is received. This data can be leaked to userspace via gpiolib (sysfs or ioctl), causing kernel stack memory disclosure.

Risk Assessment

The risk involves potential leakage of sensitive kernel stack data to userspace, which could allow an attacker with local access or remote access via an I2C device to read confidential information such as cryptographic keys or data from other processes.

Recommendation

Immediately update the Linux kernel to a version containing the fix (commit adding length check and returning -EIO on short responses). Monitor official security advisories from your Linux distribution for the appropriate patch.

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

In the Linux kernel, the following vulnerability has been resolved: hwmon: (pmbus/adm1266) reject short block-read responses in the GPIO accessors adm1266_gpio_get() and adm1266_gpio_get_multiple() both compose the pin-status word as pins_status = read_buf[0] + (read_buf[1] << 8); right after i2c_smbus_read_block_data(), guarding only against an error return. A well-behaved device returns 2 bytes for GPIO_STATUS/PDIO_STATUS, but the helper happily reports a 0- or 1-byte response too. If the device returns 0 bytes, both read_buf slots are uninitialized stack memory; if it returns 1 byte, read_buf[1] is. The composed value then flows through set_bit() into the caller's *bits in adm1266_gpio_get_multiple(), or into the return value of adm1266_gpio_get(), and ends up in userspace via gpiolib (sysfs and the char-dev ioctls). That leaks a few bits of kernel stack per request on any device whose firmware glitch, bus error, or hostile slave produces a short block-read response. Add the missing length check to both call sites and surface a short response as -EIO.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS