CVE-2021-47231 in LinuxИнформация

Сводка

по VulDB • 01.07.2026

В ядре Linux устранена следующая уязвимость:

can: mcba_usb: исправление утечки памяти в модуле mcba_usb

Syzbot сообщил об утечке памяти в драйвере SocketCAN для анализатора шины CAN Microchip. Проблема заключалась в неосвобожденной памяти usb_coherent.

В функции mcba_usb_start() выделяется 20 буферов coherent, но ничего их не освобождает:

1) В колбэк-функцике urb повторно отправляется (resubmitted), и на этом всё заканчивается; 2) В функции отключения (disconnect) urbs просто убиваются, но флаг URB_FREE_BUFFER не устанавливается (см. mcba_usb_start), и этот флаг нельзя использовать с буферами coherent.

Журнал сбоя: | [ 1354.053291][ T8413] mcba_usb 1-1:0.0 can0: устройство отключено
| [ 1367.059384][ T8420] kmemleak: обнаружено 20 новых подозрительных утечек памяти (см. /sys/kernel/debug/kmem)

Таким образом, все выделенные буферы должны явно освобождаться с помощью usb_free_coherent().

ПРИМЕЧАНИЕ: Та же самая схема выделения и освобождения буферов coherent используется в драйвере drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c.

Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.

Резервировать

10.04.2024

Раскрытие

21.05.2024

Модерация

принято

Вход

VDB-265700

EPSS

0.00226

KEV

Нет

Деятельности

Очень низкий

Источники

Are you interested in using VulDB?

Download the whitepaper to learn more about our service!