CVE-2021-47609

7.8 HIGH

📋 TL;DR

This CVE describes a buffer overflow vulnerability in the Linux kernel's SCPI genpd driver. An attacker could exploit this to cause a kernel panic or potentially execute arbitrary code with kernel privileges. Systems running vulnerable Linux kernel versions with ARM SCPI firmware support are affected.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Versions before the fix commits listed in references
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with ARM SCPI firmware support enabled (CONFIG_ARM_SCPI_PROTOCOL).

📦 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 arbitrary code execution with kernel privileges, enabling full system compromise.

🟠

Likely Case

Kernel panic causing denial of service through system crash or instability.

🟢

If Mitigated

Limited impact due to kernel hardening features like KASLR and SMEP/SMAP reducing exploit reliability.

🌐 Internet-Facing: LOW - Requires local access or ability to influence device tree configuration.
🏢 Internal Only: MEDIUM - Local attackers or compromised processes could exploit this vulnerability.

🎯 Exploit Status

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

Requires local access or ability to influence device tree configuration. No public exploits known.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions containing the fix commits: 4694b1ec425a2d20d6f8ca3db594829fdf5f2672 and related

Vendor Advisory: https://git.kernel.org/stable/c/4694b1ec425a2d20d6f8ca3db594829fdf5f2672

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution. 2. Rebuild kernel if compiling from source with the fix commits. 3. Reboot system to load new kernel.

🔧 Temporary Workarounds

Disable SCPI support

linux

Disable ARM SCPI protocol support in kernel configuration

Disable CONFIG_ARM_SCPI_PROTOCOL in kernel config and rebuild

🧯 If You Can't Patch

  • Restrict local access to systems to prevent potential exploitation
  • Implement kernel hardening features like KASLR, SMEP, SMAP to reduce exploit reliability

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if SCPI support is enabled: grep CONFIG_ARM_SCPI_PROTOCOL /boot/config-$(uname -r)

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is newer than fix commits and check kernel logs for successful boot

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages
  • System crash/reboot logs
  • SCPI driver initialization errors

Network Indicators:

  • None - local vulnerability

SIEM Query:

Search for kernel panic events or unexpected system reboots

🔗 References

📤 Share & Export