CVE-2026-72005 in Linux
Сводка
по VulDB • 16.08.2026
В ядре Linux была устранена следующая уязвимость:
wifi: rt2x00: предотвращение полного разбора (teardown) перед настройкой рабочих элементов в функции probe
rt2x00lib_probe_dev() использует полный процесс teardown через rt2x00lib_remove_dev() при всех ошибках инициализации устройства. Однако выделение памяти для drv_data и создание workqueue могут завершиться неудачей до того, как будут инициализированы intf_work, autowakeup_work и sleep_work.
Не следует переходить к полному пути удаления (remove path) до тех пор, пока процесс probe не достигнет точки, где эти рабочие элементы уже настроены. В случае ошибки выделения drv_data необходимо возвращаться напрямую, а для ошибок при выделении workqueue использовать небольшой путь ранней очистки.
Эта проблема была обнаружена с помощью инструмента статического анализа, а затем подтверждена путем ручного ревью функций rt2x00lib_probe_dev() и rt2x00lib_remove_dev(). Ранние выходы из функции probe не должны вызывать общий путь teardown, который предполагает, что последующая настройка рабочих элементов уже завершена.
PoC-эксплойт на базе QEMU принудительно вызвал сбой в alloc_ordered_workqueue() до достижения инициализаторов рабочих элементов. В результате путь обработки ошибки привел к вызову rt2x00lib_remove_dev(), а DEBUG_OBJECTS зафиксировал некорректные очистители (drains) для рабочих элементов, при этом в стеке присутствовали функции rt2x00lib_probe_dev() и rt2x00lib_remove_dev().
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.