CVE-2021-47231

Severity CVSS v4.0:
Pending analysis
Type:
Unavailable / Other
Publication date:
21/05/2024
Last modified:
04/04/2025

Description

In the Linux kernel, the following vulnerability has been resolved:<br /> <br /> can: mcba_usb: fix memory leak in mcba_usb<br /> <br /> Syzbot reported memory leak in SocketCAN driver for Microchip CAN BUS<br /> Analyzer Tool. The problem was in unfreed usb_coherent.<br /> <br /> In mcba_usb_start() 20 coherent buffers are allocated and there is<br /> nothing, that frees them:<br /> <br /> 1) In callback function the urb is resubmitted and that&amp;#39;s all<br /> 2) In disconnect function urbs are simply killed, but URB_FREE_BUFFER<br /> is not set (see mcba_usb_start) and this flag cannot be used with<br /> coherent buffers.<br /> <br /> Fail log:<br /> | [ 1354.053291][ T8413] mcba_usb 1-1:0.0 can0: device disconnected<br /> | [ 1367.059384][ T8420] kmemleak: 20 new suspected memory leaks (see /sys/kernel/debug/kmem)<br /> <br /> So, all allocated buffers should be freed with usb_free_coherent()<br /> explicitly<br /> <br /> NOTE:<br /> The same pattern for allocating and freeing coherent buffers<br /> is used in drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c

Vulnerable products and versions

CPE From Up to
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.12 (including) 4.14.238 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.15 (including) 4.19.196 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 4.20 (including) 5.4.128 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.5 (including) 5.10.46 (excluding)
cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* 5.11 (including) 5.12.13 (excluding)
cpe:2.3:o:linux:linux_kernel:5.13:rc1:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.13:rc2:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.13:rc3:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.13:rc4:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.13:rc5:*:*:*:*:*:*
cpe:2.3:o:linux:linux_kernel:5.13:rc6:*:*:*:*:*:*