KernelScan.io

HIGH Introduced in 6.4

hwmon Notify OOB

CVE-2026-74711

CVSS 8.4 / 10.0 NVD

CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H

KernelScan AI4.4MEDIUM

01

In the Linux kernel, the following vulnerability has been resolved: hwmon: (pmbus) Fix type confusion in notification logic Sashiko reports: At the start of the loop in pmbus_notify(), the code unconditionally casts every attribute to a struct sensor_device_attribute: drivers/hwmon/pmbus/pmbus_core.c:pmbus_notify() { for (i = 0; i < data->num_attributes; i++) { struct device_attribute *da = to_dev_attr(data->group.attrs[i]); struct sensor_device_attribute *attr = to_sensor_dev_attr(da); int index = attr->index; ... } However, data->group.attrs can contain other types like struct pmbus_samples_reg or struct pmbus_sensor, which only embed a base struct device_attribute. If da is a struct pmbus_samples_reg, dev_attr is the last member. Casting it to struct sensor_device_attribute and reading the index field appears to access memory past the end of the allocation, which might trigger a slab-out-of-bounds read. Additionally, if da is a struct pmbus_sensor, casting it causes the index field to overlap with the page, phase, and reg fields. Could this produce a garbage mask on little-endian systems that spuriously matches the target reg, page, and flags during an alert? Fix the problem by using struct sensor_device_attr in struct pmbus_sensor and struct pmbus_label. Since those attributes never trigger a notification, set the value of attr->index to -1 for them. Use this value to distinguish from boolean attributes which _can_ trigger a notification and use the index field to encode mask, page, and register values.

02

Engine v0.6.0

Risk summary

The PMBus hardware monitoring driver's alert notification path contains a type confusion that causes a small out-of-bounds slab read when processing hardware alerts. The bug requires a PMBus-compatible I2C device to be present and its driver loaded, and triggers when the device raises an alert during normal or influenced operation. Impact is limited to a bounded information leak and potential spurious notifications, with a low likelihood of kernel panic.

Affecteddrivers/hwmon/pmbus/pmbus_core.c (hwmon pmbus)

Vulnerability analysis

The PMBus hardware monitoring driver's alert notification routine incorrectly treats all sysfs attributes as a single attribute type, regardless of their actual structure. When a PMBus device raises a hardware alert, the notification loop casts every attribute to a type that includes an extra integer field, but some attribute types are smaller and do not contain this field — causing the kernel to read past the end of the allocated object, or to interpret unrelated data as that field. The fix changes the affected attribute structures to include the expected type natively and marks non-notify attributes with a sentinel value so they are skipped during notification processing. This vulnerability requires a PMBus-compatible I2C device to be present and its kernel driver loaded; the bug triggers when the device generates a hardware alert, which can occur during normal operation or be influenced by a local user with access to the monitoring sysfs interface.

03

BranchIntroducedFixed inPatch commit
7.16.47.1.90b121de89a99
mainline6.47.259bd68ab05a8
6.186.46.18.45821f6416e697