Skip to main content

CVE-2022-49741: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2022-49741cvecve-2022-49741
Published: Thu Mar 27 2025 (03/27/2025, 16:42:52 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: fbdev: smscufx: fix error handling code in ufx_usb_probe The current error handling code in ufx_usb_probe have many unmatching issues, e.g., missing ufx_free_usb_list, destroy_modedb label should only include framebuffer_release, fb_dealloc_cmap only matches fb_alloc_cmap. My local syzkaller reports a memory leak bug: memory leak in 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: [<ffffffff814c99a0>] kmalloc_trace+0x20/0x90 mm/slab_common.c:1045 [<ffffffff824d219c>] kmalloc include/linux/slab.h:553 [inline] [<ffffffff824d219c>] kzalloc include/linux/slab.h:689 [inline] [<ffffffff824d219c>] ufx_alloc_urb_list drivers/video/fbdev/smscufx.c:1873 [inline] [<ffffffff824d219c>] ufx_usb_probe+0x11c/0x15a0 drivers/video/fbdev/smscufx.c:1655 [<ffffffff82d17927>] usb_probe_interface+0x177/0x370 drivers/usb/core/driver.c:396 [<ffffffff82712f0d>] call_driver_probe drivers/base/dd.c:560 [inline] [<ffffffff82712f0d>] really_probe+0x12d/0x390 drivers/base/dd.c:639 [<ffffffff8271322f>] __driver_probe_device+0xbf/0x140 drivers/base/dd.c:778 [<ffffffff827132da>] driver_probe_device+0x2a/0x120 drivers/base/dd.c:808 [<ffffffff82713c27>] __device_attach_driver+0xf7/0x150 drivers/base/dd.c:936 [<ffffffff82710137>] bus_for_each_drv+0xb7/0x100 drivers/base/bus.c:427 [<ffffffff827136b5>] __device_attach+0x105/0x2d0 drivers/base/dd.c:1008 [<ffffffff82711d36>] bus_probe_device+0xc6/0xe0 drivers/base/bus.c:487 [<ffffffff8270e242>] device_add+0x642/0xdc0 drivers/base/core.c:3517 [<ffffffff82d14d5f>] usb_set_configuration+0x8ef/0xb80 drivers/usb/core/message.c:2170 [<ffffffff82d2576c>] usb_generic_driver_probe+0x8c/0xc0 drivers/usb/core/generic.c:238 [<ffffffff82d16ffc>] usb_probe_device+0x5c/0x140 drivers/usb/core/driver.c:293 [<ffffffff82712f0d>] call_driver_probe drivers/base/dd.c:560 [inline] [<ffffffff82712f0d>] really_probe+0x12d/0x390 drivers/base/dd.c:639 [<ffffffff8271322f>] __driver_probe_device+0xbf/0x140 drivers/base/dd.c:778 Fix this bug by rewriting the error handling code in ufx_usb_probe.

AI-Powered Analysis

AILast updated: 06/30/2025, 00:55:55 UTC

Technical Analysis

CVE-2022-49741 is a vulnerability identified in the Linux kernel specifically within the framebuffer device driver for the SMSC USB FX2-based video capture devices (smscufx). The flaw lies in the error handling code of the ufx_usb_probe function, which is responsible for initializing the USB device and allocating necessary resources. The existing implementation contains mismatches in resource deallocation and cleanup steps, such as missing calls to free allocated USB lists and improper use of labels for releasing framebuffer resources. These errors lead to a memory leak where allocated memory is not properly freed upon failure conditions during device probing. The vulnerability was discovered through syzkaller, a kernel fuzzing tool, which reported unreferenced kernel objects indicating leaked memory. The backtrace shows that the leak occurs during the kmalloc and kzalloc calls in the ufx_usb_probe function. Although this is a memory leak rather than a direct code execution or privilege escalation vulnerability, it can cause kernel memory consumption to grow over time, potentially leading to system instability or denial of service (DoS) if exploited repeatedly or on systems with limited memory. The fix involves rewriting the error handling code in ufx_usb_probe to ensure all allocated resources are properly freed on failure paths, preventing memory leaks. No known exploits are reported in the wild, and no CVSS score has been assigned yet.

Potential Impact

For European organizations, the impact of CVE-2022-49741 is primarily related to system reliability and availability. Systems running Linux kernels with the vulnerable smscufx driver and using affected USB video capture devices may experience gradual memory leaks during device initialization failures. Over time, this can degrade system performance or cause kernel crashes, leading to denial of service conditions. This is particularly relevant for organizations relying on Linux-based infrastructure for multimedia processing, video surveillance, or embedded systems using these specific USB devices. While the vulnerability does not directly compromise confidentiality or integrity, the resulting instability could disrupt critical services or operations. Additionally, in environments with automated device management or frequent device reconnections, the risk of triggering the leak increases. Since no authentication or user interaction is required to trigger the probe function, local or remote attackers with the ability to connect affected USB devices could exploit the flaw to degrade system stability. However, the absence of known exploits and the requirement for specific hardware limit the immediate threat level.

Mitigation Recommendations

European organizations should take the following specific actions to mitigate CVE-2022-49741: 1) Apply the latest Linux kernel patches that address this vulnerability as soon as they become available from trusted sources or Linux distributions. 2) Audit and inventory systems to identify those running vulnerable kernel versions with the smscufx driver enabled and assess whether affected USB video capture devices are in use. 3) Where possible, disable or blacklist the smscufx driver on systems that do not require these USB devices to prevent the vulnerable code from loading. 4) Implement monitoring for unusual kernel memory usage patterns or frequent device probe failures that could indicate exploitation attempts. 5) For embedded or specialized systems using these USB devices, coordinate with hardware vendors for firmware or driver updates that incorporate the fix. 6) Limit physical or logical access to USB ports to prevent unauthorized device connections that could trigger the vulnerability. 7) Incorporate this vulnerability into vulnerability management and patching workflows to ensure timely remediation. These targeted steps go beyond generic advice by focusing on the specific driver, device usage, and operational context relevant to this vulnerability.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2025-03-27T16:39:17.986Z
Cisa Enriched
false
Cvss Version
null
State
PUBLISHED

Threat ID: 682d982cc4522896dcbe49ff

Added to database: 5/21/2025, 9:09:00 AM

Last enriched: 6/30/2025, 12:55:55 AM

Last updated: 8/16/2025, 1:44:31 AM

Views: 13

Actions

PRO

Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.

Please log in to the Console to use AI analysis features.

Need enhanced features?

Contact root@offseq.com for Pro access with improved analysis and higher rate limits.

Latest Threats