CVE-2026-46064CWE-125

CVE-2026-46064

High · published May 27, 2026

CVSS v3.1
7.1
EPSS
0%
Percentile
6.0
In the wild
Unconfirmed
What it is

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

ibmasm: fix heap over-read in ibmasm_send_i2o_message()

The ibmasm_send_i2o_message() function uses get_dot_command_size() to

compute the byte count for memcpy_toio(), but this value is derived from

user-controlled fields in the dot_command_header (command_size: u8,

data_size: u16) and is never validated against the actual allocation size.

A root user can write a small buffer with inflated header fields, causing

memcpy_toio() to read up to ~65 KB past the end of the allocation into

adjacent kernel heap, which is then forwarded to the service processor

over MMIO.

Silently clamping the copy size is not sufficient: if the header fields

claim a larger size than the buffer, the SP receives a dot command whose

own header is inconsistent with the I2O message length, which can cause

the SP to desynchronize. Reject such commands outright by returning

failure.

Validate command_size before calling get_mfa_inbound() to avoid leaking

an I2O message frame: reading INBOUND_QUEUE_PORT dequeues a hardware

frame from the controller's free pool, and returning without a

corresponding set_mfa_inbound() call would permanently exhaust it.

Additionally, clamp command_size to I2O_COMMAND_SIZE before the

memcpy_toio() so the MMIO write stays within the I2O message frame,

consistent with the clamping already performed by outgoing_message_size()

for the header field.

The record
Technical detail
CVSS v3.1
7.1 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:H
CVSS v4.0
Not supplied
EPSS
0.00169 · 6.0th percentile
Weakness
CWE-125 · Out-of-bounds Read
Published
2026-05-27T18:17Z
Affected products (12)
ProductVersionsFixed in
linux/linux_kernel≥ 2.6.12.1, < 5.10.2585.10.258
linux/linux_kernel≥ 5.11, < 5.15.2095.15.209
linux/linux_kernel≥ 5.16, < 6.1.1756.1.175
linux/linux_kernel≥ 6.2, < 6.6.1406.6.140
linux/linux_kernel≥ 6.7, < 6.12.866.12.86
linux/linux_kernel≥ 6.13, < 6.18.276.18.27
linux/linux_kernel≥ 6.19, < 7.0.47.0.4
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
References (9)
EPSS history
Timeline
  • 27 MAY 12:57Z
    ibmasm: fix heap over-read in ibmasm_send_i2o_message()
    cvelistv5