CVE-2024-36288
📋 TL;DR
This CVE describes a memory access vulnerability in the Linux kernel's SUNRPC implementation where the gss_free_in_token_pages() function incorrectly assumes the in_token->pages[] array is NULL-terminated. This can lead to out-of-bounds memory access and potential kernel memory corruption. Systems running affected Linux kernel versions with SUNRPC/GSS functionality enabled are vulnerable.
💻 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 →⚠️ Risk & Real-World Impact
Worst Case
Kernel memory corruption leading to system crash, denial of service, or potential privilege escalation if combined with other vulnerabilities.
Likely Case
Kernel panic or system crash resulting in denial of service, potentially triggered during GSS authentication operations.
If Mitigated
Minimal impact if SUNRPC/GSS functionality is disabled or not in use.
🎯 Exploit Status
Exploitation requires triggering the vulnerable code path during GSS authentication operations.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: Multiple stable kernel versions with fixes available (see reference commits).
Vendor Advisory: https://git.kernel.org/stable/c/0a1cb0c6102bb4fd310243588d39461da49497ad
Restart Required: Yes
Instructions:
1. Update Linux kernel to patched version from your distribution vendor. 2. Reboot system to load new kernel. 3. Verify kernel version after reboot.
🔧 Temporary Workarounds
Disable SUNRPC/GSS functionality
linuxIf not required, disable SUNRPC and GSS authentication modules to prevent vulnerable code execution.
modprobe -r auth_rpcgss
modprobe -r rpcsec_gss_krb5
echo 'blacklist auth_rpcgss' >> /etc/modprobe.d/blacklist.conf
echo 'blacklist rpcsec_gss_krb5' >> /etc/modprobe.d/blacklist.conf
🧯 If You Can't Patch
- Disable NFS services using Kerberos/GSS authentication
- Implement network segmentation to isolate systems using vulnerable GSS functionality
🔍 How to Verify
Check if Vulnerable:
Check kernel version and if SUNRPC/GSS modules are loaded: lsmod | grep -E 'auth_rpcgss|rpcsec_gss_krb5'
Check Version:
uname -r
Verify Fix Applied:
Verify kernel version is updated to patched version and vulnerable modules are either updated or disabled.
📡 Detection & Monitoring
Log Indicators:
- Kernel panic logs mentioning SUNRPC, GSS, or KASAN memory access violations
- System crash/reboot events during authentication operations
Network Indicators:
- Failed NFS authentication attempts followed by service disruption
SIEM Query:
source="kernel" AND ("KASAN" OR "SUNRPC" OR "gss") AND ("panic" OR "Oops" OR "BUG")
🔗 References
- https://git.kernel.org/stable/c/0a1cb0c6102bb4fd310243588d39461da49497ad
- https://git.kernel.org/stable/c/4a77c3dead97339478c7422eb07bf4bf63577008
- https://git.kernel.org/stable/c/4cefcd0af7458bdeff56a9d8dfc6868ce23d128a
- https://git.kernel.org/stable/c/57ff6c0a175930856213b2aa39f8c845a53e5b1c
- https://git.kernel.org/stable/c/6ed45d20d30005bed94c8c527ce51d5ad8121018
- https://git.kernel.org/stable/c/af628d43a822b78ad8d4a58d8259f8bf8bc71115
- https://git.kernel.org/stable/c/b4878ea99f2b40ef1925720b1b4ca7f4af1ba785
- https://git.kernel.org/stable/c/0a1cb0c6102bb4fd310243588d39461da49497ad
- https://git.kernel.org/stable/c/4a77c3dead97339478c7422eb07bf4bf63577008
- https://git.kernel.org/stable/c/4cefcd0af7458bdeff56a9d8dfc6868ce23d128a
- https://git.kernel.org/stable/c/57ff6c0a175930856213b2aa39f8c845a53e5b1c
- https://git.kernel.org/stable/c/6ed45d20d30005bed94c8c527ce51d5ad8121018
- https://git.kernel.org/stable/c/af628d43a822b78ad8d4a58d8259f8bf8bc71115
- https://git.kernel.org/stable/c/b4878ea99f2b40ef1925720b1b4ca7f4af1ba785
- https://git.kernel.org/stable/c/f9977e4e0cd98a5f06f2492b4f3547db58deabf5
- https://lists.debian.org/debian-lts-announce/2024/06/msg00020.html