CVE-2021-47550

5.5 MEDIUM

📋 TL;DR

This CVE describes a memory leak vulnerability in the AMD GPU driver within the Linux kernel. When the kobject_init_and_add function fails in the amdgpu_get_xgmi_hive function, the kernel fails to properly release memory, potentially leading to resource exhaustion. This affects Linux systems with AMD GPUs using the affected driver versions.

💻 Affected Systems

Products:
  • Linux kernel with AMD GPU drivers
Versions: Specific kernel versions containing the vulnerable code (check git commits for exact ranges)
Operating Systems: Linux distributions with affected kernel versions
Default Config Vulnerable: ⚠️ Yes
Notes: Only affects systems with AMD GPUs using the amdgpu driver. Requires the specific code path to be triggered.

📦 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

Sustained exploitation could lead to kernel memory exhaustion, causing system instability, denial of service, or kernel panic.

🟠

Likely Case

Memory leak gradually consumes kernel resources, potentially leading to performance degradation or system instability over time.

🟢

If Mitigated

With proper monitoring and resource limits, impact is limited to potential performance issues that can be detected and addressed.

🌐 Internet-Facing: LOW - This vulnerability requires local access or existing kernel-level access to trigger.
🏢 Internal Only: MEDIUM - Local users or processes with appropriate permissions could trigger the memory leak, potentially affecting system stability.

🎯 Exploit Status

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

Exploitation requires triggering the specific failure condition in the amdgpu_get_xgmi_hive function, which may require specific hardware/software conditions.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions containing the fix commits: 27dfaedc0d321b4ea4e10c53e4679d6911ab17aa, 75752ada77e0726327adf68018b9f50ae091baeb, c746945fb6bcbe3863c9ea6369c7ef376e38e5eb

Vendor Advisory: https://git.kernel.org/stable/c/27dfaedc0d321b4ea4e10c53e4679d6911ab17aa

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix commits. 2. Reboot system. 3. Verify kernel version after reboot.

🔧 Temporary Workarounds

Disable AMD GPU features if not needed

linux

If AMD GPU features are not required, consider disabling or removing the amdgpu driver module.

sudo modprobe -r amdgpu

🧯 If You Can't Patch

  • Monitor system memory usage and kernel logs for signs of memory leaks
  • Implement resource limits and restart services if memory usage becomes excessive

🔍 How to Verify

Check if Vulnerable:

Check kernel version and compare with affected versions. Check if amdgpu module is loaded: lsmod | grep amdgpu

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version contains the fix commits. Check dmesg for any memory leak warnings related to amdgpu.

📡 Detection & Monitoring

Log Indicators:

  • Kernel oom-killer messages
  • Memory allocation failures in dmesg
  • amdgpu driver error messages

Network Indicators:

  • None - this is a local kernel vulnerability

SIEM Query:

source="kernel" AND ("oom-killer" OR "memory leak" OR "amdgpu" AND "error")

🔗 References

📤 Share & Export