Ad

CVE-2026-89733

HIGH CVSS 3.1: 7,8 EPSS 0.17%
Обновлено 14 сентября 2026
Linux
Параметр Значение
CVSS 7,8 (HIGH)
Уязвимые версии 3.2.36 — 7.3-rc1
Устранено в версии 6.12.109
Поставщик Linux
Публичный эксплойт Нет

В ядре Linux устранена следующая уязвимость: usb: гаджет: uvc: исправление свисающих указателей в uvc_function_bind() и uvc_function_unbind() В пути ошибки uvc_function_bind() мы используем usb_ep_free_request, который использует uvc->control_req, но впоследствии не устанавливает для него значение NULL. Таким образом, uvc->control_req — это висячий указатель, вызывающий UAF. Также мы не устанавливаем указатель uvc->control_buf равен NULL после его освобождения, что является еще одним висящий указатель.

Исправьте это, установив для uvc->control_req значение NULL после запуска. usb_ep_free_request() и uvc->control_buf в NULL после kfree. Сделайте то же самое для uvc_function_unbind().

Показать оригинальное описание (EN)

In the Linux kernel, the following vulnerability has been resolved: usb: gadget: uvc: fix dangling pointers in uvc_function_bind() and uvc_function_unbind() In uvc_function_bind() error path, we use usb_ep_free_request which uses uvc->control_req but does not set it to NULL afterwards. Thus, uvc->control_req is a dangling pointer causing a UAF. Also we do not set the uvc->control_buf pointer to NULL after freeing it, which is another dangling pointer. Fix it by setting uvc->control_req to NULL after we run usb_ep_free_request() and uvc->control_buf to NULL after kfree. Do the same for uvc_function_unbind().

Характеристики атаки

Способ атаки
Локальный
Нужен локальный доступ
Сложность
Низкая
Легко эксплуатировать
Нужны права
Низкие
Нужны базовые права
Участие пользователя
Не требуется
Не нужно действие пользователя

Последствия

Конфиденциальность
Высокое
Полная утечка данных
Целостность
Высокое
Полная модификация данных
Доступность
Высокое
Полный отказ в обслуживании

Строка CVSS v3.1

Уязвимые продукты 7

Конфигурация От (включительно) До (исключительно)
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
3.8 6.12.109
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
3.8 6.18.50
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
3.8 7.2.4
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
3.8 7.3-rc1
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
3.2.36 —
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
3.4.25 —
Linux Linux_Kernel
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
3.7.2 —