CVE-2021-47513

5.5 MEDIUM

📋 TL;DR

A memory leak vulnerability exists in the Linux kernel's DSA (Distributed Switch Architecture) Felix driver. If a system using this driver lacks a defined CPU port, the felix_setup_mmio_filtering function fails to properly free allocated memory, leading to gradual resource exhaustion. This affects Linux systems with specific network hardware configurations using the DSA Felix driver.

💻 Affected Systems

Products:
  • Linux kernel with DSA Felix driver
Versions: Specific kernel versions containing the vulnerable code (exact range depends on distribution backports)
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when using DSA Felix driver without a defined CPU port configuration. Requires specific network hardware.

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

⚠️ Risk & Real-World Impact

🔴

Worst Case

Sustained exploitation could cause kernel memory exhaustion, leading to system instability, crashes, or denial of service on affected network devices.

🟠

Likely Case

Gradual memory consumption over time, potentially causing performance degradation or system instability in affected configurations.

🟢

If Mitigated

Minimal impact with proper monitoring and memory management controls in place.

🌐 Internet-Facing: LOW - Requires specific hardware configuration and local access to trigger.
🏢 Internal Only: MEDIUM - Could affect internal network infrastructure devices if vulnerable configuration exists.

🎯 Exploit Status

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

Exploitation requires specific hardware configuration and kernel access. Memory leak vulnerabilities are typically not weaponized for remote attacks.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel commits 973a0373e88cc19129bd6ef0ec193040535397d9 and e8b1d7698038e76363859fb47ae0a262080646f5

Vendor Advisory: https://git.kernel.org/stable/c/973a0373e88cc19129bd6ef0ec193040535397d9

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix. 2. Check distribution-specific security advisories. 3. Reboot system after kernel update.

🔧 Temporary Workarounds

Ensure CPU port configuration

linux

Configure DSA Felix driver with proper CPU port definition to avoid triggering the vulnerable code path

# Check DSA configuration in device tree or kernel parameters
# Ensure CPU port is properly defined for Felix driver

🧯 If You Can't Patch

  • Monitor system memory usage for unusual consumption patterns
  • Restrict access to systems using DSA Felix driver configuration

🔍 How to Verify

Check if Vulnerable:

Check kernel version and DSA Felix driver configuration. Vulnerable if using affected kernel with DSA Felix driver without CPU port.

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version includes the fix commits or check with distribution security updates.

📡 Detection & Monitoring

Log Indicators:

  • Kernel oom-killer messages
  • Memory allocation failures
  • System instability logs

Network Indicators:

  • Degraded network performance on affected interfaces

SIEM Query:

Search for kernel panic, oom-killer, or memory exhaustion events on systems with DSA Felix driver

🔗 References

📤 Share & Export