CVE-2023-52866

7.1 HIGH

📋 TL;DR

A null pointer dereference vulnerability in the Linux kernel's HID uclogic driver allows local attackers to cause a kernel panic (denial of service) or potentially execute arbitrary code. This affects systems with CONFIG_HID_UCLOGIC=y enabled and is triggered through specific USB device initialization sequences.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Kernel versions before the fix commits (specific versions vary by distribution)
Operating Systems: Linux distributions with vulnerable kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when CONFIG_HID_UCLOGIC=y (not default in most distributions) and CONFIG_KUNIT_ALL_TESTS=y triggers the specific test case.

📦 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 →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash and denial of service, with potential for local privilege escalation if combined with other vulnerabilities.

🟠

Likely Case

System crash or kernel panic when specific USB devices are connected, requiring physical access or USB device emulation.

🟢

If Mitigated

No impact if kernel module is not loaded or vulnerable configuration is disabled.

🌐 Internet-Facing: LOW - Requires local access or USB device interaction, not remotely exploitable.
🏢 Internal Only: MEDIUM - Local attackers with physical access or ability to connect USB devices could cause denial of service.

🎯 Exploit Status

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

Requires local access and ability to trigger the specific USB device initialization path. The vulnerability was discovered through KUnit testing.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits: 64da1f6147dac7f8499d4937a0d7ea990bf569e8, 6c8f953728d75104d994893f58801c457274335a, 91cfe0bbaa1c434d4271eb6e1d7aaa1fe8d121f6

Vendor Advisory: https://git.kernel.org/stable/c/64da1f6147dac7f8499d4937a0d7ea990bf569e8

Restart Required: Yes

Instructions:

1. Update to a kernel version containing the fix commits. 2. For distributions: Use package manager to update kernel package. 3. Reboot system to load patched kernel.

🔧 Temporary Workarounds

Disable HID_UCLOGIC module

linux

Prevent loading of the vulnerable kernel module

echo 'blacklist hid-uclogic' >> /etc/modprobe.d/blacklist.conf
rmmod hid-uclogic

Disable KUnit testing

linux

Prevent the specific test case that triggers the vulnerability

echo 'CONFIG_KUNIT_ALL_TESTS=n' >> .config (kernel rebuild required)

🧯 If You Can't Patch

  • Restrict physical access to prevent USB device connection
  • Implement USB device whitelisting policies

🔍 How to Verify

Check if Vulnerable:

Check if CONFIG_HID_UCLOGIC is enabled in kernel config and if kernel version is before the fix commits

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes the fix commits or is newer than vulnerable versions

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic logs mentioning 'general protection fault' in uclogic_params_ugee_v2_init_event_hooks
  • System crash when USB devices are connected

Network Indicators:

  • None - local vulnerability only

SIEM Query:

kernel:panic AND (uclogic OR uclogic_params_ugee_v2_init_event_hooks)

🔗 References

📤 Share & Export