В ядре Linux устранена следующая уязвимость: смс: ibmasm: исправить OOB MMIO читать в ibmasm_handle_mouse_interrupt() ibmasm_handle_mouse_i…
В ядре Linux устранена следующая уязвимость: смс: ibmasm: исправить OOB MMIO читать в ibmasm_handle_mouse_interrupt() ibmasm_handle_mouse_interrupt() выполняет внегранное MMIO чтение когда считыватель очередей или индекс писателя от аппаратного обеспечения превышает ДИСТАНЦИОННЫМ_QUEUE_SIZE (60). Компрометированный процессор может спровоцировать это, написав Нерациональное значение для читателя или писателя MMIO регистра до Утверждение прерывания. Поскольку писатель перечитывается с аппаратного обеспечения на каждая итерация цикла, она также может быть установлена на недиагрегационную стоимость После того, как петля уже началась. Основная причина в том, что get_queue_reader() и get_queue_writer() возвращаются raw readl() значения, которые передаются непосредственно в get_queue_entry(), которые вычисляют: queue_begin + reader * Размер(структурировать удаленный_input) Без проверки границ. Этот непроверенный адрес MMIO затем передается на memcpy_fromio(), считывание 8 байтов из непреднамеренных регистров устройств. Для достаточно больших значений адрес выходит за пределы PCI BAR Картографирование полностью, запуск исключения для проверки машины. Исправьте, проверив оба индекса с REMOTE_QUEUE_SIZE в верхней части тело петли, перед любым звонком, чтобы get_queue_entry(). На неудаленном значение, сбросить ридера регистр до 0 через set_queue_reader() до нарушение, чтобы нормальная работа очереди могла возобновиться, если поврежденный Аппаратное состояние является переходным.
Продукт читает данные за пределами конца или до начала предназначенного буфера.
https://cwe.mitre.org/data/definitions/125.html →Открыть в коллекции CWE →Злоумышленник атакует цель, передавая входные данные, вынуждающие приложение читать за пределами границы определённого буфера. Как правило, это происходит, когда значение, определяющее начало или конец чтения, установлено на позиции за пределами допустимой области памяти буфера. Атака данного типа может привести к раскрытию конфиденциальной информации, аварийному завершению работы системы или выполнению произвольного кода.
https://capec.mitre.org/data/definitions/540.html →Открыть в коллекции CAPEC →| Продукт | Вендор | Статус |
|---|---|---|
| linux | Отслеживается | |
| linux | Отслеживается | |
| linux_kernel | * | Отслеживается |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.12 | Отслеживается | |
| kernel-doc-6.18 | Отслеживается | |
| kernel-doc-6.18 | Отслеживается | |
| kernel-doc-7.0 | Отслеживается | |
| kernel-doc-std | Отслеживается | |
| kernel-doc-un | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.12 | Отслеживается | |
| kernel-headers-6.18 | Отслеживается | |
| kernel-headers-6.18 | Отслеживается | |
| kernel-headers-7.0 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается | |
| kernel-headers-modules-6.12 | Отслеживается |