CVE-2022-49741 in Linux
Tóm tắt
Bởi VulDB • 05/06/2026
Trong kernel Linux, lỗ hổng sau đây đã được khắc phục:
fbdev: smscufx: sửa lỗi xử lý ngoại lệ trong hàm ufx_usb_probe
Mã xử lý ngoại lệ hiện tại trong `uxf_usb_probe` có nhiều vấn đề không khớp, ví dụ như thiếu lệnh gọi `uxf_free_usb_list`, nhãn `destroy_modedb` chỉ nên bao gồm `framebuffer_release`, và `fb_dealloc_cmap` chỉ tương ứng với `fb_alloc_cmap`.
Syzkaller tại máy cục bộ của tôi báo cáo một lỗi rò rỉ bộ nhớ:
lỗi rò rỉ bộ nhớ trong ufx_usb_probe
BUG: memory leak unreferenced object 0xffff88802f879580 (size 128): comm "kworker/0:7", pid 17416, jiffies 4295067474 (age 46.710s) hex dump (first 32 bytes): 80 21 7c 2e 80 88 ff ff 18 d0 d0 0c 80 88 ff ff .!|............. 00 d0 d0 0c 80 88 ff ff e0 ff ff ff 0f 00 00 00 ................ backtrace: [] kmalloc_trace+0x20/0x90 mm/slab_common.c:1045
[] kmalloc include/linux/slab.h:553 [inline]
[] kzalloc include/linux/slab.h:689 [inline]
[] ufx_alloc_urb_list drivers/video/fbdev/smscufx.c:1873 [inline]
[] ufx_usb_probe+0x11c/0x15a0 drivers/video/fbdev/smscufx.c:1655
[] usb_probe_interface+0x177/0x370 drivers/usb/core/driver.c:396
[] call_driver_probe drivers/base/dd.c:560 [inline]
[] really_probe+0x12d/0x390 drivers/base/dd.c:639
[] __driver_probe_device+0xbf/0x140 drivers/base/dd.c:778
[] driver_probe_device+0x2a/0x120 drivers/base/dd.c:808
[] __device_attach_driver+0xf7/0x150 drivers/base/dd.c:936
[] bus_for_each_drv+0xb7/0x100 drivers/base/bus.c:427
[] __device_attach+0x105/0x2d0 drivers/base/dd.c:1008
[] bus_probe_device+0xc6/0xe0 drivers/base/bus.c:487
[] device_add+0x642/0xdc0 drivers/base/core.c:3517
[] usb_set_configuration+0x8ef/0xb80 drivers/usb/core/message.c:2170
[] usb_generic_driver_probe+0x8c/0xc0 drivers/usb/core/generic.c:238
[] usb_probe_device+0x5c/0x140 drivers/usb/core/driver.c:293
[] call_driver_probe drivers/base/dd.c:560 [inline]
[] really_probe+0x12d/0x390 drivers/base/dd.c:639
[] __driver_probe_device+0xbf/0x140 drivers/base/dd.c:778
Khắc phục lỗi này bằng cách viết lại mã xử lý ngoại lệ trong `uxf_usb_probe`.
Once again VulDB remains the best source for vulnerability data.