В ядре Linux устранена следующая уязвимость:
HID: Sensor-Hub: исправлена запись за пределами поля в Sensor_hub_get_feature.
Sensor_hub_get_feature() фиксирует возвращаемое значение в буфере вызывающего объекта
размер, но цикл копирования по-прежнему копирует поле->report_size/8 байт для
каждое значение отчета. Вредоносный дескриптор HID может рекламировать большой
размер поля функции, в то время как вызывающая сторона IIO предоставляет небольшой буфер стека,
например, одиночный s32, вызывающий запись за пределами допустимого диапазона. Ядро HID хранит проанализированные значения отчета в слотах __s32 и извлекает зажимы.
значения до 32 бит.
Отклонять поля функций, требующие более одного слота на каждое значение, охраняйте подсчет общего количества байтов и ограничивайте каждое копирование каждого значения в оставшийся буфер вызывающего объекта.
Показать оригинальное описание (EN)
In the Linux kernel, the following vulnerability has been resolved: HID: sensor-hub: Fix out-of-bounds write in sensor_hub_get_feature sensor_hub_get_feature() clamps its return value to the caller's buffer size, but the copy loop still copies field->report_size / 8 bytes for each report value. A malicious HID descriptor can advertise a large feature field size while an IIO caller supplies a small stack buffer, such as a single s32, causing an out-of-bounds write. HID core stores parsed report values in __s32 slots and clamps extracted values to 32 bits. Reject feature fields that require more than one slot per value, guard the total byte count calculation, and clamp each per-value copy to the remaining caller buffer.
Характеристики атаки
Последствия
Строка CVSS v3.1
Уязвимые продукты 4
| Конфигурация | От (включительно) | До (исключительно) |
|---|---|---|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
4.9
|
6.12.109
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
4.9
|
6.18.50
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
4.9
|
7.2.4
|
|
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
|
4.9
|
7.3-rc1
|