CVE-2024-49986

7.8 HIGH

📋 TL;DR

This CVE describes a use-after-free vulnerability in the Linux kernel's x86-android-tablets driver. When platform_device_register() fails during device initialization, the driver incorrectly accesses already-freed memory, potentially leading to kernel crashes or arbitrary code execution. This affects Linux systems with the x86-android-tablets driver loaded, typically on x86 Android tablet devices or systems emulating such hardware.

💻 Affected Systems

Products:
  • Linux kernel with x86-android-tablets driver
Versions: Linux kernel versions containing the vulnerable driver code before the fix commits
Operating Systems: Linux
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when the x86-android-tablets driver is loaded, which typically requires specific x86 Android tablet hardware or emulation.

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

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash, or local privilege escalation allowing attackers to execute arbitrary code with kernel privileges.

🟠

Likely Case

System instability or kernel panic causing denial of service when the driver encounters registration errors during device initialization.

🟢

If Mitigated

Minimal impact if the driver isn't loaded or if proper kernel hardening prevents exploitation.

🌐 Internet-Facing: LOW - This is a local kernel vulnerability requiring local access to trigger.
🏢 Internal Only: MEDIUM - Local users or processes could potentially exploit this to crash systems or escalate privileges.

🎯 Exploit Status

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

Exploitation requires local access and triggering the specific error condition in platform_device_register(). The vulnerability was discovered through code review.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits: 2fae3129c0c08e72b1fe93e61fd8fd203252094a, 73a98cf79e4dbfa3d0c363e826c65aae089b313c, aac871e493fc8809e60209d9899b1af07e9dbfc8, ba0b09a2f327319e252d8f3032019b958c0a5cd9, f08adc5177bd4343df09033f62ab562c09ba7f7d

Vendor Advisory: https://git.kernel.org/stable/c/2fae3129c0c08e72b1fe93e61fd8fd203252094a

Restart Required: Yes

Instructions:

1. Update to a Linux kernel version containing the fix commits. 2. For distributions: Apply vendor kernel updates. 3. Reboot the system to load the patched kernel.

🔧 Temporary Workarounds

Disable x86-android-tablets driver

linux

Prevent loading of the vulnerable driver module

echo 'blacklist x86-android-tablets' >> /etc/modprobe.d/blacklist.conf
rmmod x86-android-tablets

🧯 If You Can't Patch

  • Ensure the x86-android-tablets driver is not loaded on production systems
  • Implement strict access controls to prevent local users from triggering driver initialization errors

🔍 How to Verify

Check if Vulnerable:

Check if x86-android-tablets driver is loaded: lsmod | grep x86-android-tablets

Check Version:

uname -r

Verify Fix Applied:

Check kernel version includes fix commits: uname -r and verify with distribution patch notes

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages
  • OOPs (kernel crashes) related to x86-android-tablets driver
  • Failed platform device registration errors

Network Indicators:

  • None - this is a local vulnerability

SIEM Query:

Search for kernel panic or OOPs events with x86-android-tablets in system logs

🔗 References

📤 Share & Export