CVE-2024-49956

5.5 MEDIUM

📋 TL;DR

This CVE describes a double-free vulnerability in the Linux kernel's GFS2 filesystem implementation where destroy_workqueue() is called twice on the same work queue when gfs2_fill_super() fails. This can cause kernel crashes or system instability. Only systems using the GFS2 filesystem are affected.

💻 Affected Systems

Products:
  • Linux kernel with GFS2 filesystem support
Versions: Specific kernel versions containing the vulnerable code (check git commits for exact ranges)
Operating Systems: Linux distributions with vulnerable kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when GFS2 filesystem is compiled into kernel or loaded as module, and when mounting GFS2 filesystems fails.

📦 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 →

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash and denial of service, potentially causing data corruption or loss in GFS2 filesystems.

🟠

Likely Case

System instability or crash when mounting GFS2 filesystems fails, resulting in temporary denial of service.

🟢

If Mitigated

No impact if GFS2 filesystem is not used or if mounting operations succeed without errors.

🌐 Internet-Facing: LOW - This is a local filesystem vulnerability requiring local access or specific filesystem operations.
🏢 Internal Only: MEDIUM - Internal systems using GFS2 filesystems could experience crashes during filesystem operations.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Exploitation requires triggering GFS2 filesystem mount failures, which may require specific conditions or local access.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions containing commits 6cb9df81a2c462b89d2f9611009ab43ae8717841 and a5336035728d77efd76306940d742a6f23debe68

Vendor Advisory: https://git.kernel.org/stable/c/6cb9df81a2c462b89d2f9611009ab43ae8717841

Restart Required: Yes

Instructions:

1. Update Linux kernel to patched version from your distribution vendor. 2. Reboot system to load new kernel. 3. Verify GFS2 module loads correctly if used.

🔧 Temporary Workarounds

Disable GFS2 filesystem

linux

Prevent loading of GFS2 kernel module to eliminate vulnerability surface

echo 'install gfs2 /bin/false' >> /etc/modprobe.d/disable-gfs2.conf
rmmod gfs2

Avoid GFS2 filesystem usage

linux

Do not mount or use GFS2 filesystems until patched

umount /dev/gfs2_partition
Remove GFS2 entries from /etc/fstab

🧯 If You Can't Patch

  • Avoid using GFS2 filesystems and unmount any existing GFS2 mounts
  • Implement monitoring for kernel crashes or system instability related to filesystem operations

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if GFS2 module is loaded: uname -r && lsmod | grep gfs2

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is patched and test GFS2 mount operations: dmesg | grep -i gfs2

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages in /var/log/messages or journalctl
  • GFS2-related error messages during filesystem operations
  • System crash reports

Network Indicators:

  • None - this is a local filesystem vulnerability

SIEM Query:

source="kernel" AND ("panic" OR "Oops" OR "gfs2")

🔗 References

📤 Share & Export