CVE-2022-49713
📋 TL;DR
This CVE describes a memory leak vulnerability in the Linux kernel's DWC2 USB host controller driver. When platform_get_resource() fails during initialization, the driver doesn't properly free allocated memory, causing a kernel memory leak. This affects Linux systems using the DWC2 USB driver.
💻 Affected Systems
- Linux kernel
📦 What is this software?
Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →Linux Kernel by Linux
The Linux Kernel is the core component of the Linux operating system, serving as the critical interface between computer hardware and software processes. As the heart of millions of servers, cloud infrastructure, embedded systems, Android devices, and IoT deployments worldwide, the Linux Kernel mana...
Learn more about Linux Kernel →⚠️ Risk & Real-World Impact
Worst Case
Sustained exploitation could lead to kernel memory exhaustion, causing system instability, denial of service, or potential kernel crashes.
Likely Case
Memory leak gradually consumes kernel memory over time, potentially leading to system performance degradation or eventual denial of service.
If Mitigated
With proper monitoring and memory limits, impact is limited to potential performance issues that can be detected and addressed before system failure.
🎯 Exploit Status
Exploitation requires triggering the specific failure condition during USB initialization, which may require physical USB device access or kernel module manipulation.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Kernel versions containing the fix commits referenced in the CVE
Vendor Advisory: https://git.kernel.org/stable/c/3755278f078460b021cd0384562977bf2039a57a
Restart Required: Yes
Instructions:
1. Update Linux kernel to patched version. 2. For embedded systems: update kernel via vendor firmware updates. 3. Reboot system after kernel update.
🔧 Temporary Workarounds
Disable DWC2 USB driver
linuxPrevent loading of the vulnerable DWC2 USB driver module
echo 'blacklist dwc2' >> /etc/modprobe.d/blacklist.conf
rmmod dwc2
Limit USB device connections
linuxRestrict USB device connections to prevent triggering the initialization failure
🧯 If You Can't Patch
- Implement kernel memory monitoring and alerting for unusual memory consumption patterns
- Restrict physical access to USB ports and implement USB device whitelisting policies
🔍 How to Verify
Check if Vulnerable:
Check if DWC2 driver is loaded: 'lsmod | grep dwc2' and check kernel version against patched versions
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is updated to patched version and DWC2 driver loads without errors
📡 Detection & Monitoring
Log Indicators:
- Kernel oops messages related to USB initialization
- Memory allocation failures in kernel logs
- System logs showing memory exhaustion
SIEM Query:
source="kernel" AND ("dwc2" OR "USB" OR "memory allocation failed")
🔗 References
- https://git.kernel.org/stable/c/3755278f078460b021cd0384562977bf2039a57a
- https://git.kernel.org/stable/c/52bfcedbfd5bf962dbdcb6e761f4d0dd3ba26dfd
- https://git.kernel.org/stable/c/6506aff2dc2f7059aa3d45ee2e8639b25e87090f
- https://git.kernel.org/stable/c/701d8ec01e0f229d4db6f43d3d64ee479120cbeb
- https://git.kernel.org/stable/c/84e6d0af87e27bbc0db94f2e7323b34abe17b6e5
- https://git.kernel.org/stable/c/981ee40649e5fd9550f82db1fbb3bfab037da346
- https://git.kernel.org/stable/c/a44a8a762f7fe9ad3c065813d058e835a6180cb2