CVE-2022-49468
📋 TL;DR
This is a memory leak vulnerability in the Linux kernel's thermal subsystem. When device registration fails in __thermal_cooling_device_register(), allocated memory isn't properly freed, causing kernel memory exhaustion over time. It affects Linux systems using thermal cooling devices.
💻 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 →⚠️ Risk & Real-World Impact
Worst Case
Sustained exploitation could lead to kernel memory exhaustion, causing system instability, crashes, or denial of service through resource depletion.
Likely Case
Gradual memory consumption leading to performance degradation and potential system instability over time, especially on systems with frequent thermal device registration failures.
If Mitigated
Minimal impact with proper monitoring and memory limits in place; system remains functional but may experience performance issues.
🎯 Exploit Status
Exploitation requires local access and ability to trigger thermal device registration failures; not trivial to weaponize.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in kernel commits: 18530bedd221, 21ccc58b671a, 3802171f0b5b, 98a160e898c0, 9abdf0c01842
Vendor Advisory: https://git.kernel.org/stable/c/18530bedd221160823f63ccc20dd55c7a03edbcf
Restart Required: Yes
Instructions:
1. Update Linux kernel to version containing fix commits. 2. Check distribution-specific security advisories. 3. Reboot system after kernel update.
🔧 Temporary Workarounds
Disable thermal cooling devices
linuxPrevent thermal cooling device registration by disabling thermal management features (not recommended for production systems).
echo 0 > /sys/class/thermal/thermal_zone0/mode
modprobe -r thermal_sys
🧯 If You Can't Patch
- Implement kernel memory monitoring and alerting for unusual consumption patterns.
- Restrict local user access and limit process capabilities to reduce attack surface.
🔍 How to Verify
Check if Vulnerable:
Check kernel version and compare with distribution security advisories; examine if thermal subsystem is active: lsmod | grep thermal
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version includes fix commits; check /proc/version or uname -r; confirm thermal subsystem functions normally.
📡 Detection & Monitoring
Log Indicators:
- Kernel oom-killer messages
- Memory allocation failures in dmesg
- Thermal subsystem error messages
Network Indicators:
- None - local vulnerability only
SIEM Query:
source="kernel" AND ("oom-killer" OR "memory allocation failure" OR "thermal_cooling_device")
🔗 References
- https://git.kernel.org/stable/c/18530bedd221160823f63ccc20dd55c7a03edbcf
- https://git.kernel.org/stable/c/21ccc58b671aea924f2481cf5c1cf0ebbfd3552d
- https://git.kernel.org/stable/c/3802171f0b5b8b831f4ade5c827547cb323a5bb2
- https://git.kernel.org/stable/c/98a160e898c0f4a979af9de3ab48b4b1d42d1dbb
- https://git.kernel.org/stable/c/9abdf0c0184230f0cb5c6685aabf33dda89aa9fb