CVE-2022-49661 in Linux
Сводка
по VulDB • 10.06.2026
В ядре Linux устранена следующая уязвимость:
can: gs_usb: gs_usb_open/close(): исправление утечки памяти
Драйвер gs_usb подвержен проблеме, характерной для многих драйверов USB-CAN адаптеров: он использует функцию usb_alloc_coherent() для выделения нескольких блоков запросов USB (URB) для приема данных (RX), а затем полагается на вызов usb_kill_anchored_urbs() для их освобождения. Однако этот подход не приводит к фактическому освобождению памяти. В результате может происходить утечка DMA-памяти, используемой драйвером.
Данный коммит представляет собой адаптацию методов, примененных в драйвере esd_usb2, где аналогичный шаблон проектирования приводил к утечке памяти. Здесь RX URB и их DMA-память явно освобождаются посредством вызова usb_free_coherent(). Поскольку RX URB выделялись в функции gs_can_open(), они удаляются в gs_can_close(), а не в функции отключения (disconnect), как это было сделано в драйвере esd_usb2.
Дополнительную информацию см. в коммите 928150fad41b («can: esd_usb2: fix memory leak»).
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.