{"id":"CVE-2026-74711","revision":"2b839159abdc49798fcf2021bf8e446f","records":[{"revision":"2b839159abdc49798fcf2021bf8e446f","observedAt":"2026-10-23T15:48:27.903+00:00","statement":{"source":"cve-program","id":"CVE-2026-74711","aliases":[],"title":"hwmon: (pmbus) Fix type confusion in notification logic","description":"In the Linux kernel, the following vulnerability has been resolved:\n\nhwmon: (pmbus) Fix type confusion in notification logic\n\nSashiko reports:\n\nAt the start of the loop in pmbus_notify(), the code unconditionally casts\nevery attribute to a struct sensor_device_attribute:\n\ndrivers/hwmon/pmbus/pmbus_core.c:pmbus_notify() {\n    for (i = 0; i < data->num_attributes; i++) {\n        struct device_attribute *da = to_dev_attr(data->group.attrs[i]);\n        struct sensor_device_attribute *attr = to_sensor_dev_attr(da);\n        int index = attr->index;\n...\n}\n\nHowever, data->group.attrs can contain other types like struct\npmbus_samples_reg or struct pmbus_sensor, which only embed a base\nstruct device_attribute.\n\nIf da is a struct pmbus_samples_reg, dev_attr is the last member. Casting\nit to struct sensor_device_attribute and reading the index field appears\nto access memory past the end of the allocation, which might trigger a\nslab-out-of-bounds read.\n\nAdditionally, if da is a struct pmbus_sensor, casting it causes the index\nfield to overlap with the page, phase, and reg fields. Could this produce\na garbage mask on little-endian systems that spuriously matches the target\nreg, page, and flags during an alert?\n\nFix the problem by using struct sensor_device_attr in struct pmbus_sensor\nand struct pmbus_label. Since those attributes never trigger a\nnotification, set the value of attr->index to -1 for them. Use this value\nto distinguish from boolean attributes which _can_ trigger a notification\nand use the index field to encode mask, page, and register values.","state":0,"publishedAt":"2026-08-22T15:33:07.779+00:00","modifiedAt":"2026-10-21T12:46:12.854+00:00","affected":[{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"unaffected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"drivers/hwmon/pmbus/pmbus_core.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"f469bde9afd136598a0c4edc054296e6046f90ee\",\n                            \"lessThan\": \"ce443f6827b97e03a0fb34ebfddc8939c85e0500\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"f469bde9afd136598a0c4edc054296e6046f90ee\",\n                            \"lessThan\": \"1c8dd39d48494cceb2c27c1911cbf26d10ce8514\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"f469bde9afd136598a0c4edc054296e6046f90ee\",\n                            \"lessThan\": \"821f6416e69782fa662aff94b5ea52c943042790\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"f469bde9afd136598a0c4edc054296e6046f90ee\",\n                            \"lessThan\": \"0b121de89a99c54bcf516999b04e8531c84f08d5\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        },\n                        {\n                            \"version\": \"f469bde9afd136598a0c4edc054296e6046f90ee\",\n                            \"lessThan\": \"59bd68ab05a8f9c9a60b6ec44682084184803ff4\",\n                            \"status\": \"affected\",\n                            \"versionType\": \"git\"\n                        }\n                    ]\n                }"},{"ecosystem":"Vendor product","name":"Linux","ranges":[],"versions":[],"rawVersionEvidence":"{\n                    \"product\": \"Linux\",\n                    \"vendor\": \"Linux\",\n                    \"defaultStatus\": \"affected\",\n                    \"repo\": \"https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git\",\n                    \"programFiles\": [\n                        \"drivers/hwmon/pmbus/pmbus_core.c\"\n                    ],\n                    \"versions\": [\n                        {\n                            \"version\": \"6.4\",\n                            \"status\": \"affected\"\n                        },\n                        {\n                            \"version\": \"0\",\n                            \"lessThan\": \"6.4\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.6.160\",\n                            \"lessThanOrEqual\": \"6.6.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.12.114\",\n                            \"lessThanOrEqual\": \"6.12.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"6.18.45\",\n                            \"lessThanOrEqual\": \"6.18.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.1.9\",\n                            \"lessThanOrEqual\": \"7.1.*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"semver\"\n                        },\n                        {\n                            \"version\": \"7.2\",\n                            \"lessThanOrEqual\": \"*\",\n                            \"status\": \"unaffected\",\n                            \"versionType\": \"original_commit_for_fix\"\n                        }\n                    ]\n                }"}],"metrics":[{"system":"CVSS 3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H","score":8.4,"severity":"HIGH"}],"references":["https://git.kernel.org/stable/c/ce443f6827b97e03a0fb34ebfddc8939c85e0500","https://git.kernel.org/stable/c/1c8dd39d48494cceb2c27c1911cbf26d10ce8514","https://git.kernel.org/stable/c/821f6416e69782fa662aff94b5ea52c943042790","https://git.kernel.org/stable/c/0b121de89a99c54bcf516999b04e8531c84f08d5","https://git.kernel.org/stable/c/59bd68ab05a8f9c9a60b6ec44682084184803ff4"],"sourceUrl":"https://www.cve.org/CVERecord?id=CVE-2026-74711","license":"CVE Program Terms of Use","key":"cve-program:CVE-2026-74711","identifiers":["CVE-2026-74711"]},"retained":false,"historicalAffected":[]}],"coverage":[]}