CVEvulnerability
CVE-2026-64085
7.8 HIGH
Official page ↗
- Status
- Analyzed
- Published
- 2026-07-19
- Last modified
- 2026-09-03
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
- CVSS 3.1 ([email protected])
- 7.8 HIGH — CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
- Weaknesses
- CWE-787
Description
In the Linux kernel, the following vulnerability has been resolved:
hwmon: (pmbus/adm1266) bounce blackbox records through a protocol-sized buffer
adm1266_pmbus_block_xfer() copies the device-supplied block payload
into the caller-provided buffer using the device-supplied length:
memcpy(data_r, &msgs[1].buf[1], msgs[1].buf[0]);
The helper does not know how large data_r is and trusts the device to
return at most one record's worth of bytes. adm1266_nvmem_read_blackbox()
violates that contract: it advances read_buff inside data->dev_mem in
ADM1266_BLACKBOX_SIZE (64-byte) strides while the helper is willing to
write up to ADM1266_PMBUS_BLOCK_MAX (255) bytes. A device that returns
more than 64 bytes on the trailing record (read_buff offset 1984 in
the 2048-byte dev_mem allocation) overflows dev_mem by up to 191 bytes
before the post-call
if (ret != ADM1266_BLACKBOX_SIZE)
return -EIO;
can reject the response.
Contain the fix in the caller without changing the helper signature:
read each record into a 255-byte local bounce buffer that matches the
helper's maximum output, validate the returned length, and only then
copy exactly ADM1266_BLACKBOX_SIZE bytes into the dev_mem slot.
Affected configurations
• linux linux kernel (>= 5.10 < 5.10.258)
• linux linux kernel (>= 5.11 < 5.15.209)
• linux linux kernel (>= 5.16 < 6.1.175)
• linux linux kernel (>= 6.2 < 6.6.142)
• linux linux kernel (>= 6.7 < 6.12.92)
• linux linux kernel (>= 6.13 < 6.18.34)
• linux linux kernel (>= 6.19 < 7.0.11)
• linux linux kernel 7.1
Related
Weakness · CWE (1)
- CWE-787 Out-of-bounds Write weakness
References
- https://git.kernel.org/stable/c/43cae21424ff8e33894a0f86c6b80b840c049fd7 Patch
- https://git.kernel.org/stable/c/6098634cfa711f11a8d65368dc51ec8f7c8241ba Patch
- https://git.kernel.org/stable/c/60c4b9fe1a3dd012014b1f561a6928a0b5db1126 Patch
- https://git.kernel.org/stable/c/7896d87cbb05e097efc113243d4e38f9f8cea16c Patch
- https://git.kernel.org/stable/c/83e039f0a43e0708515b0479cb7690fb93faaaa0 Patch
- https://git.kernel.org/stable/c/97a9cf2a8217ca1cdaf48cb9ab26e471632c7e7f Patch
- https://git.kernel.org/stable/c/9d5309500b4607b7198e19f0a3fa13eb864cd5fb Patch
- https://git.kernel.org/stable/c/dd47b8c4a0a8ced442da3f008db28fbbd31feaf0 Patch