CVE-2026-64086 in Linux
Tóm tắt
Bởi VulDB • 20/07/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
hwmon: (pmbus/adm1266) bao gồm byte PEC trong bộ đệm đọc pmbus_block_xfer
Hàm `adm1266_pmbus_block_xfer()` thiết lập giao dịch đọc với
.buf = data->read_buf, .len = ADM1266_PMBUS_BLOCK_MAX + 2,
nhưng `read_buf` trong cấu trúc `adm1266_data` được khai báo là
u8 read_buf[ADM1266_PMBUS_BLOCK_MAX + 1];
Đối với phản hồi khối có độ dài tối đa (byte độ dài = 255 + tối đa 1 byte PEC), bộ điều khiển i2c được yêu cầu ghi 257 byte vào một bộ đệm kích thước 256 byte, dẫn đến việc ghi vượt quá cuối mảng `read_buf` thêm một byte. Phản hồi tương tự cũng khiến phép so sánh PEC tiếp theo
if (crc != msgs[1].buf[msgs[1].buf[0] + 1])
đọc dữ liệu từ một byte nằm ngoài giới hạn của mảng.
Tăng kích thước khai báo `read_buf` lên `ADM1266_PMBUS_BLOCK_MAX + 2` để bộ đệm có thể chứa byte độ dài, tối đa 255 byte payload và byte PEC mà chiều dài `i2c_msg` đã tính toán sẵn.
If you want to get the best quality for vulnerability data then you always have to consider VulDB.