Linux Kernel futex_requeue Local Privilege Escalation Vulnerability (CVE-2014-3153, Towelroot)
Executive & SecOps Summary
SECOPS ASSESSMENTAll Linux distributions and Android devices running Linux kernel versions up to and including 3.14.5
A local unprivileged user can exploit this vulnerability to corrupt kernel memory and gain full root privileges on the target system
Upgrade the Linux kernel to the latest patched version provided by your OS vendor and reboot the system
Affected Products & Version Scope
Remediation & Live Workaround Commands
PATCH & WORKAROUND1. Official Patch & Version Upgrade Commands
Update your Linux kernel to the latest secure version using your distribution's package manager.
# For RedHat / CentOS / Rocky Linux systems
sudo yum update -y kernel
# Reboot to apply the new kernel
sudo reboot
# For Debian / Ubuntu systems
sudo apt-get update
sudo apt-get install --only-upgrade -y linux-image-generic
sudo reboot2. Temporary Workaround & Hardening Configuration
If an immediate reboot or kernel upgrade is not feasible, restrict local access and compiler execution to mitigate the risk of exploitation.
# Restrict compiler access to prevent local compilation of exploit payloads
sudo chmod 700 /usr/bin/gcc /usr/bin/g++ /usr/bin/make 2>/dev/null || true
# Restrict SSH access to trusted IP ranges only in /etc/hosts.allow and /etc/hosts.deny
echo 'sshd: ALL' | sudo tee -a /etc/hosts.deny
echo 'sshd: 10.0.0.0/8' | sudo tee -a /etc/hosts.allow3. Log Audit & IoC Verification Commands
Run the following script to check if your current running kernel version is within the vulnerable range.
# Retrieve the current running kernel version
CURRENT_KERNEL=$(uname -r)
echo 'Current Kernel Version:' $CURRENT_KERNEL
# Check if the kernel version is 3.14.5 or lower
if [[ '$CURRENT_KERNEL' =~ ^[0-2]\. ]] || [[ '$CURRENT_KERNEL' =~ ^3\.([0-9]|1[0-3]|14\.[0-5])($|[^0-9]) ]]; then
echo '[WARNING] This system is highly vulnerable to CVE-2014-3153 (Towelroot).'
else
echo '[INFO] The system kernel is patched or outside the vulnerable range.'
fiBlock 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.
Technical Root Cause & Exploitation Mechanics
1. Vulnerability Overview & Root Cause
This vulnerability, widely known as 'Towelroot', resides in the Fast Userspace Mutex (Futex) subsystem within kernel/futex.c of the Linux kernel. The root cause is a design flaw in the futex_requeue function, which fails to validate whether the two futex addresses provided in the system call are distinct. This lack of validation allows an attacker to trigger a requeue operation on the same futex address, leading to unsafe modification of the kernel's internal waiter structures.
2. Exploitation Mechanics & Attack Scenario
An attacker exploits this vulnerability by orchestrating a specific sequence of FUTEX_WAIT_REQUEUE_PI and FUTEX_REQUEUE (or FUTEX_CMP_REQUEUE_PI) system calls.
- The attacker first queues a waiter on a futex, which allocates an
rt_mutex_waiterstructure on the kernel stack. - By calling
FUTEX_REQUEUEwith identical source and target futex addresses, the kernel is tricked into manipulating the waiter list unsafely. - This results in a dangling pointer or double-linked list corruption on the kernel stack (Unsafe Waiter Modification).
- The attacker leverages this corrupted state to achieve arbitrary kernel memory write capabilities, subsequently overwriting the process's credential structure to elevate privileges to root (UID 0).
3. Infrastructure & Business Impact
As a Local Privilege Escalation (LPE) vulnerability, this is highly critical because it allows any user with local shell access (or an attacker who has established a foothold via web application compromise) to gain absolute control over the host. This vulnerability is actively exploited in the wild (listed in CISA KEV) and has been historically used for rooting Android devices. In cloud and containerized environments, this can facilitate container escape, compromising the underlying host and all adjacent tenants.
Official Vendor Advisories & References
The futex_requeue function in kernel/futex.c in the Linux kernel through 3.14.5 does not ensure that calls have two different futex addresses, which allows local users to gain privileges via a crafted FUTEX_REQUEUE command that facilitates unsafe waiter modification.
Frequently Asked SecOps Questions (CVE-2014-3153)
FAQQ1. How critical is CVE-2014-3153 and is it actively exploited in the wild?
CVE-2014-3153 is rated CVSS 7.8 (HIGH) with a 30-day EPSS exploitation probability of 37.2%. It is listed in the CISA Known Exploited Vulnerabilities (KEV) catalog, requiring immediate emergency remediation.
Q2. Which vendors and products are affected by CVE-2014-3153?
Primary impacted vendors include linux across linux_kernel. Scope summary: Linux kernel versions up to and including 3.14.5 across various distributions (RHEL, CentOS, Debian, Ubuntu, SUSE, and Android OS)
Q3. What temporary mitigations or workarounds exist for CVE-2014-3153 before patching?
[Mitigation] Upgrade the Linux kernel to the latest patched version provided by your OS vendor and reboot the system Follow the CLI remediation commands and interactive SecOps checklist on this page to restrict exposure prior to your maintenance window.
Generate an Internal Engineering Notice or CISO Report for CVE-2014-3153
Instantly format this advisory into an executive CISO summary or engineering patch ticket.
🔗 Related Advisories in Similar Stack (linux)
View Category →Linux Kernel IPv6 Socket Memory Corruption Vulnerability (CVE-2026-53362) Analysis and Mitigation Guide
[Affected Scope] Linux kernel systems utilizing UDPv6 sockets with MSG_MORE and MSG_SPLICE_PAGES flags
Linux Kernel algif_aead In-place Operation Vulnerability Leading to Local Privilege Escalation (CVE-2026-31431)
[Affected Scope] Systems running Linux kernel with the `algif_aead` crypto subsystem module enabled.
Linux Kernel Netfilter Bridge ebt_snat ARP Rewrite Vulnerability (CVE-2026-53266)
[Affected Scope] Linux systems utilizing ebtables SNAT targets within bridge netfilter configurations.
Linux Kernel Memory Corruption via Missing Shared-Frag Marker in skbuff (CVE-2026-46300)
[Affected Scope] Linux kernel network stack (skbuff) and systems utilizing IPsec (ESP).
Subscribe to Daily Vulnerability Briefings & KEV Alerts
Concise morning briefings for SecOps, DevSecOps, and SRE teams covering newly exploited CVEs and mitigation priorities.