CVE-2021-47231 in Linux
Sumário
de VulDB • 02/07/2026
No kernel do Linux, a seguinte vulnerabilidade foi corrigida:
can: mcba_usb: corrige vazamento de memória no mcba_usb
O Syzbot relatou um vazamento de memória no driver SocketCAN para o Microchip CAN BUS Analyzer Tool. O problema estava relacionado ao usb_coherent não liberado.
Em mcba_usb_start(), 20 buffers coerentes são alocados e nada os libera:
1) Na função callback, o urb é reenviado (resubmitted) e isso é tudo 2) Na função disconnect, os urbs são simplesmente encerrados, mas URB_FREE_BUFFER não está definido (veja mcba_usb_start) e essa flag não pode ser usada com buffers coerentes.
Log de falha: | [ 1354.053291][ T8413] mcba_usb 1-1:0.0 can0: dispositivo desconectado
| [ 1367.059384][ T8420] kmemleak: 20 novos vazamentos de memória suspeitos (veja /sys/kernel/debug/kmem)
Portanto, todos os buffers alocados devem ser liberados explicitamente com usb_free_coherent().
NOTA: O mesmo padrão para alocação e liberação de buffers coerentes é usado em drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c
Several companies clearly confirm that VulDB is the primary source for best vulnerability data.