CVE-2022-49787
📋 TL;DR
This CVE describes a memory leak vulnerability in the Linux kernel's MMC/SD host controller driver for PCI devices. When the amd_probe() function fails to properly release a PCI device reference via pci_dev_put(), it can cause kernel memory exhaustion over time. This affects Linux systems using the sdhci-pci driver with AMD hardware.
💻 Affected Systems
- Linux kernel
📦 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
Sustained exploitation could lead to kernel memory exhaustion, causing system instability, denial of service, or potential kernel panic/crash.
Likely Case
Gradual memory leak over extended periods leading to performance degradation and eventual system instability requiring reboot.
If Mitigated
Minimal impact with proper monitoring and timely patching; memory pressure but unlikely to cause immediate system failure.
🎯 Exploit Status
Exploitation requires triggering specific error conditions in device initialization; not a straightforward memory corruption vulnerability.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in kernel commits referenced in CVE description
Vendor Advisory: https://git.kernel.org/stable/c/222cfa0118aa68687ace74aab8fdf77ce8fbd7e6
Restart Required: Yes
Instructions:
1. Update Linux kernel to version containing fixes 2. Reboot system to load patched kernel 3. Verify kernel version after reboot
🔧 Temporary Workarounds
Disable affected hardware module
linuxBlacklist or disable the sdhci-pci driver if not required
echo 'blacklist sdhci-pci' >> /etc/modprobe.d/blacklist.conf
update-initramfs -u
reboot
🧯 If You Can't Patch
- Monitor kernel memory usage and system stability metrics
- Implement aggressive process monitoring and restart policies for systems showing memory pressure
🔍 How to Verify
Check if Vulnerable:
Check kernel version and verify if sdhci-pci module is loaded: lsmod | grep sdhci_pci
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is updated and check dmesg for sdhci-pci initialization without memory leak warnings
📡 Detection & Monitoring
Log Indicators:
- Kernel OOM (Out of Memory) messages in dmesg
- Increasing memory usage without corresponding process allocation
- System instability or crash reports
Network Indicators:
- None - local vulnerability only
SIEM Query:
source="kernel" AND ("Out of memory" OR "kernel panic" OR "sdhci_pci")
🔗 References
- https://git.kernel.org/stable/c/222cfa0118aa68687ace74aab8fdf77ce8fbd7e6
- https://git.kernel.org/stable/c/27f712cd47d65e14cd52cc32a23d42aeef583d5d
- https://git.kernel.org/stable/c/35bca18092685b488003509fef7055aa2d4f2ebc
- https://git.kernel.org/stable/c/4423866d31a06a810db22062ed13389416a66b22
- https://git.kernel.org/stable/c/5dbd6378dbf96787d6dbcca44156c511ae085ea3
- https://git.kernel.org/stable/c/7570e5b5419ffd34b6dc45a88c51e113a9a187e3
- https://git.kernel.org/stable/c/a99a547658e5d451f01ed307426286716b6f01bf