CVE-2022-50516

5.5 MEDIUM

📋 TL;DR

This vulnerability in the Linux kernel's Distributed Lock Manager (DLM) component allows a NULL pointer dereference when unlocking locks without the DLM_LKF_VALBLK flag set. It can cause kernel crashes leading to denial of service. Systems using DLM for cluster management or file systems like GFS2/OCFS2 are affected.

💻 Affected Systems

Products:
  • Linux kernel
Versions: Kernel versions before the fix commits (specific versions vary by distribution)
Operating Systems: Linux distributions using affected kernel versions
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when DLM is used (typically in clustering setups like GFS2, OCFS2, or custom DLM applications).

⚠️ Risk & Real-World Impact

🔴

Worst Case

Kernel panic leading to system crash and denial of service, potentially affecting entire clusters in high-availability environments.

🟠

Likely Case

System crash or instability when DLM operations are performed without proper VALBLK flag handling, causing service disruption.

🟢

If Mitigated

Minimal impact if DLM is not used or systems are properly patched.

🌐 Internet-Facing: LOW - DLM is typically used internally for cluster coordination, not exposed externally.
🏢 Internal Only: MEDIUM - Affects systems using DLM for clustering, which are often critical infrastructure components.

🎯 Exploit Status

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

Requires ability to perform DLM operations, typically needing local access or cluster membership. The crash was discovered during lock torture testing.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Fixed in kernel commits: 1ab6d3030652b5de0015176a5b0ad9df9b847514, 57c1cfb5781068e5d3632bc6e5f74a8fcc4f1a30, 7175e131ebba47afef47e6ac4d5bab474d1e6e49, ea7be82fd7e1f5de72208bce93fbbe6de6c13dec

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

Restart Required: Yes

Instructions:

1. Update Linux kernel to version containing the fix. 2. Check distribution-specific security advisories. 3. Reboot system to load new kernel.

🔧 Temporary Workarounds

Disable DLM module

linux

Prevent loading of DLM kernel module if not required

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

🧯 If You Can't Patch

  • Avoid using DLM-based clustering if possible
  • Implement monitoring for kernel crashes and have recovery procedures ready

🔍 How to Verify

Check if Vulnerable:

Check kernel version and if DLM module is loaded: 'uname -r' and 'lsmod | grep dlm'

Check Version:

uname -r

Verify Fix Applied:

Verify kernel version is after fix commits and test DLM operations don't crash

📡 Detection & Monitoring

Log Indicators:

  • Kernel oops messages mentioning 'dlm' or 'sb_lvbptr'
  • System crashes with DLM-related stack traces

Network Indicators:

  • Unusual cluster communication patterns if DLM crashes

SIEM Query:

kernel: *BUG* AND (*dlm* OR *sb_lvbptr*)

🔗 References

📤 Share & Export