CVE DatabaseCVE-2024-36971
한국어 권고문 →
CVE-2024-369717.8/HIGHCISA KEVCWE-416CWE-416

Linux Kernel Network Subsystem Use-After-Free Vulnerability (CVE-2024-36971) Technical Advisory

⚡ Jump to Patch
Affected Vendors
linux
Affected Components
linux_kernel
Published Date
2024-06-10
CVSS v3.1
7.8
HIGH
EPSS (30d)
2.7%
FIRST.org
CISA KEV
Exploited

Executive & SecOps Summary

SECOPS ASSESSMENT
Affected Scope

Linux kernel versions utilizing the network subsystem, particularly environments running UDP socket-based applications

Impact

Local attackers can exploit an RCU synchronization race condition to trigger a Use-After-Free (UAF), potentially leading to local privilege escalation (LPE) to root or system-wide Denial of Service (DoS)

Mitigation

Immediately upgrade the Linux kernel to the latest patched stable release and perform a system reboot

Affected Products & Version Scope

Linux kernel versions prior to 6.10 that lack the official stable backported patches

Remediation & Live Workaround Commands

PATCH & WORKAROUND

1. Official Patch & Version Upgrade Commands

Update the Linux kernel package to the latest version using the system package manager and reboot the host to apply changes.

bash
# For Debian/Ubuntu-based systems
sudo apt-get update && sudo apt-get install --only-upgrade -y linux-image-generic

# For RHEL/Rocky Linux/AlmaLinux-based systems
sudo dnf upgrade -y kernel

# Reboot the system to load the patched kernel
sudo reboot

2. Temporary Workaround & Hardening Configuration

If an immediate reboot is not feasible in production, restrict unprivileged user namespaces and limit access to network utilities to minimize the attack surface.

bash
# Disable unprivileged user namespaces to mitigate local exploit vectors
sudo sysctl -w kernel.unprivileged_userns_clone=0

# Restrict access to compilers and network debugging tools for non-root users
sudo chmod 700 /usr/bin/gcc /usr/bin/g++ /usr/bin/nc 2>/dev/null || true

3. Log Audit & IoC Verification Commands

Verify the running kernel version and inspect system logs for signs of kernel panics or memory corruption related to destination cache release.

bash
# Check the currently active kernel version
uname -r

# Scan kernel ring buffer and system logs for UAF or GPF indicators
sudo dmesg -T | grep -Ei 'use-after-free|general protection fault|dst_release'
sudo journalctl -k --since '24 hours ago' | grep -Ei 'dst_negative_advice|sk_dst_cache'
Interactive SecOps Remediation Checklist
0/4 (0%)
Recommended Security Control & Mitigation Partner
SentinelOne Singularity AI EDR
Due to active exploitation in the wild, it is highly recommended to apply the latest Linux kernel security updates and reboot affected systems immediately.

Block Kernel Privilege Escalation & Ransomware Payloads Before You Can Reboot

Protect unpatched Windows, Linux, and macOS workloads against in-memory exploitation and lateral movement with autonomous EDR.

100% MITRE ATT&CK Detection · 1-Click Rollback

Technical Root Cause & Exploitation Mechanics

1. Vulnerability Overview & Root Cause

This vulnerability (CVE-2024-36971) is a Use-After-Free (UAF) flaw within the Linux kernel's network routing cache management function, __dst_negative_advice(). The root cause lies in the improper enforcement of RCU (Read-Copy Update) rules when clearing the socket's destination cache (sk->sk_dst_cache). Standard RCU protocol dictates that the kernel must first clear the cache pointer (sk_dst_reset) to prevent further references, and only then release the old destination object (dst_release). However, __dst_negative_advice() executed these operations in the incorrect order, creating a race condition where active threads could reference an already freed memory block.

2. Exploitation Mechanics & Attack Scenario

An attacker with local access can initiate a race condition by spawning multiple threads that concurrently manipulate UDP socket states and trigger routing updates. When __dst_negative_advice() is invoked, the destination cache object is released via dst_release before the socket cache pointer is cleared. During this brief window before the RCU grace period expires, another thread accessing the socket attempts to reuse the stale cache pointer. By leveraging heap spraying techniques to overwrite the freed memory region with controlled payloads, the attacker can hijack the kernel's execution flow, leading to arbitrary code execution in kernel space (Ring 0).

3. Infrastructure & Business Impact

As this vulnerability is cataloged in CISA's Known Exploited Vulnerabilities (KEV) list, active exploitation in the wild has been confirmed. In multi-tenant cloud environments or shared container hosts, a local attacker can exploit this vulnerability to escape container boundaries, compromise the host operating system, and gain full administrative control. This poses a severe threat to high-throughput UDP services such as DNS servers, media streaming platforms, and gaming backends.

Official Vendor Advisories & References

NVD Original English Description

In the Linux kernel, the following vulnerability has been resolved: net: fix __dst_negative_advice() race __dst_negative_advice() does not enforce proper RCU rules when sk->dst_cache must be cleared, leading to possible UAF. RCU rules are that we must first clear sk->sk_dst_cache, then call dst_release(old_dst). Note that sk_dst_reset(sk) is implementing this protocol correctly, while __dst_negative_advice() uses the wrong order. Given that ip6_negative_advice() has special logic against RTF_CACHE, this means each of the three ->negative_advice() existing methods must perform the sk_dst_reset() themselves. Note the check against NULL dst is centralized in __dst_negative_advice(), there is no need to duplicate it in various callbacks. Many thanks to Clement Lecigne for tracking this issue. This old bug became visible after the blamed commit, using UDP sockets.

Frequently Asked SecOps Questions (CVE-2024-36971)

FAQ

Q1. How critical is CVE-2024-36971 and is it actively exploited in the wild?

CVE-2024-36971 is rated CVSS 7.8 (HIGH) with a 30-day EPSS exploitation probability of 2.7%. It is listed in the CISA Known Exploited Vulnerabilities (KEV) catalog, requiring immediate emergency remediation.

Q2. Which vendors and products are affected by CVE-2024-36971?

Primary impacted vendors include linux across linux_kernel. Scope summary: Linux kernel versions prior to 6.10 that lack the official stable backported patches

Q3. What temporary mitigations or workarounds exist for CVE-2024-36971 before patching?

[Mitigation] Immediately upgrade the Linux kernel to the latest patched stable release and perform a system reboot Follow the CLI remediation commands and interactive SecOps checklist on this page to restrict exposure prior to your maintenance window.

SECOPS WORKBENCH INTEGRATION

Generate an Internal Engineering Notice or CISO Report for CVE-2024-36971

Instantly format this advisory into an executive CISO summary or engineering patch ticket.

Generate Report →

🔗 Related Advisories in Similar Stack (linux)

View Category →
SecOps Advisory Dispatch & RSS Feed

Subscribe to Daily Vulnerability Briefings & KEV Alerts

Concise morning briefings for SecOps, DevSecOps, and SRE teams covering newly exploited CVEs and mitigation priorities.

Slack / Teams / RSS Feed:
PatchKO
CVE-2024-36971 Linux Kernel Network Subsystem Use-After-Free Vulnerability (CVE-2024-36971) Technical Advisory (CVSS 7.8) - Patch & Workaround | CVE Pulse