CVE-2022-50544

5.5 MEDIUM

📋 TL;DR

A memory leak vulnerability in the Linux kernel's xHCI USB host controller driver could allow attackers to gradually exhaust kernel memory resources. This affects Linux systems using the xHCI USB driver, particularly servers and embedded devices with USB controllers. The vulnerability occurs when error handling fails to free allocated memory in the xhci_alloc_stream_info() function.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific affected kernel versions not specified in CVE, but patches available for multiple stable branches
Operating Systems: Linux distributions using vulnerable kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Requires xHCI USB host controller usage. Systems without USB or using other USB controllers are not affected.

⚠️ Risk & Real-World Impact

🔴

Worst Case

Sustained exploitation could lead to kernel memory exhaustion, causing system instability, denial of service, or potential kernel panic/crash.

🟠

Likely Case

Gradual memory consumption leading to performance degradation and eventual system instability or denial of service.

🟢

If Mitigated

Minimal impact with proper memory monitoring and system hardening in place.

🌐 Internet-Facing: LOW - Requires local access or USB device interaction, not directly exploitable over network.
🏢 Internal Only: MEDIUM - Could be exploited by malicious USB devices or local users to cause system instability.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires triggering the error path in xhci_alloc_stream_info(), likely through USB device manipulation or driver stress testing.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Multiple stable kernel versions with fixes (see references for specific commits)

Vendor Advisory: https://git.kernel.org/stable/c/782c873f8e7686f5b3c47e8b099f7e08c3dd1fdc

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution's repositories. 2. Reboot system to load new kernel. 3. Verify kernel version matches patched release.

🔧 Temporary Workarounds

Disable xHCI USB controller

linux

Disable the vulnerable xHCI USB host controller if USB functionality is not required

echo 'blacklist xhci_hcd' > /etc/modprobe.d/blacklist-xhci.conf
update-initramfs -u
reboot

🧯 If You Can't Patch

  • Implement strict USB device control policies to prevent unauthorized USB device connections
  • Monitor kernel memory usage and implement alerts for abnormal memory consumption patterns

🔍 How to Verify

Check if Vulnerable:

Check kernel version and compare with patched versions from distribution security advisories

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version matches patched release and check that xhci module loads without errors

📡 Detection & Monitoring

Log Indicators:

  • Kernel oom-killer messages
  • System instability or crash logs
  • Abnormal memory usage in kernel space

Network Indicators:

  • None - local vulnerability only

SIEM Query:

source="kernel" AND ("out of memory" OR "kernel panic" OR "BUG")

🔗 References

📤 Share & Export