CVE-2025-38659

5.5 MEDIUM

📋 TL;DR

This CVE describes a NULL pointer dereference vulnerability in the Linux kernel's GFS2 filesystem. When a node withdraws while being the only node with the filesystem mounted, the kernel attempts self-recovery that dereferences a NULL pointer, causing a kernel panic. This affects systems using the GFS2 clustered filesystem.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Specific kernel versions with vulnerable GFS2 code (exact range depends on patch backporting)
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable if GFS2 filesystem is configured and mounted. Most systems don't use GFS2 by default.

📦 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

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

🟠

Likely Case

System crash and denial of service when GFS2 filesystem experiences node withdrawal in single-node configuration.

🟢

If Mitigated

Minimal impact if systems don't use GFS2 filesystem or have proper monitoring for node failures.

🌐 Internet-Facing: LOW - GFS2 is typically used in internal clustered storage systems, not directly internet-facing.
🏢 Internal Only: MEDIUM - Affects internal systems using GFS2 clustered filesystems, particularly in single-node configurations.

🎯 Exploit Status

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

Exploitation requires ability to trigger GFS2 node withdrawal in single-node configuration. Likely requires local access or ability to cause filesystem errors.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Kernel versions containing commits 1a91ba12abef628b43cada87478328274d988e88 and related fixes

Vendor Advisory: https://git.kernel.org/stable/c/1a91ba12abef628b43cada87478328274d988e88

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 functionality if used.

🔧 Temporary Workarounds

Disable GFS2 self-recovery

all

Prevent the vulnerable self-recovery code from executing by avoiding single-node GFS2 configurations

# Ensure GFS2 is configured with multiple nodes or not used
# Check GFS2 mount status: mount | grep gfs2
# Consider using alternative filesystems if single-node needed

🧯 If You Can't Patch

  • Avoid using GFS2 filesystem in production environments
  • Ensure GFS2 is always configured with multiple active nodes to avoid single-node withdrawal scenario

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if GFS2 is mounted: uname -r && mount | grep gfs2

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is patched and test GFS2 functionality in controlled environment

📡 Detection & Monitoring

Log Indicators:

  • Kernel panic messages related to NULL pointer dereference
  • GFS2 withdrawal messages in system logs
  • Filesystem error messages mentioning gfs2_recover_func

Network Indicators:

  • Unusual cluster communication patterns if GFS2 is clustered

SIEM Query:

source="kernel" AND ("NULL pointer dereference" OR "gfs2" OR "withdraw")

🔗 References

📤 Share & Export