CVE-2021-47228: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: x86/ioremap: Map EFI-reserved memory as encrypted for SEV Some drivers require memory that is marked as EFI boot services data. In order for this memory to not be re-used by the kernel after ExitBootServices(), efi_mem_reserve() is used to preserve it by inserting a new EFI memory descriptor and marking it with the EFI_MEMORY_RUNTIME attribute. Under SEV, memory marked with the EFI_MEMORY_RUNTIME attribute needs to be mapped encrypted by Linux, otherwise the kernel might crash at boot like below: EFI Variables Facility v0.08 2004-May-17 general protection fault, probably for non-canonical address 0x3597688770a868b2: 0000 [#1] SMP NOPTI CPU: 13 PID: 1 Comm: swapper/0 Not tainted 5.12.4-2-default #1 openSUSE Tumbleweed Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 RIP: 0010:efi_mokvar_entry_next [...] Call Trace: efi_mokvar_sysfs_init ? efi_mokvar_table_init do_one_initcall ? __kmalloc kernel_init_freeable ? rest_init kernel_init ret_from_fork Expand the __ioremap_check_other() function to additionally check for this other type of boot data reserved at runtime and indicate that it should be mapped encrypted for an SEV guest. [ bp: Massage commit message. ]
AI Analysis
Technical Summary
CVE-2021-47228 is a vulnerability in the Linux kernel related to the handling of EFI (Extensible Firmware Interface) reserved memory mappings on x86 architectures, specifically in environments using AMD SEV (Secure Encrypted Virtualization). The issue arises because certain drivers require memory marked as EFI boot services data to be preserved after the firmware's ExitBootServices() call. This preservation is done by marking the memory with the EFI_MEMORY_RUNTIME attribute and reserving it via efi_mem_reserve(). Under SEV, memory with the EFI_MEMORY_RUNTIME attribute must be mapped as encrypted by the Linux kernel. Failure to do so can cause the kernel to crash during boot, as demonstrated by a general protection fault in the EFI Variables Facility. The root cause is that the __ioremap_check_other() function did not account for this type of boot data reserved at runtime, leading to unencrypted mapping of memory that should be encrypted under SEV. The fix involves expanding this function to recognize EFI_MEMORY_RUNTIME-marked memory and ensure it is mapped encrypted for SEV guests. This vulnerability does not impact confidentiality or integrity directly but affects availability by causing kernel crashes during boot on affected systems. The CVSS score is 6.2 (medium severity), with an attack vector of local access, low attack complexity, no privileges required, no user interaction, and impact limited to availability. No known exploits are reported in the wild. This vulnerability primarily affects Linux kernel versions prior to the patch and systems running AMD SEV-enabled virtualization environments.
Potential Impact
For European organizations, the impact of CVE-2021-47228 is primarily on the availability and stability of Linux systems running on AMD SEV-enabled hardware, particularly in virtualized environments. Organizations using SEV for enhanced security in cloud or on-premises virtualization may experience boot failures or kernel crashes if their Linux kernels are unpatched. This could lead to downtime of critical services, disruption of virtual machine operations, and increased operational costs due to troubleshooting and remediation. Since SEV is used to protect virtual machines by encrypting memory, failure to handle EFI runtime memory correctly undermines the stability of these protections. While the vulnerability does not expose data confidentiality or integrity directly, the resulting system crashes can cause service interruptions, impacting business continuity. European enterprises relying on Linux-based infrastructure in sectors such as finance, telecommunications, and government, where virtualization and hardware-based encryption are increasingly adopted, may be particularly affected. The absence of known exploits reduces immediate risk, but unpatched systems remain vulnerable to stability issues.
Mitigation Recommendations
To mitigate CVE-2021-47228, European organizations should: 1) Apply the latest Linux kernel patches that address this vulnerability, ensuring that the __ioremap_check_other() function correctly maps EFI_MEMORY_RUNTIME memory as encrypted under SEV. 2) Verify that virtualization hosts and guest systems using AMD SEV have updated kernels and firmware supporting this fix. 3) Conduct thorough testing of SEV-enabled virtual machines after patching to confirm stable boot and operation. 4) Monitor kernel logs for EFI-related errors or crashes during boot to detect potential unpatched systems. 5) For environments where immediate patching is not feasible, consider disabling SEV temporarily or avoiding use of EFI runtime memory features until patched. 6) Maintain an inventory of systems using AMD SEV and prioritize patching based on criticality. 7) Collaborate with hardware and virtualization vendors to ensure firmware and hypervisor compatibility with patched kernels. These steps go beyond generic advice by focusing on the specific interaction between EFI memory attributes and SEV encryption requirements.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Finland, Ireland, Belgium, Italy, Spain
CVE-2021-47228: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: x86/ioremap: Map EFI-reserved memory as encrypted for SEV Some drivers require memory that is marked as EFI boot services data. In order for this memory to not be re-used by the kernel after ExitBootServices(), efi_mem_reserve() is used to preserve it by inserting a new EFI memory descriptor and marking it with the EFI_MEMORY_RUNTIME attribute. Under SEV, memory marked with the EFI_MEMORY_RUNTIME attribute needs to be mapped encrypted by Linux, otherwise the kernel might crash at boot like below: EFI Variables Facility v0.08 2004-May-17 general protection fault, probably for non-canonical address 0x3597688770a868b2: 0000 [#1] SMP NOPTI CPU: 13 PID: 1 Comm: swapper/0 Not tainted 5.12.4-2-default #1 openSUSE Tumbleweed Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 RIP: 0010:efi_mokvar_entry_next [...] Call Trace: efi_mokvar_sysfs_init ? efi_mokvar_table_init do_one_initcall ? __kmalloc kernel_init_freeable ? rest_init kernel_init ret_from_fork Expand the __ioremap_check_other() function to additionally check for this other type of boot data reserved at runtime and indicate that it should be mapped encrypted for an SEV guest. [ bp: Massage commit message. ]
AI-Powered Analysis
Technical Analysis
CVE-2021-47228 is a vulnerability in the Linux kernel related to the handling of EFI (Extensible Firmware Interface) reserved memory mappings on x86 architectures, specifically in environments using AMD SEV (Secure Encrypted Virtualization). The issue arises because certain drivers require memory marked as EFI boot services data to be preserved after the firmware's ExitBootServices() call. This preservation is done by marking the memory with the EFI_MEMORY_RUNTIME attribute and reserving it via efi_mem_reserve(). Under SEV, memory with the EFI_MEMORY_RUNTIME attribute must be mapped as encrypted by the Linux kernel. Failure to do so can cause the kernel to crash during boot, as demonstrated by a general protection fault in the EFI Variables Facility. The root cause is that the __ioremap_check_other() function did not account for this type of boot data reserved at runtime, leading to unencrypted mapping of memory that should be encrypted under SEV. The fix involves expanding this function to recognize EFI_MEMORY_RUNTIME-marked memory and ensure it is mapped encrypted for SEV guests. This vulnerability does not impact confidentiality or integrity directly but affects availability by causing kernel crashes during boot on affected systems. The CVSS score is 6.2 (medium severity), with an attack vector of local access, low attack complexity, no privileges required, no user interaction, and impact limited to availability. No known exploits are reported in the wild. This vulnerability primarily affects Linux kernel versions prior to the patch and systems running AMD SEV-enabled virtualization environments.
Potential Impact
For European organizations, the impact of CVE-2021-47228 is primarily on the availability and stability of Linux systems running on AMD SEV-enabled hardware, particularly in virtualized environments. Organizations using SEV for enhanced security in cloud or on-premises virtualization may experience boot failures or kernel crashes if their Linux kernels are unpatched. This could lead to downtime of critical services, disruption of virtual machine operations, and increased operational costs due to troubleshooting and remediation. Since SEV is used to protect virtual machines by encrypting memory, failure to handle EFI runtime memory correctly undermines the stability of these protections. While the vulnerability does not expose data confidentiality or integrity directly, the resulting system crashes can cause service interruptions, impacting business continuity. European enterprises relying on Linux-based infrastructure in sectors such as finance, telecommunications, and government, where virtualization and hardware-based encryption are increasingly adopted, may be particularly affected. The absence of known exploits reduces immediate risk, but unpatched systems remain vulnerable to stability issues.
Mitigation Recommendations
To mitigate CVE-2021-47228, European organizations should: 1) Apply the latest Linux kernel patches that address this vulnerability, ensuring that the __ioremap_check_other() function correctly maps EFI_MEMORY_RUNTIME memory as encrypted under SEV. 2) Verify that virtualization hosts and guest systems using AMD SEV have updated kernels and firmware supporting this fix. 3) Conduct thorough testing of SEV-enabled virtual machines after patching to confirm stable boot and operation. 4) Monitor kernel logs for EFI-related errors or crashes during boot to detect potential unpatched systems. 5) For environments where immediate patching is not feasible, consider disabling SEV temporarily or avoiding use of EFI runtime memory features until patched. 6) Maintain an inventory of systems using AMD SEV and prioritize patching based on criticality. 7) Collaborate with hardware and virtualization vendors to ensure firmware and hypervisor compatibility with patched kernels. These steps go beyond generic advice by focusing on the specific interaction between EFI memory attributes and SEV encryption requirements.
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-04-10T18:59:19.530Z
- Cisa Enriched
- true
- Cvss Version
- 3.1
- State
- PUBLISHED
Threat ID: 682d9835c4522896dcbea103
Added to database: 5/21/2025, 9:09:09 AM
Last enriched: 6/26/2025, 2:51:36 PM
Last updated: 8/14/2025, 3:29:46 PM
Views: 13
Related Threats
CVE-2025-55371: n/a
UnknownCVE-2025-52194: n/a
UnknownCVE-2025-50860: n/a
UnknownCVE-2025-9302: SQL Injection in PHPGurukul User Management System
MediumCVE-2025-55370: n/a
HighActions
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.