KVM: x86/mmu: Ensure hugepage is in by slot before checking max mapping level
In the Linux kernel, the following vulnerability has been resolved: KVM: x86/mmu: Ensure hugepage is in by slot before checking max mapping level When recovering hugepages in the shadow MMU, verify that the base gfn of the shadow page is actually contained within the target memslot, *before* querying the max mapping level given the shadow page's gfn. Failure to pre-check the validity of the gfn can lead to an out-of-bounds access to the slot's lpage_info (which typically manifests as a host #PF because the lpage_info is vmalloc'd) if the guest creates a hugepage mapping (in its PTEs) that extends "below" the bounds of a memslot. When faulting in memory for a guest, and the size of the guest mapping is greater than KVM's (current) max mapping, then KVM will create a "direct" shadow page (direct in that there are no gPTEs to shadow, and so the target gfn is a direct calculation given the base gfn of the shadow page). The hugepage recovery flow looks for such direct shadow pages, as forcing 4KiB mappings when dirty logging generates the guest > host mapping size case. When the 4KiB restriction is lifted, then KVM can replace the shadow page with a hugepage. But if KVM originally used a smaller mapping than the guest because the range of memory covered by the guest hugepage exceeds the bounds of a memslot, then KVM will link a direct shadow page with a gfn that is outside the bounds of the memslot being used to fault in memory. The rmap entry added for the leaf mapping is correct and within bounds, but the gfn of the leaf SPTE's parent shadow page will be out of bounds. BUG: unable to handle page fault for address: ffffc90000806ffc #PF: supervisor read access in kernel mode #PF: error_code(0x0000) - not-present page PGD 100000067 P4D 100000067 PUD 1002a7067 PMD 10612f067 PTE 0 Oops: Oops: 0000 [#1] SMP CPU: 13 UID: 1000 PID: 757 Comm: mmu_stress_test Not tainted 7.1.0-rc1-48ce1e26eace-x86_pir_to_irr_comments-vm #341 PREEMPT Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 RIP: 0010:kvm_mmu_max_mapping_level+0x79/0x2b0 [kvm] Call Trace: <TASK> kvm_mmu_recover_huge_pages+0x21b/0x320 [kvm] kvm_set_memslot+0x1ee/0x590 [kvm] kvm_set_memory_region.part.0+0x3a1/0x4d0 [kvm] kvm_vm_ioctl+0x9bf/0x15d0 [kvm] __x64_sys_ioctl+0x8a/0xd0 do_syscall_64+0xb7/0xbb0 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x7f21c0f1a9bf </TASK> Don't bother pre-checking the bounds of the potential hugepage, i.e. don't check that e.g. sp->gfn + KVM_PAGES_PER_HPAGE(sp->role.level + 1) is also within the memslot, as the checks performed by kvm_mmu_max_mapping_level() are a superset of the basic bounds checks. I.e. pre-checking the full range would be a dubious micro-optimization.
Noroxi analizi
Bu kayıt için henüz Noroxi analizi yok
Veritabanındaki yüz binlerce zafiyetin tamamına elle analiz yazmıyoruz; bu dürüst olmazdı. Öne çıkan ve sahada etkisi olan zafiyetler için mekanizma, tespit ve kapatma adımlarını ekibimiz yazıyor.
Bu ürünü kullanıyoruz, yardım isteyin- Yayın
- 19 Tem 2026
- Güncelleme
- 17 Ağu 2026
- EPSS
- %0,1 · 3. yüzdelik
- CWE
- CWE-125
Takip etmek için giriş yap · Takip ettiğin kayıt KEV’e girer, istismarı çıkar ya da güncellenirse bildirim alırsın.
Rapor araçları
Aksiyon skoru
35
İzleyin
Şimdilik düşük öncelik.
- CVSS
- 35 / 40 · 8.8 / 10
- CISA KEV
- 0 / 30 · Listede değil
- EPSS
- 0 / 30 · %0,1
CNA ile NVD puanı
- NVD
- —
- CNA · Linux
- 8,8
- NVD henüz kendi puanını vermedi; gösterilen puan CNA’nın.
Kaydı açan otoritenin puanı ile NVD’nin bağımsız puanı. İki puan arasındaki fark ciddiyetin tartışmalı olduğunu gösterir.
Etkilenen sistemler
| Üretici | Ürün | CPE |
|---|---|---|
| linux | linux kernel | cpe:2.3:o:linux:linux_kernel |
Etkilenen sürümler
NVD sürüm aralıkları (katalogdaki ürünler için). Stack’ine sürümle eklersen eşleşme bunlarla yapılır.
- linux linux kernel5.12 ve sonrası · 5.15.211 öncesi
- linux linux kernel5.16 ve sonrası · 6.1.177 öncesi
- linux linux kernel6.2 ve sonrası · 6.6.144 öncesi
- linux linux kernel6.7 ve sonrası · 6.12.95 öncesi
- linux linux kernel6.13 ve sonrası · 6.18.38 öncesi
- linux linux kernel6.19 ve sonrası · 7.1.3 öncesi
Üreticinin bildirdiği sürümler
Kaydı açan otorite (Linux) tarafından bildirilen etkilenen sürüm aralıkları. NVD'nin CPE analizinden bağımsızdır ve genellikle ondan önce gelir.
Linux Linux
- 5.12etkilenir
- 9eba50f8d7fcb61774f160890f98239fa3ab68a6 ve sonrası · 7b52008023b7facf40fba3ebe92449bda8ea53b9 öncesietkilenir · git
- 9eba50f8d7fcb61774f160890f98239fa3ab68a6 ve sonrası · 5cab1c989f938f5e1b9a0de66486f1fc2c28479b öncesietkilenir · git
- 9eba50f8d7fcb61774f160890f98239fa3ab68a6 ve sonrası · 48b91ed7e22bb82571c34f8b80b6ecdc90a6fab8 öncesietkilenir · git
- 9eba50f8d7fcb61774f160890f98239fa3ab68a6 ve sonrası · c5c29b3c268332afe67d598a034c58344540ed92 öncesietkilenir · git
- 9eba50f8d7fcb61774f160890f98239fa3ab68a6 ve sonrası · 18587f9831612e24cd8f24be1ec15478feff7abc öncesietkilenir · git
- 9eba50f8d7fcb61774f160890f98239fa3ab68a6 ve sonrası · b2ae3245ea44dccaa9af676b6747476951883318 öncesietkilenir · git
- 9eba50f8d7fcb61774f160890f98239fa3ab68a6 ve sonrası · ef057cbf825e03b63f6edf5980f96abf3c53089d öncesietkilenir · git
- 5.12 öncesietkilenmez · semver
- 5.15.211 ve sonrası · 5.15.* dahil öncesietkilenmez · semver
Paket düzeyi etkilenme
OSV ve GitHub Advisory verisi: ekosistem, paket ve aralık. SBOM eşleşmesi bu tabloyu kullanır.
| Ekosistem | Paket | Etkilenen aralık | Düzeltme |
|---|---|---|---|
| Debian:12 | linux | 6.1.177-1 öncesi | 6.1.177-1 |
| Debian:13 | linux | 6.12.95-1 öncesi | 6.12.95-1 |
| Debian:14 | linux | 7.1.3-1 öncesi | 7.1.3-1 |
| Red Hat:enterprise_linux_eus:10.0 | kernel | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-core | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug-core | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug-debuginfo | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug-devel | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug-devel-matched | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug-modules | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug-modules-core | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debug-modules-extra | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-debuginfo | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-devel | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-devel-matched | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-modules | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-modules-core | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-64k-modules-extra | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-abi-stablelists | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-core | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-debug | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
| Red Hat:enterprise_linux_eus:10.0 | kernel-debug-core | 0:6.12.0-55.94.1.el10_0 öncesi | 0:6.12.0-55.94.1.el10_0 |
+70
Aynı üründe
linux: tüm kayıtlarAynı birincil ürünün en yüksek skorlu diğer kayıtları.
- CVE-2022-0847A flaw was found in the way the "flags" member of the new pipe buffer structure was lacking proper initialization in copy_page_to_iter_pipe KEV89Hemen
- CVE-2021-22555Heap Out-Of-Bounds Write in Netfilter IP6T_SO_SET_REPLACEKEV85Hemen
- CVE-2016-5195Race condition in mm/gup.c in the Linux kernel 2.x through 4.x before 4.8.3 allows local users to gain privileges by leveraging incorrect haKEV83Hemen
- CVE-2019-13272In the Linux kernel before 5.1.17, ptrace_link in kernel/ptrace.c mishandles the recording of the credentials of a process that wants to creKEV77Bu hafta
- CVE-2013-6282The (1) get_user and (2) put_user API functions in the Linux kernel before 3.5.5 on the v6k and v7 ARM platforms do not validate certain addKEV77Bu hafta
- CVE-2013-2094The perf_swevent_init function in kernel/events/core.c in the Linux kernel before 3.8.9 uses an incorrect integer data type, which allows loKEV77Bu hafta
Düzeltme
Hangi sürüme geçmeli
Üretici, paket deposu ve Microsoft kayıtlarından derlenen düzeltme sürümleri. Yükseltmeden önce üreticinin notunu doğrulayın.
| Ürün / paket | Düzeltilmiş sürüm | Kaynak |
|---|---|---|
| Linux Linux | 18587f9831612e24cd8f24be1ec15478feff7abc | Üretici (CNA) |
| Linux Linux | 48b91ed7e22bb82571c34f8b80b6ecdc90a6fab8 | Üretici (CNA) |
| Linux Linux | 5cab1c989f938f5e1b9a0de66486f1fc2c28479b | Üretici (CNA) |
| Linux Linux | 7b52008023b7facf40fba3ebe92449bda8ea53b9 | Üretici (CNA) |
| Linux Linux | b2ae3245ea44dccaa9af676b6747476951883318 | Üretici (CNA) |
| Linux Linux | c5c29b3c268332afe67d598a034c58344540ed92 | Üretici (CNA) |
| Linux Linux | ef057cbf825e03b63f6edf5980f96abf3c53089d | Üretici (CNA) |
| azl3 kernel 6.6.143.1-1 on Azure Linux 3.0 | 6.6.150.1-1 · CBL-Mariner Releases | Microsoft (MSRC) |
| debian:linux | 6.1.177-1 · Debian:12 | Paket deposu (OSV) |
| red hat:kernel-64k-debug-debuginfo | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-64k-debug-devel | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-64k-debug-devel-matched | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-64k-debuginfo | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-64k-devel | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-64k-devel-matched | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-debug-debuginfo | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-debug-devel | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-debug-devel-matched | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-debuginfo | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-debuginfo-common-aarch64 | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
| red hat:kernel-debuginfo-common-ppc64le | 0:6.12.0-55.94.1.el10_0 · Red Hat:enterprise_linux_eus:10.0 | Paket deposu (OSV) |
İstismar durumu
Bilinen kamuya açık istismar yok
Şu an kamuya açık bir istismar görülmedi. Bu, güvende olduğunuz anlamına gelmez; yalnızca eşiğin biraz daha yüksek olduğunu gösterir.
Araştırma bağlamı
Pentester ve araştırmacı için: saldırı profili, puan anlaşmazlığı, zaman çizelgesi, yama commit’leri, kredi, varyant ve zincir adayları, bug bounty kapsamı. Hepsi mevcut veriden türetilir; istismar kodu içermez.
Zaman çizelgesi
Yayından bugüne: kavram kanıtı, Metasploit modülü, CISA KEV ve düzeltme kaydı. Tarihler kaynakların bildirdiği tarihlerdir.
Yayın dışında tarihli olay yok.
FIRST EPSS günlük puanı; yalnızca 0,01 ve üstü değişimler kaydedilir (adım grafiği).
Yama ve commit bağlantıları
Referanslardaki commit, PR ve diff adresleri. Patch-diff ve varyant avı için başlangıç noktası; istismar değil, düzeltmedir.
Referanslarda commit ya da PR bağlantısı yok.
Kredi
Tüm araştırmacılarCNA kaydında adı geçen bulan, bildiren ve analistler. Ada tıkla, aynı araştırmacının diğer kayıtlarını gör.
CNA kaydında kredi yok.
Varyant adayları
Aynı üründe aynı zafiyet sınıfı, 18 ay içinde. Yama kök nedeni kapatmadıysa kardeş hata burada olur.
Gece hesaplanan ilişki yok.
Zincir adayları
Aynı üründe kimlik doğrulama atlatma ile yetki isteyen bir açık kısa aralıkla yayımlanmış: birlikte kimlik doğrulamasız bir yola dönüşebilir.
—
Bug bounty kapsamı
Bilinen herkese açık program yok.
Kaynak: bounty-targets-data (HackerOne, Bugcrowd, Intigriti, YesWeHack herkese açık listeleri).
Teknik detay
Saldırı koşulları
- Sisteme yerel erişimi olan biri tetikleyebilir.
- Düşük yetkili bir hesap yeterli.
- Kullanıcının bir şey yapması gerekmez.
- Özel bir koşul gerekmez; tekrarlanabilir.
Başarılı olursa
- Gizlilik
- yüksek · veriler okunabilir
- Bütünlük
- yüksek · veri ya da yapılandırma değiştirilebilir
- Erişilebilirlik
- yüksek · hizmet durdurulabilir
Etki, zafiyetli bileşenin ötesine geçebilir (kapsam değişir).
- Saldırı vektörü
- Yerel
- Karmaşıklık
- Düşük
- Gereken yetki
- Düşük
- Kullanıcı etkileşimi
- Gerekmez
- Kapsam
- Değişir
- Gizlilik etkisi
- Yüksek
- Bütünlük etkisi
- Yüksek
- Erişilebilirlik etkisi
- Yüksek
Zayıflık sınıfı (CWE)
CWE-125 · Out-of-bounds ReadCVSS vektörü
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H
nvd-secondary
Saldırı bağlamı
Bu zafiyet sınıfının (CWE) MITRE CAPEC saldırı desenleri ve ATT&CK teknikleri. Tespit kuralı ve tehdit avı için başlangıç noktası.
Saldırı desenleri (CAPEC)
ATT&CK teknikleri
—
Değişiklik günlüğü
- Düzeltme✗ → ✓
Takip ettiğiniz kayıtlarda bu değişiklikler bildirim olarak da gelir. →
Referanslar
- git.kernel.org/stable/c/18587f9831612e24cd8f24be1ec15478feff7abc
- git.kernel.org/stable/c/48b91ed7e22bb82571c34f8b80b6ecdc90a6fab8
- git.kernel.org/stable/c/5cab1c989f938f5e1b9a0de66486f1fc2c28479b
- git.kernel.org/stable/c/7b52008023b7facf40fba3ebe92449bda8ea53b9
- git.kernel.org/stable/c/b2ae3245ea44dccaa9af676b6747476951883318
- git.kernel.org/stable/c/c5c29b3c268332afe67d598a034c58344540ed92
- git.kernel.org/stable/c/ef057cbf825e03b63f6edf5980f96abf3c53089d
Üretici bildirimleri ve resmî kayıtlar. İstismar/PoC bağlantıları bilinçli olarak dışarıda bırakıldı.