CVE-2024-26674: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: x86/lib: Revert to _ASM_EXTABLE_UA() for {get,put}_user() fixups During memory error injection test on kernels >= v6.4, the kernel panics like below. However, this issue couldn't be reproduced on kernels <= v6.3. mce: [Hardware Error]: CPU 296: Machine Check Exception: f Bank 1: bd80000000100134 mce: [Hardware Error]: RIP 10:<ffffffff821b9776> {__get_user_nocheck_4+0x6/0x20} mce: [Hardware Error]: TSC 411a93533ed ADDR 346a8730040 MISC 86 mce: [Hardware Error]: PROCESSOR 0:a06d0 TIME 1706000767 SOCKET 1 APIC 211 microcode 80001490 mce: [Hardware Error]: Run the above through 'mcelog --ascii' mce: [Hardware Error]: Machine check: Data load in unrecoverable area of kernel Kernel panic - not syncing: Fatal local machine check The MCA code can recover from an in-kernel #MC if the fixup type is EX_TYPE_UACCESS, explicitly indicating that the kernel is attempting to access userspace memory. However, if the fixup type is EX_TYPE_DEFAULT the only thing that is raised for an in-kernel #MC is a panic. ex_handler_uaccess() would warn if users gave a non-canonical addresses (with bit 63 clear) to {get, put}_user(), which was unexpected. Therefore, commit b19b74bc99b1 ("x86/mm: Rework address range check in get_user() and put_user()") replaced _ASM_EXTABLE_UA() with _ASM_EXTABLE() for {get, put}_user() fixups. However, the new fixup type EX_TYPE_DEFAULT results in a panic. Commit 6014bc27561f ("x86-64: make access_ok() independent of LAM") added the check gp_fault_address_ok() right before the WARN_ONCE() in ex_handler_uaccess() to not warn about non-canonical user addresses due to LAM. With that in place, revert back to _ASM_EXTABLE_UA() for {get,put}_user() exception fixups in order to be able to handle in-kernel MCEs correctly again. [ bp: Massage commit message. ]
AI Analysis
Technical Summary
CVE-2024-26674 is a vulnerability in the Linux kernel related to the handling of machine check exceptions (MCEs) during memory error injection tests on kernels version 6.4 and later. The issue arises from a change in the exception fixup mechanism used for the {get,put}_user() functions, which are responsible for safely accessing user-space memory from kernel space. Specifically, a commit replaced the fixup macro _ASM_EXTABLE_UA() with _ASM_EXTABLE(), changing the fixup type from EX_TYPE_UACCESS to EX_TYPE_DEFAULT. This change caused the kernel to panic on certain machine check exceptions instead of recovering gracefully. The vulnerability manifests as a kernel panic triggered by an unrecoverable data load error in kernel space, which occurs because the kernel no longer correctly identifies user-space memory access exceptions, leading to fatal local machine checks. The problem does not appear in kernels 6.3 and earlier, indicating it was introduced in or after version 6.4. The fix involved reverting to the original _ASM_EXTABLE_UA() macro for exception fixups in {get,put}_user(), restoring the kernel's ability to handle in-kernel MCEs properly. This vulnerability is technical and low-level, involving kernel memory access and exception handling mechanisms, and it can cause system instability or denial of service through kernel panics under specific conditions involving hardware errors and memory error injections.
Potential Impact
For European organizations, the impact of CVE-2024-26674 primarily involves system stability and availability. Linux is widely used across Europe in servers, cloud infrastructure, embedded systems, and critical infrastructure. A kernel panic caused by this vulnerability can lead to unexpected system crashes, resulting in downtime and potential disruption of services. Organizations relying on Linux kernels version 6.4 or later, especially those performing memory error injection testing or operating in environments prone to hardware errors, may experience increased risk of denial-of-service conditions. While this vulnerability does not directly expose confidentiality or integrity risks, the availability impact can be significant for critical systems such as telecommunications, finance, healthcare, and industrial control systems. Additionally, recovery from kernel panics may require manual intervention or automated failover mechanisms, increasing operational overhead. Since exploitation requires specific hardware error conditions and triggers, the risk of widespread exploitation is low, but the vulnerability highlights the importance of kernel robustness in handling hardware faults.
Mitigation Recommendations
To mitigate CVE-2024-26674, European organizations should: 1) Apply the latest Linux kernel patches that revert the exception fixup mechanism to _ASM_EXTABLE_UA() for {get,put}_user() functions, ensuring proper handling of machine check exceptions. 2) Avoid deploying unpatched Linux kernels version 6.4 or later in production environments, especially where hardware error injection testing or unstable hardware is involved. 3) Implement robust hardware monitoring and error detection to identify and address underlying hardware faults that could trigger machine check exceptions. 4) Use kernel crash dump and logging tools to capture detailed information on kernel panics for faster diagnosis and remediation. 5) Employ high-availability and failover configurations to minimize service disruption in case of kernel panics. 6) Coordinate with hardware vendors to ensure microcode updates and firmware are current, reducing the likelihood of hardware errors. 7) For environments requiring memory error injection testing, conduct tests in isolated staging environments to prevent impact on production systems.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Finland, Italy, Spain, Poland, Belgium
CVE-2024-26674: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: x86/lib: Revert to _ASM_EXTABLE_UA() for {get,put}_user() fixups During memory error injection test on kernels >= v6.4, the kernel panics like below. However, this issue couldn't be reproduced on kernels <= v6.3. mce: [Hardware Error]: CPU 296: Machine Check Exception: f Bank 1: bd80000000100134 mce: [Hardware Error]: RIP 10:<ffffffff821b9776> {__get_user_nocheck_4+0x6/0x20} mce: [Hardware Error]: TSC 411a93533ed ADDR 346a8730040 MISC 86 mce: [Hardware Error]: PROCESSOR 0:a06d0 TIME 1706000767 SOCKET 1 APIC 211 microcode 80001490 mce: [Hardware Error]: Run the above through 'mcelog --ascii' mce: [Hardware Error]: Machine check: Data load in unrecoverable area of kernel Kernel panic - not syncing: Fatal local machine check The MCA code can recover from an in-kernel #MC if the fixup type is EX_TYPE_UACCESS, explicitly indicating that the kernel is attempting to access userspace memory. However, if the fixup type is EX_TYPE_DEFAULT the only thing that is raised for an in-kernel #MC is a panic. ex_handler_uaccess() would warn if users gave a non-canonical addresses (with bit 63 clear) to {get, put}_user(), which was unexpected. Therefore, commit b19b74bc99b1 ("x86/mm: Rework address range check in get_user() and put_user()") replaced _ASM_EXTABLE_UA() with _ASM_EXTABLE() for {get, put}_user() fixups. However, the new fixup type EX_TYPE_DEFAULT results in a panic. Commit 6014bc27561f ("x86-64: make access_ok() independent of LAM") added the check gp_fault_address_ok() right before the WARN_ONCE() in ex_handler_uaccess() to not warn about non-canonical user addresses due to LAM. With that in place, revert back to _ASM_EXTABLE_UA() for {get,put}_user() exception fixups in order to be able to handle in-kernel MCEs correctly again. [ bp: Massage commit message. ]
AI-Powered Analysis
Technical Analysis
CVE-2024-26674 is a vulnerability in the Linux kernel related to the handling of machine check exceptions (MCEs) during memory error injection tests on kernels version 6.4 and later. The issue arises from a change in the exception fixup mechanism used for the {get,put}_user() functions, which are responsible for safely accessing user-space memory from kernel space. Specifically, a commit replaced the fixup macro _ASM_EXTABLE_UA() with _ASM_EXTABLE(), changing the fixup type from EX_TYPE_UACCESS to EX_TYPE_DEFAULT. This change caused the kernel to panic on certain machine check exceptions instead of recovering gracefully. The vulnerability manifests as a kernel panic triggered by an unrecoverable data load error in kernel space, which occurs because the kernel no longer correctly identifies user-space memory access exceptions, leading to fatal local machine checks. The problem does not appear in kernels 6.3 and earlier, indicating it was introduced in or after version 6.4. The fix involved reverting to the original _ASM_EXTABLE_UA() macro for exception fixups in {get,put}_user(), restoring the kernel's ability to handle in-kernel MCEs properly. This vulnerability is technical and low-level, involving kernel memory access and exception handling mechanisms, and it can cause system instability or denial of service through kernel panics under specific conditions involving hardware errors and memory error injections.
Potential Impact
For European organizations, the impact of CVE-2024-26674 primarily involves system stability and availability. Linux is widely used across Europe in servers, cloud infrastructure, embedded systems, and critical infrastructure. A kernel panic caused by this vulnerability can lead to unexpected system crashes, resulting in downtime and potential disruption of services. Organizations relying on Linux kernels version 6.4 or later, especially those performing memory error injection testing or operating in environments prone to hardware errors, may experience increased risk of denial-of-service conditions. While this vulnerability does not directly expose confidentiality or integrity risks, the availability impact can be significant for critical systems such as telecommunications, finance, healthcare, and industrial control systems. Additionally, recovery from kernel panics may require manual intervention or automated failover mechanisms, increasing operational overhead. Since exploitation requires specific hardware error conditions and triggers, the risk of widespread exploitation is low, but the vulnerability highlights the importance of kernel robustness in handling hardware faults.
Mitigation Recommendations
To mitigate CVE-2024-26674, European organizations should: 1) Apply the latest Linux kernel patches that revert the exception fixup mechanism to _ASM_EXTABLE_UA() for {get,put}_user() functions, ensuring proper handling of machine check exceptions. 2) Avoid deploying unpatched Linux kernels version 6.4 or later in production environments, especially where hardware error injection testing or unstable hardware is involved. 3) Implement robust hardware monitoring and error detection to identify and address underlying hardware faults that could trigger machine check exceptions. 4) Use kernel crash dump and logging tools to capture detailed information on kernel panics for faster diagnosis and remediation. 5) Employ high-availability and failover configurations to minimize service disruption in case of kernel panics. 6) Coordinate with hardware vendors to ensure microcode updates and firmware are current, reducing the likelihood of hardware errors. 7) For environments requiring memory error injection testing, conduct tests in isolated staging environments to prevent impact on production systems.
For access to advanced analysis and higher rate limits, contact root@offseq.com
Technical Details
- Data Version
- 5.1
- Assigner Short Name
- Linux
- Date Reserved
- 2024-02-19T14:20:24.151Z
- Cisa Enriched
- true
- Cvss Version
- null
- State
- PUBLISHED
Threat ID: 682d982ac4522896dcbe37be
Added to database: 5/21/2025, 9:08:58 AM
Last enriched: 6/29/2025, 5:11:16 PM
Last updated: 8/1/2025, 10:09:57 AM
Views: 10
Related Threats
CVE-2025-9106: Cross Site Scripting in Portabilis i-Diario
MediumCVE-2025-9105: Cross Site Scripting in Portabilis i-Diario
MediumCVE-2025-9104: Cross Site Scripting in Portabilis i-Diario
MediumCVE-2025-9102: Improper Export of Android Application Components in 1&1 Mail & Media mail.com App
MediumCVE-2025-9101: Cross Site Scripting in zhenfeng13 My-Blog
MediumActions
Updates to AI analysis are available only with a Pro account. Contact root@offseq.com for access.
External Links
Need enhanced features?
Contact root@offseq.com for Pro access with improved analysis and higher rate limits.