Skip to main content

CVE-2024-26963: Vulnerability in Linux Linux

Medium
VulnerabilityCVE-2024-26963cvecve-2024-26963
Published: Wed May 01 2024 (05/01/2024, 05:19:24 UTC)
Source: CVE
Vendor/Project: Linux
Product: Linux

Description

In the Linux kernel, the following vulnerability has been resolved: usb: dwc3-am62: fix module unload/reload behavior As runtime PM is enabled, the module can be runtime suspended when .remove() is called. Do a pm_runtime_get_sync() to make sure module is active before doing any register operations. Doing a pm_runtime_put_sync() should disable the refclk so no need to disable it again. Fixes the below warning at module removel. [ 39.705310] ------------[ cut here ]------------ [ 39.710004] clk:162:3 already disabled [ 39.713941] WARNING: CPU: 0 PID: 921 at drivers/clk/clk.c:1090 clk_core_disable+0xb0/0xb8 We called of_platform_populate() in .probe() so call the cleanup function of_platform_depopulate() in .remove(). Get rid of the now unnnecessary dwc3_ti_remove_core(). Without this, module re-load doesn't work properly.

AI-Powered Analysis

AILast updated: 06/29/2025, 13:40:50 UTC

Technical Analysis

CVE-2024-26963 addresses a vulnerability in the Linux kernel specifically related to the USB controller driver for the DWC3 AM62 platform. The issue arises during the module unload and reload process when runtime power management (PM) is enabled. The vulnerability is due to improper handling of the module's runtime suspend state when the .remove() function is called. Specifically, the module can be suspended at runtime, but the code does not ensure the module is active before performing register operations during removal. This leads to warnings and potential instability caused by attempts to disable an already disabled clock (refclk), as indicated by kernel warnings such as "clk:162:3 already disabled". The fix involves calling pm_runtime_get_sync() to guarantee the module is active before register operations and pm_runtime_put_sync() to properly disable the refclk without redundant calls. Additionally, the patch corrects the device population lifecycle by pairing of_platform_populate() in the .probe() function with of_platform_depopulate() in the .remove() function, removing an unnecessary call to dwc3_ti_remove_core(). Without these corrections, the module reload process does not function properly, potentially causing system instability or failure to reload the USB driver module correctly. This vulnerability is primarily a stability and reliability issue related to kernel module lifecycle management rather than a direct security exploit. There are no known exploits in the wild, and no CVSS score has been assigned yet. The affected versions are specific commits identified by hashes, indicating this is a recent and targeted fix in the Linux kernel source code.

Potential Impact

For European organizations, the impact of CVE-2024-26963 is mostly related to system stability and reliability rather than direct security breaches. Organizations running Linux systems with the affected DWC3 AM62 USB controller driver, particularly in embedded systems, industrial control, or specialized hardware environments, may experience issues with USB device handling during module unload/reload cycles. This could lead to temporary loss of USB functionality, system warnings, or kernel instability, potentially affecting operational continuity. While this does not appear to allow privilege escalation, data leakage, or remote code execution, the instability could disrupt critical services relying on USB peripherals or hot-swappable devices. In sectors such as manufacturing, telecommunications, or critical infrastructure where Linux-based embedded systems are common, this could translate to operational downtime or increased maintenance overhead. However, general-purpose Linux servers and desktops are less likely to be affected unless they use this specific USB controller driver. Since no known exploits exist, the immediate security risk is low, but the vulnerability should be addressed to maintain system robustness.

Mitigation Recommendations

To mitigate this vulnerability, European organizations should: 1) Identify systems using the DWC3 AM62 USB controller driver, especially embedded or specialized Linux deployments. 2) Apply the latest Linux kernel updates or patches that include the fix for CVE-2024-26963 as soon as they become available from trusted Linux distributions or kernel maintainers. 3) For custom or embedded Linux builds, integrate the corrected driver code and thoroughly test module unload/reload behavior to ensure stability. 4) Monitor kernel logs for warnings related to clk_core_disable or USB module reload failures as indicators of the issue. 5) Avoid unnecessary module unload/reload operations in production environments until patched. 6) Implement rigorous change management and testing procedures for kernel updates to prevent regressions. 7) Engage with hardware vendors for firmware or driver updates if the affected hardware is part of vendor-supplied systems. These steps go beyond generic advice by focusing on identifying affected hardware, applying targeted patches, and monitoring specific kernel warnings related to this vulnerability.

Need more detailed analysis?Get Pro

Technical Details

Data Version
5.1
Assigner Short Name
Linux
Date Reserved
2024-02-19T14:20:24.201Z
Cisa Enriched
true
Cvss Version
null
State
PUBLISHED

Threat ID: 682d9829c4522896dcbe2f5b

Added to database: 5/21/2025, 9:08:57 AM

Last enriched: 6/29/2025, 1:40:50 PM

Last updated: 8/5/2025, 6:41:07 PM

Views: 11

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