CVE-2024-35247
📋 TL;DR
A null pointer dereference vulnerability in the Linux kernel's FPGA region subsystem could allow local attackers to cause a kernel panic (denial of service) or potentially execute arbitrary code. This affects systems using FPGA functionality with parent devices lacking proper driver registration. The vulnerability requires local access to exploit.
💻 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 →⚠️ Risk & Real-World Impact
Worst Case
Kernel panic leading to system crash and denial of service, with potential for privilege escalation or arbitrary code execution in kernel context.
Likely Case
Kernel panic causing system crash and denial of service when FPGA programming operations are attempted on improperly configured devices.
If Mitigated
No impact if FPGA functionality is not used or if proper module refcounting is already implemented.
🎯 Exploit Status
Requires local access and knowledge of FPGA subsystem operations. Exploitation depends on specific FPGA hardware configuration.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Patches available in stable kernel branches (commits: 2279c09c36165ccded4d506d11a7714e13b56019, 26e6e25d742e29885cf44274fcf6b744366c4702, 4d7d12b643c00e7eea51b49a60a2ead182633ec8, 75a001914a8d2ccdcbe4b8cc7e94ac71d0e66093, 9b4eee8572dcf82b2ed17d9a328c7fb87df2f0e8)
Vendor Advisory: https://git.kernel.org/stable/c/2279c09c36165ccded4d506d11a7714e13b56019
Restart Required: Yes
Instructions:
1. Update to latest stable kernel version containing the fix. 2. For distributions: Use package manager to update kernel package. 3. Reboot system to load new kernel.
🔧 Temporary Workarounds
Disable FPGA functionality
linuxRemove or disable FPGA kernel modules if not required
modprobe -r fpga_region
echo 'blacklist fpga_region' >> /etc/modprobe.d/blacklist.conf
🧯 If You Can't Patch
- Restrict local access to systems using FPGA functionality
- Implement strict access controls and monitoring for FPGA programming operations
🔍 How to Verify
Check if Vulnerable:
Check kernel version and if FPGA modules are loaded: 'lsmod | grep fpga' and 'uname -r'
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is patched and test FPGA functionality with proper parent device configuration
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages related to null pointer dereference in FPGA subsystem
- System crash logs when FPGA operations are performed
Network Indicators:
- None - local vulnerability only
SIEM Query:
kernel: "NULL pointer dereference" AND "fpga" OR "kernel panic" AND "fpga"
🔗 References
- https://git.kernel.org/stable/c/2279c09c36165ccded4d506d11a7714e13b56019
- https://git.kernel.org/stable/c/26e6e25d742e29885cf44274fcf6b744366c4702
- https://git.kernel.org/stable/c/4d7d12b643c00e7eea51b49a60a2ead182633ec8
- https://git.kernel.org/stable/c/75a001914a8d2ccdcbe4b8cc7e94ac71d0e66093
- https://git.kernel.org/stable/c/9b4eee8572dcf82b2ed17d9a328c7fb87df2f0e8
- https://git.kernel.org/stable/c/b7c0e1ecee403a43abc89eb3e75672b01ff2ece9
- https://git.kernel.org/stable/c/2279c09c36165ccded4d506d11a7714e13b56019
- https://git.kernel.org/stable/c/26e6e25d742e29885cf44274fcf6b744366c4702
- https://git.kernel.org/stable/c/4d7d12b643c00e7eea51b49a60a2ead182633ec8
- https://git.kernel.org/stable/c/75a001914a8d2ccdcbe4b8cc7e94ac71d0e66093
- https://git.kernel.org/stable/c/9b4eee8572dcf82b2ed17d9a328c7fb87df2f0e8
- https://git.kernel.org/stable/c/b7c0e1ecee403a43abc89eb3e75672b01ff2ece9