CVE-2022-48897: Vulnerability in Linux Linux
In the Linux kernel, the following vulnerability has been resolved: arm64/mm: fix incorrect file_map_count for invalid pmd The page table check trigger BUG_ON() unexpectedly when split hugepage: ------------[ cut here ]------------ kernel BUG at mm/page_table_check.c:119! Internal error: Oops - BUG: 00000000f2000800 [#1] SMP Dumping ftrace buffer: (ftrace buffer empty) Modules linked in: CPU: 7 PID: 210 Comm: transhuge-stres Not tainted 6.1.0-rc3+ #748 Hardware name: linux,dummy-virt (DT) pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : page_table_check_set.isra.0+0x398/0x468 lr : page_table_check_set.isra.0+0x1c0/0x468 [...] Call trace: page_table_check_set.isra.0+0x398/0x468 __page_table_check_pte_set+0x160/0x1c0 __split_huge_pmd_locked+0x900/0x1648 __split_huge_pmd+0x28c/0x3b8 unmap_page_range+0x428/0x858 unmap_single_vma+0xf4/0x1c8 zap_page_range+0x2b0/0x410 madvise_vma_behavior+0xc44/0xe78 do_madvise+0x280/0x698 __arm64_sys_madvise+0x90/0xe8 invoke_syscall.constprop.0+0xdc/0x1d8 do_el0_svc+0xf4/0x3f8 el0_svc+0x58/0x120 el0t_64_sync_handler+0xb8/0xc0 el0t_64_sync+0x19c/0x1a0 [...] On arm64, pmd_leaf() will return true even if the pmd is invalid due to pmd_present_invalid() check. So in pmdp_invalidate() the file_map_count will not only decrease once but also increase once. Then in set_pte_at(), the file_map_count increase again, and so trigger BUG_ON() unexpectedly. Add !pmd_present_invalid() check in pmd_user_accessible_page() to fix the problem.
AI Analysis
Technical Summary
CVE-2022-48897 is a vulnerability identified in the Linux kernel specifically affecting the arm64 architecture's memory management subsystem. The issue arises from an incorrect handling of page table entries when splitting hugepages, which are large memory pages used to optimize memory management and performance. The vulnerability is rooted in the function pmd_leaf() returning true even if the Page Middle Directory (PMD) entry is invalid, due to the pmd_present_invalid() check. This causes an imbalance in the file_map_count reference counter during the invalidation and setting of page table entries. Specifically, in the pmdp_invalidate() function, the file_map_count is both decreased and then increased erroneously, and subsequently increased again in set_pte_at(). This leads to an unexpected BUG_ON() kernel panic triggered by the page_table_check() mechanism, which is designed to catch inconsistencies in page table entries. The kernel panic manifests as an internal error (Oops) and can cause system instability or crashes. The root cause is a missing check for !pmd_present_invalid() in the pmd_user_accessible_page() function, which was added to fix the problem. This vulnerability affects Linux kernel versions prior to the fix and is particularly relevant for systems running on arm64 processors that utilize hugepages. No known exploits are reported in the wild as of the publication date, and no CVSS score has been assigned yet. The vulnerability is technical and low-level, involving kernel memory management internals and page table handling, which are critical for system stability and security.
Potential Impact
For European organizations, the impact of CVE-2022-48897 primarily concerns systems running Linux on arm64 architectures, which are increasingly common in cloud environments, edge computing, and IoT devices. A kernel panic caused by this vulnerability can lead to denial of service (DoS) conditions, resulting in system crashes and downtime. This can disrupt critical services, especially in sectors relying on high availability such as finance, healthcare, telecommunications, and industrial control systems. Although no direct remote code execution or privilege escalation is indicated, the instability can be exploited indirectly by attackers to cause service interruptions or to facilitate further attacks during recovery phases. Organizations using arm64-based Linux servers or embedded devices must be aware that this vulnerability affects kernel memory management and could compromise system reliability. The lack of known exploits suggests a lower immediate threat, but the potential for DoS and system crashes makes timely patching important to maintain operational continuity and security posture.
Mitigation Recommendations
To mitigate CVE-2022-48897, organizations should: 1) Apply the official Linux kernel patches that include the fix adding the !pmd_present_invalid() check in pmd_user_accessible_page(). This is the definitive resolution to prevent the incorrect file_map_count manipulation and kernel panics. 2) For systems where immediate patching is not feasible, consider disabling hugepage usage on affected arm64 systems as a temporary workaround, although this may impact performance. 3) Monitor kernel logs for BUG_ON() triggers or Oops messages related to page_table_check to detect potential exploitation or system instability. 4) Implement robust system monitoring and automated reboot mechanisms to minimize downtime in case of kernel panics. 5) Ensure that system firmware and bootloaders are up to date to support kernel updates and maintain system integrity. 6) Coordinate with Linux distribution vendors for timely updates and backports, especially for enterprise and embedded Linux distributions common in European infrastructure.
Affected Countries
Germany, France, United Kingdom, Netherlands, Sweden, Finland, Italy, Spain
CVE-2022-48897: Vulnerability in Linux Linux
Description
In the Linux kernel, the following vulnerability has been resolved: arm64/mm: fix incorrect file_map_count for invalid pmd The page table check trigger BUG_ON() unexpectedly when split hugepage: ------------[ cut here ]------------ kernel BUG at mm/page_table_check.c:119! Internal error: Oops - BUG: 00000000f2000800 [#1] SMP Dumping ftrace buffer: (ftrace buffer empty) Modules linked in: CPU: 7 PID: 210 Comm: transhuge-stres Not tainted 6.1.0-rc3+ #748 Hardware name: linux,dummy-virt (DT) pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--) pc : page_table_check_set.isra.0+0x398/0x468 lr : page_table_check_set.isra.0+0x1c0/0x468 [...] Call trace: page_table_check_set.isra.0+0x398/0x468 __page_table_check_pte_set+0x160/0x1c0 __split_huge_pmd_locked+0x900/0x1648 __split_huge_pmd+0x28c/0x3b8 unmap_page_range+0x428/0x858 unmap_single_vma+0xf4/0x1c8 zap_page_range+0x2b0/0x410 madvise_vma_behavior+0xc44/0xe78 do_madvise+0x280/0x698 __arm64_sys_madvise+0x90/0xe8 invoke_syscall.constprop.0+0xdc/0x1d8 do_el0_svc+0xf4/0x3f8 el0_svc+0x58/0x120 el0t_64_sync_handler+0xb8/0xc0 el0t_64_sync+0x19c/0x1a0 [...] On arm64, pmd_leaf() will return true even if the pmd is invalid due to pmd_present_invalid() check. So in pmdp_invalidate() the file_map_count will not only decrease once but also increase once. Then in set_pte_at(), the file_map_count increase again, and so trigger BUG_ON() unexpectedly. Add !pmd_present_invalid() check in pmd_user_accessible_page() to fix the problem.
AI-Powered Analysis
Technical Analysis
CVE-2022-48897 is a vulnerability identified in the Linux kernel specifically affecting the arm64 architecture's memory management subsystem. The issue arises from an incorrect handling of page table entries when splitting hugepages, which are large memory pages used to optimize memory management and performance. The vulnerability is rooted in the function pmd_leaf() returning true even if the Page Middle Directory (PMD) entry is invalid, due to the pmd_present_invalid() check. This causes an imbalance in the file_map_count reference counter during the invalidation and setting of page table entries. Specifically, in the pmdp_invalidate() function, the file_map_count is both decreased and then increased erroneously, and subsequently increased again in set_pte_at(). This leads to an unexpected BUG_ON() kernel panic triggered by the page_table_check() mechanism, which is designed to catch inconsistencies in page table entries. The kernel panic manifests as an internal error (Oops) and can cause system instability or crashes. The root cause is a missing check for !pmd_present_invalid() in the pmd_user_accessible_page() function, which was added to fix the problem. This vulnerability affects Linux kernel versions prior to the fix and is particularly relevant for systems running on arm64 processors that utilize hugepages. No known exploits are reported in the wild as of the publication date, and no CVSS score has been assigned yet. The vulnerability is technical and low-level, involving kernel memory management internals and page table handling, which are critical for system stability and security.
Potential Impact
For European organizations, the impact of CVE-2022-48897 primarily concerns systems running Linux on arm64 architectures, which are increasingly common in cloud environments, edge computing, and IoT devices. A kernel panic caused by this vulnerability can lead to denial of service (DoS) conditions, resulting in system crashes and downtime. This can disrupt critical services, especially in sectors relying on high availability such as finance, healthcare, telecommunications, and industrial control systems. Although no direct remote code execution or privilege escalation is indicated, the instability can be exploited indirectly by attackers to cause service interruptions or to facilitate further attacks during recovery phases. Organizations using arm64-based Linux servers or embedded devices must be aware that this vulnerability affects kernel memory management and could compromise system reliability. The lack of known exploits suggests a lower immediate threat, but the potential for DoS and system crashes makes timely patching important to maintain operational continuity and security posture.
Mitigation Recommendations
To mitigate CVE-2022-48897, organizations should: 1) Apply the official Linux kernel patches that include the fix adding the !pmd_present_invalid() check in pmd_user_accessible_page(). This is the definitive resolution to prevent the incorrect file_map_count manipulation and kernel panics. 2) For systems where immediate patching is not feasible, consider disabling hugepage usage on affected arm64 systems as a temporary workaround, although this may impact performance. 3) Monitor kernel logs for BUG_ON() triggers or Oops messages related to page_table_check to detect potential exploitation or system instability. 4) Implement robust system monitoring and automated reboot mechanisms to minimize downtime in case of kernel panics. 5) Ensure that system firmware and bootloaders are up to date to support kernel updates and maintain system integrity. 6) Coordinate with Linux distribution vendors for timely updates and backports, especially for enterprise and embedded Linux distributions common in European infrastructure.
Affected Countries
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-08-21T06:06:23.291Z
- Cisa Enriched
- true
- Cvss Version
- null
- State
- PUBLISHED
Threat ID: 682d982fc4522896dcbe653e
Added to database: 5/21/2025, 9:09:03 AM
Last enriched: 6/30/2025, 11:27:00 PM
Last updated: 7/30/2025, 8:49:57 PM
Views: 13
Related Threats
CVE-2025-8747: CWE-502 Deserialization of Untrusted Data in Google Keras
HighCVE-2025-8660: Vulnerability in Broadcom Symantec PGP Encryption
MediumCVE-2025-8835: NULL Pointer Dereference in JasPer
MediumCVE-2025-8833: Stack-based Buffer Overflow in Linksys RE6250
HighCVE-2025-7965: CWE-352 Cross-Site Request Forgery (CSRF) in CBX Restaurant Booking
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.