CVE-2014-1438: Null Pointer Dereference
Last updated 24 July 2024
Other sources
Linux kernel is found to be vulnerable to a NULL pointer dereference flaw caused due to inappropriate handling of Floating Point Unit(FPU) exceptions during task switch at 'emms' instruction. This only affects AMD CPU family in both i386 & AMD64 modes.
A user/program could use this flaw to kill tasks at random resulting in DoS or potentially gain root privileges if allowed to map NULL(mmapminaddr=0) page.
Upstream fix: ------------- -> https://git.kernel.org/linus/26bef1318adc1b3a530ecc807ef99346db2aa8b0
Reference: ---------- -> https://lkml.org/lkml/2013/12/28/95 -> http://www.openwall.com/lists/oss-security/2014/01/12/1 -> http://www.halfdog.net/Security/2013/Vm86SyscallTaskSwitchKernelPanic/
— Red Hat
The restorefpuchecking function in arch/x86/include/asm/fpu-internal.h in the Linux kernel before 3.12.8 on the AMD K7 and K8 platforms does not clear pending exceptions before proceeding to an EMMS instruction, which allows local users to cause a denial of service (task kill) or possibly gain privileges via a crafted application.
— Launchpad
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
debian/linuxto a version that resolves this vulnerability.Fixed in 5.10.223-1Fixed in 5.10.234-1Fixed in 6.1.129-1Fixed in 6.1.135-1Fixed in 6.12.25-1Fixed in 6.12.27-1 - Upgrade
Upgrade
Linux kernelto a version that resolves this vulnerability.Fixed in 3.12.8 - Compensating control
If you cannot upgrade immediately, mitigate the NULL pointer dereference/privesc vector by preventing NULL mappings (ensure mmap_min_addr is not set to 0).
- Compensating control
This issue affects AMD K7 and K8 platforms; if applicable, restrict access to local users/programs that could trigger the crafted application (reduce untrusted local execution).
Event History
Frequently Asked Questions
What is the severity of CVE-2014-1438?
CVE-2014-1438 is classified as a medium severity vulnerability due to the potential for a NULL pointer dereference that may crash the system.
How do I fix CVE-2014-1438?
To fix CVE-2014-1438, upgrade to a patched version of the Linux kernel that is higher than 3.12.7.
Which versions of Linux are affected by CVE-2014-1438?
CVE-2014-1438 affects Linux kernel versions 3.12.0 to 3.12.6.
What is the cause of CVE-2014-1438?
CVE-2014-1438 is caused by inappropriate handling of Floating Point Unit (FPU) exceptions during task switches.
Who is impacted by CVE-2014-1438?
Users running the vulnerable versions of the Linux kernel on AMD CPU family systems are impacted by CVE-2014-1438.