Description
In the Linux kernel, the following vulnerability has been resolved:

hwmon: adm1275: Prevent reading uninitialized stack

While adding support for the ROHM BD127X0 hot-swap controllers, sashiko
reported an error in device-name comparison, which can lead to reading
uninitialized stack memory.

Quoting Sashiko:

This is a pre-existing issue, but I noticed that just before this block in
adm1275_probe(), there might be an out-of-bounds stack read:

ret = i2c_smbus_read_block_data(client, PMBUS_MFR_MODEL, block_buffer);
if (ret < 0) { ... }
for (mid = adm1275_id; mid->name[0]; mid++) {
if (!strncasecmp(mid->name, block_buffer, strlen(mid->name)))
break;
}

Since i2c_smbus_read_block_data() reads up to 32 bytes into the
uninitialized stack array block_buffer without appending a null
terminator, strncasecmp() could read past the valid bytes returned in ret.

For example, if the device returns a shorter string like "adm12", checking
it against "adm1275" up to the length of "adm1275" will continue reading
into uninitialized stack bounds.

Prevent reading uninitialized memory by zeroing the stack array.
Published: 2026-08-15
Score: 5.5 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw occurs in the Linux kernel adm1275 driver when reading a block of data from an ROHM BD127X0 hot‑swap controller. The driver calls i2c_smbus_read_block_data() to fill a 32‑byte stack buffer with device data, but does not place a null terminator and may read fewer bytes than the buffer length. Subsequent use of strncasecmp() compares the returned string against known device names up to the target string’s length, potentially overrunning the initialized portion of the buffer and exposing uninitialized stack memory to the rest of the kernel. This can leak internal kernel data, violating confidentiality of memory accessible to the execution context.

Affected Systems

The vulnerability is present in all Linux kernel releases that compile the adm1275 driver before the patch. It applies to any system running the adm1275 module, regardless of distribution, as the issue is in the kernel source code under the hwmon subsystem.

Risk and Exploitability

The CVSS score is 5.5, EPSS <1%, and the vulnerability is not listed in the CISA KEV catalog. The flaw does not immediately grant code execution, only information disclosure via an out‑of‑bounds read. There are no publicly known exploits and the situation is not listed in the CISA KEV catalog. Attackers would need local privileged or kernel access and the presence of a supported device to trigger the read, so the risk is considered moderate. The safest course is to apply the patch that zeroes the stack buffer before use.

Generated by OpenCVE AI on August 17, 2026 at 16:07 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the kernel patch that zeroes the block_buffer array to prevent reading uninitialized memory.
  • Disable the adm1275 driver or unplug the hot‑swap controller to eliminate the vulnerable code path.
  • Upgrade to a kernel version that contains the fix.

Generated by OpenCVE AI on August 17, 2026 at 16:07 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 17 Aug 2026 12:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-125
References
Metrics threat_severity

None

cvssV3_1

{'score': 5.5, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Low


Sat, 15 Aug 2026 18:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-457

Sat, 15 Aug 2026 06:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: hwmon: adm1275: Prevent reading uninitialized stack While adding support for the ROHM BD127X0 hot-swap controllers, sashiko reported an error in device-name comparison, which can lead to reading uninitialized stack memory. Quoting Sashiko: This is a pre-existing issue, but I noticed that just before this block in adm1275_probe(), there might be an out-of-bounds stack read: ret = i2c_smbus_read_block_data(client, PMBUS_MFR_MODEL, block_buffer); if (ret < 0) { ... } for (mid = adm1275_id; mid->name[0]; mid++) { if (!strncasecmp(mid->name, block_buffer, strlen(mid->name))) break; } Since i2c_smbus_read_block_data() reads up to 32 bytes into the uninitialized stack array block_buffer without appending a null terminator, strncasecmp() could read past the valid bytes returned in ret. For example, if the device returns a shorter string like "adm12", checking it against "adm1275" up to the length of "adm1275" will continue reading into uninitialized stack bounds. Prevent reading uninitialized memory by zeroing the stack array.
Title hwmon: adm1275: Prevent reading uninitialized stack
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-17T05:13:52.535Z

Reserved: 2026-08-09T03:40:39.924Z

Link: CVE-2026-72396

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-15T06:22:13.150

Modified: 2026-08-17T06:19:06.147

Link: CVE-2026-72396

cve-icon Redhat

Severity : Low

Publid Date: 2026-08-15T00:00:00Z

Links: CVE-2026-72396 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-17T16:15:04Z

Weaknesses