CVE-2022-50516
📋 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
- Linux kernel
⚠️ 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.
🎯 Exploit Status
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
linuxPrevent 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*)