CVE-2024-46752
📋 TL;DR
This CVE addresses a kernel panic vulnerability in the Linux kernel's Btrfs filesystem. When handling relocation tree extent buffers without proper backref flags, the system could crash unexpectedly. This affects Linux systems using Btrfs filesystems with kernel versions containing the vulnerable code.
💻 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
System crash leading to denial of service, potential data corruption if crash occurs during critical filesystem operations.
Likely Case
System crash/panic when specific Btrfs relocation operations encounter malformed extent buffers, causing temporary unavailability.
If Mitigated
Transaction abort with error logging instead of crash, maintaining system stability with potential operation failure.
🎯 Exploit Status
Requires specific conditions in Btrfs filesystem operations. More likely to be triggered accidentally than maliciously.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Kernel versions containing commits: 0fbac73a97286a7ec72229cb9b42d760a2c717ac, 41a0f85e268d72fe04f731b8ceea4748c2d65491, b50857b96429a09fd3beed9f7f21b7bb7c433688, b56329a782314fde5b61058e2a25097af7ccb675, f895db00c65e5d77c437cce946da9ec29dcdf563
Vendor Advisory: https://git.kernel.org/stable/c/0fbac73a97286a7ec72229cb9b42d760a2c717ac
Restart Required: Yes
Instructions:
1. Update Linux kernel to patched version. 2. Check distribution-specific security advisories. 3. Reboot system after kernel update.
🔧 Temporary Workarounds
Avoid Btrfs relocation operations
linuxMinimize Btrfs operations that trigger relocation tree updates
🧯 If You Can't Patch
- Monitor system logs for Btrfs errors and kernel panics
- Consider migrating critical data to alternative filesystems temporarily
🔍 How to Verify
Check if Vulnerable:
Check kernel version and verify if Btrfs module is loaded: lsmod | grep btrfs && uname -r
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version includes the fix commits or check with distribution's security update verification tools
📡 Detection & Monitoring
Log Indicators:
- Kernel panic messages
- Btrfs error logs mentioning update_ref_for_cow
- Transaction abort logs
SIEM Query:
source="kernel" AND ("panic" OR "BUG_ON" OR "btrfs" AND "error")
🔗 References
- https://git.kernel.org/stable/c/0fbac73a97286a7ec72229cb9b42d760a2c717ac
- https://git.kernel.org/stable/c/41a0f85e268d72fe04f731b8ceea4748c2d65491
- https://git.kernel.org/stable/c/b50857b96429a09fd3beed9f7f21b7bb7c433688
- https://git.kernel.org/stable/c/b56329a782314fde5b61058e2a25097af7ccb675
- https://git.kernel.org/stable/c/f895db00c65e5d77c437cce946da9ec29dcdf563
- https://lists.debian.org/debian-lts-announce/2025/01/msg00001.html