CVE-2014-3153
Linux Kernel Privilege Escalation Vulnerability
Description
CVE-2014-3153 is a local privilege escalation vulnerability in the Linux kernel caused by a flaw in the futex_requeue function within kernel/futex.c. The function fails to ensure that calls reference two different futex addresses, allowing a local user to exploit this race condition to gain root privileges on the affected system. This is one of the most well-known Linux kernel privilege escalation vulnerabilities, widely used in Android rooting exploits and targeted attacks. CISA has confirmed active exploitation by including CVE-2014-3153 in the Known Exploited Vulnerabilities catalog. With an EPSS percentile of 98.8%, this vulnerability represents one of the most likely-to-be-exploited CVEs in the entire database.
KEV Information
CVSS Score
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:HOpen in CalculatorAffected Products
| Vendor | Product | Version |
|---|---|---|
| linux | linux kernel | < 3.2.60; >= 3.3, < 3.4.92; >= 3.5, < 3.10.42; >= 3.11, < 3.12.22; >= 3.13, < 3.14.6 |
| redhat | enterprise linux server aus | 6.2 |
| opensuse | opensuse | 11.4 |
| suse | linux enterprise desktop | 11 |
| suse | linux enterprise high availability extension | 11 |
| suse | linux enterprise real time extension | 11 |
| suse | linux enterprise server | 11 |
| canonical | ubuntu linux | 12.04; 14.04 |
| oracle | linux | 5; 6 |
Multiple CVSS Assessments
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
References
- http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git%3Ba=commit%3Bh=e9c243a5a6de0be8e584c604d353412584b592f8(Broken Link)
- http://linux.oracle.com/errata/ELSA-2014-0771.html(Third Party Advisory)
- http://linux.oracle.com/errata/ELSA-2014-3037.html(Third Party Advisory)
- http://linux.oracle.com/errata/ELSA-2014-3038.html(Third Party Advisory)
- http://linux.oracle.com/errata/ELSA-2014-3039.html(Third Party Advisory)
- http://lists.opensuse.org/opensuse-security-announce/2014-06/msg00014.html(Mailing List, Third Party Advisory)
- http://lists.opensuse.org/opensuse-security-announce/2014-06/msg00018.html(Mailing List, Third Party Advisory)
- http://lists.opensuse.org/opensuse-security-announce/2014-06/msg00025.html(Mailing List, Third Party Advisory)
- http://lists.opensuse.org/opensuse-security-announce/2014-07/msg00006.html(Mailing List, Third Party Advisory)
- http://lists.opensuse.org/opensuse-security-announce/2014-10/msg00006.html(Mailing List, Third Party Advisory)
- http://lists.opensuse.org/opensuse-security-announce/2014-10/msg00007.html(Mailing List, Third Party Advisory)
- http://openwall.com/lists/oss-security/2014/06/05/24(Mailing List)
- http://openwall.com/lists/oss-security/2014/06/06/20(Mailing List)
- http://rhn.redhat.com/errata/RHSA-2014-0800.html(Third Party Advisory)
- http://secunia.com/advisories/58500(Broken Link)
- http://secunia.com/advisories/58990(Broken Link)
- http://secunia.com/advisories/59029(Broken Link)
- http://secunia.com/advisories/59092(Broken Link)
- http://secunia.com/advisories/59153(Broken Link)
- http://secunia.com/advisories/59262(Broken Link)
- http://secunia.com/advisories/59309(Broken Link)
- http://secunia.com/advisories/59386(Broken Link)
- http://secunia.com/advisories/59599(Broken Link)
- http://www.debian.org/security/2014/dsa-2949(Exploit)
- http://www.exploit-db.com/exploits/35370(Third Party Advisory, VDB Entry)
- http://www.openwall.com/lists/oss-security/2014/06/05/22(Mailing List)
- http://www.openwall.com/lists/oss-security/2021/02/01/4(Mailing List)
- http://www.securityfocus.com/bid/67906(Broken Link, Third Party Advisory, VDB Entry)
- http://www.securitytracker.com/id/1030451(Broken Link, Third Party Advisory, VDB Entry)
- http://www.ubuntu.com/usn/USN-2237-1(Third Party Advisory)
- http://www.ubuntu.com/usn/USN-2240-1(Third Party Advisory)
- https://bugzilla.redhat.com/show_bug.cgi?id=1103626(Issue Tracking, Third Party Advisory)
- https://elongl.github.io/exploitation/2021/01/08/cve-2014-3153.html(Exploit)
- https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=13fbca4c6ecd96ec1a1cfa2e4f2ce191fe928a5e(Mailing List, Patch)
- https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=54a217887a7b658e2650c3feff22756ab80c7339(Mailing List, Patch)
- https://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/commit/?id=b3eaa9fc5cd0a4d74b18f6b8dc617aeaf1873270(Mailing List, Patch)
- https://github.com/elongl/CVE-2014-3153(Third Party Advisory)
- https://github.com/torvalds/linux/commit/e9c243a5a6de0be8e584c604d353412584b592f8(Patch)
- https://www.openwall.com/lists/oss-security/2021/02/01/4(Mailing List)
- https://www.cisa.gov/known-exploited-vulnerabilities-catalog?field_cve=CVE-2014-3153(US Government Resource)
Weakness Type
Since no specific CWE has been assigned to CVE-2014-3153, the underlying weakness type remains formally unspecified. However, the vulnerability is a race condition in the kernel's futex (fast userspace mutex) implementation that results in improper validation of function arguments. The futex_requeue function does not verify that the two futex addresses provided as arguments are distinct, enabling an attacker to manipulate kernel memory through carefully crafted futex operations.
Impact Analysis
CVE-2014-3153 allows local users to escalate their privileges to root on any Linux system running an affected kernel version. The vulnerability requires local access to the system, meaning the attacker must already have user-level shell access or code execution capability on the target. However, once exploited, the impact is total: the attacker gains full root control over the system, including access to all files, credentials, running processes, and the ability to install persistent rootkits or kernel modules. The exploitation complexity is low, as stable and reliable exploit code has been publicly available for years. The EPSS percentile of 98.8% reflects this vulnerability's extreme popularity among attackers, particularly in Android environments where it was used as a key component in device rooting chains. Any unpatched Linux system or Android device running a vulnerable kernel version should be considered at critical risk.
Exploit Maturity
CVE-2014-3153 is one of the most extensively exploited Linux kernel vulnerabilities in history. CISA has confirmed active exploitation by including it in the Known Exploited Vulnerabilities catalog with a remediation deadline of June 15, 2022. The EPSS percentile of 98.8% places it in the top 2% of all CVEs for exploitation likelihood. Numerous public exploit implementations exist, including the well-known "towelroot" exploit that was widely used to root Android devices. The vulnerability has been incorporated into multiple exploit frameworks, privilege escalation toolkits, and post-exploitation suites, making it accessible to attackers of varying skill levels.
Remediation
- Update the Linux kernel to a patched version that addresses CVE-2014-3153. CISA's required action is to apply updates per vendor instructions. For most distributions, kernel updates from mid-2014 onward include the fix.
- For Android devices, ensure the device firmware has been updated to a version released after the June 2014 security patch that addresses this vulnerability.
- Implement kernel hardening measures such as enabling SMEP (Supervisor Mode Execution Prevention), SMAP (Supervisor Mode Access Prevention), and kernel address space layout randomization (KASLR) to make exploitation more difficult.
- Monitor systems for suspicious futex-related system calls and unexpected privilege transitions using audit logging and endpoint detection tools.
- Apply the principle of least privilege by restricting user shell access and using mandatory access control frameworks (SELinux, AppArmor) to limit the impact of privilege escalation even if the kernel vulnerability is exploited.
Technical Details
CVE-2014-3153 is a race condition vulnerability in the futex_requeue function located in kernel/futex.c of the Linux kernel. The futex (fast userspace mutex) subsystem provides efficient user-space locking primitives that involve kernel assistance for blocking and waking threads. The futex_requeue function is designed to move waiters from one futex to another, but it fails to validate that the source and destination futex addresses are different. By passing identical addresses, an attacker can trigger a use-after-free condition or corrupt kernel memory structures related to the futex wait queue. This memory corruption can be leveraged to overwrite kernel data structures and achieve arbitrary code execution in kernel context, resulting in complete privilege escalation from any unprivileged user to root. The attack is local, requiring the ability to make futex system calls, which is available to any unprivileged process on Linux. The exploit is reliable and does not require any special kernel configuration or module to be loaded.
Frequently Asked Questions
Is CVE-2014-3153 being actively exploited?
Yes, CVE-2014-3153 has been extensively exploited in the wild. CISA added it to the Known Exploited Vulnerabilities catalog, and the EPSS percentile of 98.8% confirms it is among the most exploited CVEs. It was the basis for the "towelroot" Android rooting exploit and has been incorporated into numerous exploitation frameworks.
What products are affected by CVE-2014-3153?
CVE-2014-3153 affects the Linux kernel in versions prior to the security patch applied in mid-2014. This includes all Linux distributions and Android devices running vulnerable kernel versions. The flaw is in the core futex subsystem, making it a cross-distribution and cross-device vulnerability.
How do I fix CVE-2014-3153?
Update the Linux kernel to a version that includes the fix for CVE-2014-3153. Most distribution vendors released patches in mid-2014. For Android devices, ensure firmware is updated beyond the June 2014 security patch level. Additionally, enable kernel hardening features like KASLR and SMEP.
How severe is CVE-2014-3153?
CVE-2014-3153 is a critical local privilege escalation vulnerability with an EPSS percentile of 98.8%. It allows any local user to gain root access with high reliability. Its widespread use in Android rooting and its inclusion in the CISA KEV catalog make it one of the most consequential Linux kernel vulnerabilities ever disclosed.
Need Help With Vulnerability Management?
Our security experts can help you prioritize and remediate vulnerabilities effectively.