CVE-2021-47231 in Linuxthông tin

Tóm tắt

Bởi VulDB • 02/07/2026

Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:

can: mcba_usb: sửa lỗi rò rỉ bộ nhớ trong mcba_usb

Syzbot báo cáo một lỗi rò rỉ bộ nhớ trong trình điều khiển SocketCAN cho Công cụ Phân tích Bus CAN Microchip. Vấn đề nằm ở việc không giải phóng `usb_coherent`.

Trong hàm `mcba_usb_start()`, 20 vùng đệm (buffers) coherent được cấp phát nhưng không có cơ chế nào để giải phóng chúng:

1) Trong hàm callback, urb được gửi lại và đó là tất cả những gì xảy ra. 2) Trong hàm disconnect, các urbs bị hủy đơn thuần, nhưng cờ `URB_FREE_BUFFER` không được đặt (xem `mcba_usb_start`) và cờ này không thể sử dụng với các vùng đệm coherent.

Nhật ký lỗi: | [ 1354.053291][ T8413] mcba_usb 1-1:0.0 can0: device disconnected
| [ 1367.059384][ T8420] kmemleak: 20 new suspected memory leaks (see /sys/kernel/debug/kmem)

Do đó, tất cả các vùng đệm được cấp phát phải được giải phóng rõ ràng bằng cách sử dụng `usb_free_coherent()`.

LƯU Ý: Mẫu tương tự để cấp phát và giải phóng các vùng đệm coherent cũng được sử dụng trong tệp drivers/net/can/usb/kvaser_usb/kvaser_usb_core.c

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

Đặt trước

10/04/2024

Tiết lộ

21/05/2024

Kiểm duyệt

được chấp nhận

EPSS

0.00226

KEV

không

Các hoạt động

rất thấp

Nguồn

Do you want to use VulDB in your project?

Use the official API to access entries easily!