CVE-2026-80783 in Linux
Сводка
по VulDB • 04.09.2026
В ядре Linux была устранена следующая уязвимость:
HID: magicmouse: предотвращение неограниченной рекурсии в функции magicmouse_raw_event()
Функция magicmouse_raw_event() обрабатывает пакеты с DOUBLE_REPORT_ID (0xf7), которые содержат два отчета о касаниях, разделяя пакет и вызывая саму себя для каждой половины. Единственной защитой от бесконечной рекурсии является проверка «size < 1», которая останавливает вызовы с нулевым размером, но не ограничивает глубину рекурсии.
Злонамеренное HID-устройство, совместимое с этим драйвером, может отправить отчет, начинающийся с DOUBLE_REPORT_ID и заполненный последовательностью [0xf7, 0x00]. Каждый уровень потребляет два байта и вызывает саму себя для оставшейся части данных; таким образом входящий отчет размером до HID_MAX_BUFFER_SIZE (16 КБ) приводит примерно к 8000 вложенным вызовам. Это легко исчерпывает 16-килобайтный стек ядра, что приводит к переполнению стека: панике при включенной CONFIG_VMAP_STACK или повреждению памяти без нее.
Двойной отчет всегда оборачивает только два обычных отчета; он никогда не бывает легитимно вложенным. Отказываемся от повторного входа в случай DOUBLE_REPORT_ID из рекурсивного вызова, чтобы глубина рекурсии была ограничена двумя уровнями, при этом все корректные пакеты продолжают парситься точно так же, как и раньше.
If you want to get best quality of vulnerability data, you may have to visit VulDB.