CVE-2022-49173
📋 TL;DR
A vulnerability in the Linux kernel's FSI SPI driver could cause denial of service through infinite polling loops. If the hardware enters a bad state, the driver may hang indefinitely while waiting for status updates, affecting systems using this specific SPI controller interface.
💻 Affected Systems
- Linux kernel with FSI SPI driver enabled
📦 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
Complete system hang requiring hard reboot, potentially causing data loss or service disruption in critical systems.
Likely Case
SPI communication failure leading to device malfunction or service interruption for hardware using this interface.
If Mitigated
Driver returns error instead of hanging, allowing system to handle the failure gracefully.
🎯 Exploit Status
Exploitation requires ability to trigger hardware faults in the SPI controller, which typically requires physical access or privileged software access.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Fixed in kernel commits: 89b35e3f28514087d3f1e28e8f5634fbfd07c554, d4982ceb137e6ecd2b466a6de639790a148cf19a, dac1438f347d3b8cf892105c94e254f29c5764de
Vendor Advisory: https://git.kernel.org/stable/c/89b35e3f28514087d3f1e28e8f5634fbfd07c554
Restart Required: Yes
Instructions:
1. Update Linux kernel to version containing the fix commits. 2. Rebuild kernel if compiling from source. 3. Reboot system to load patched kernel.
🔧 Temporary Workarounds
Disable FSI SPI driver
linuxRemove or disable the vulnerable driver module if not needed
modprobe -r spi_fsi
echo 'blacklist spi_fsi' >> /etc/modprobe.d/blacklist.conf
🧯 If You Can't Patch
- Monitor system for SPI communication failures or unexpected hangs
- Implement watchdog timers to detect and recover from potential hangs
🔍 How to Verify
Check if Vulnerable:
Check if spi_fsi module is loaded: lsmod | grep spi_fsi
Check Version:
uname -r
Verify Fix Applied:
Check kernel version includes fix commits or verify driver returns errors instead of hanging on timeout
📡 Detection & Monitoring
Log Indicators:
- Kernel logs showing SPI timeout errors
- System watchdog reboots
- SPI device communication failures
Network Indicators:
- None - this is a local hardware interface issue
SIEM Query:
Search for: 'spi_fsi timeout' OR 'kernel panic' OR 'watchdog reboot' in system logs