CVE-2021-47500

7.8 HIGH

📋 TL;DR

A use-after-free vulnerability in the Linux kernel's mma8452 IIO driver allows attackers to potentially crash the system or execute arbitrary code. This affects Linux systems using the mma8452 accelerometer driver. The vulnerability occurs due to improper trigger reference counting that can lead to premature freeing of memory.

💻 Affected Systems

Products:
  • Linux kernel with mma8452 IIO driver
Versions: Linux 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 if the mma8452 IIO driver is loaded and the hardware is present. Most systems won't have this specific accelerometer.

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

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 potential privilege escalation to kernel-level code execution

🟠

Likely Case

System instability, kernel crashes, or denial of service affecting devices using the mma8452 accelerometer

🟢

If Mitigated

No impact if the vulnerable driver is not loaded or the hardware is not present

🌐 Internet-Facing: LOW - Requires local access or physical device interaction
🏢 Internal Only: MEDIUM - Affects systems with mma8452 hardware and the driver loaded

🎯 Exploit Status

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

Exploitation requires local access and knowledge of kernel memory management. No public exploits known.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Linux kernel with commits: 094d513b78b1714113bc016684b8142382e071ba, 794c0898f6bf39a458655d5fb4af70ec43a5cfcb, acf0088ac073ca6e7f4cad6acac112177e08df5e, c43517071dfc9fce34f8f69dbb98a86017f6b739, cd0082235783f814241a1c9483fb89e405f4f892

Vendor Advisory: https://git.kernel.org/stable/c/094d513b78b1714113bc016684b8142382e071ba

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Reboot system. 3. Verify the driver is no longer vulnerable.

🔧 Temporary Workarounds

Disable mma8452 driver

linux

Prevent loading of the vulnerable driver module

echo 'blacklist mma8452' >> /etc/modprobe.d/blacklist.conf
rmmod mma8452

Remove hardware

all

Physically remove mma8452 accelerometer hardware if present

🧯 If You Can't Patch

  • Ensure the mma8452 driver is not loaded (check with lsmod)
  • Restrict physical access to devices with mma8452 hardware

🔍 How to Verify

Check if Vulnerable:

Check if mma8452 module is loaded: lsmod | grep mma8452. If loaded and kernel version is before fix commits, system is vulnerable.

Check Version:

uname -r

Verify Fix Applied:

Check kernel version includes fix commits and mma8452 module loads without errors

📡 Detection & Monitoring

Log Indicators:

  • Kernel oops messages
  • System crashes related to IIO subsystem
  • Use-after-free kernel warnings

SIEM Query:

source="kernel" AND ("mma8452" OR "IIO" OR "use-after-free")

🔗 References

📤 Share & Export