Aller au contenu
8.1 Élevée

CVE-2026-23401 KVM: x86/mmu: Drop/zap existing present SPTE even when creating an MMIO SPTE

Description

In the Linux kernel, the following vulnerability has been resolved: KVM: x86/mmu: Drop/zap existing present SPTE even when creating an MMIO SPTE When installing an emulated MMIO SPTE, do so *after* dropping/zapping the existing SPTE (if it's shadow-present). While commit a54aa15c6bda3 was right about it being impossible to convert a shadow-present SPTE to an MMIO SPTE due to a _guest_ write, it failed to account for writes to guest memory that are outside the scope of KVM. E.g. if host userspace modifies a shadowed gPTE to switch from a memslot to emulted MMIO and then the guest hits a relevant page fault, KVM will install the MMIO SPTE without first zapping the shadow-present SPTE. ------------[ cut here ]------------ is_shadow_present_pte(*sptep) WARNING: arch/x86/kvm/mmu/mmu.c:484 at mark_mmio_spte+0xb2/0xc0 [kvm], CPU#0: vmx_ept_stale_r/4292 Modules linked in: kvm_intel kvm irqbypass CPU: 0 UID: 1000 PID: 4292 Comm: vmx_ept_stale_r Not tainted 7.0.0-rc2-eafebd2d2ab0-sink-vm #319 PREEMPT Hardware name: QEMU Standard PC (Q35 + ICH9, 2009), BIOS 0.0.0 02/06/2015 RIP: 0010:mark_mmio_spte+0xb2/0xc0 [kvm] Call Trace: <TASK> mmu_set_spte+0x237/0x440 [kvm] ept_page_fault+0x535/0x7f0 [kvm] kvm_mmu_do_page_fault+0xee/0x1f0 [kvm] kvm_mmu_page_fault+0x8d/0x620 [kvm] vmx_handle_exit+0x18c/0x5a0 [kvm_intel] kvm_arch_vcpu_ioctl_run+0xc55/0x1c20 [kvm] kvm_vcpu_ioctl+0x2d5/0x980 [kvm] __x64_sys_ioctl+0x8a/0xd0 do_syscall_64+0xb5/0x730 entry_SYSCALL_64_after_hwframe+0x4b/0x53 RIP: 0033:0x47fa3f </TASK> ---[ end trace 0000000000000000 ]---

Détail CVSS 3.1

Vecteur CVSS:3.1/AV:L/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H

Exploitable avec un accès local à la machine, sans compte et sans action d’un utilisateur ; un attaquant peut compromettre gravement la confidentialité, l’intégrité ou la disponibilité.

Vecteur d’attaque
Local
Complexité
Élevée
Privilèges requis
Aucun
Interaction
Aucune
Portée
Modifiée
Confidentialité
Élevé
Intégrité
Élevé
Disponibilité
Élevé

Produits et versions touchés

Produit Versions touchées Corrigé en
Linux 7.0 premières → < 7.0 7.0
Linux 6.19 premières → < 6.19.11 6.19.11
Linux 6.18 premières → < 6.18.21 6.18.21
Linux 6.12 premières → < 6.12.80 6.12.80
Linux 6.6 premières → < 6.6.131 6.6.131
Linux 6.1 premières → < 6.1.168 6.1.168
Linux 5.15 premières → < 5.15.203 5.15.203
Linux 5.13 Pas de correctif indiqué
Red Hat Enterprise Linux AppStream EUS (v. 10.0) Versions non publiées
Afficher les 58 autres branches
Produit Versions touchées Corrigé en
Red Hat Enterprise Linux AppStream (v. 10) Versions non publiées
Red Hat Enterprise Linux AppStream E4S (v.9.0) Versions non publiées
Red Hat Enterprise Linux AppStream E4S (v.9.2) Versions non publiées
Red Hat Enterprise Linux AppStream EUS (v.9.4) Versions non publiées
Red Hat Enterprise Linux AppStream EUS (v.9.6) Versions non publiées
Red Hat Enterprise Linux AppStream (v. 9) Versions non publiées
Red Hat Enterprise Linux BaseOS EUS (v. 10.0) Versions non publiées
Red Hat Enterprise Linux BaseOS (v. 10) Versions non publiées
Red Hat Enterprise Linux BaseOS (v. 8) Versions non publiées
Red Hat Enterprise Linux BaseOS AUS (v.8.6) Versions non publiées
Red Hat Enterprise Linux BaseOS E4S (v.8.6) Versions non publiées
Red Hat Enterprise Linux BaseOS TUS (v.8.6) Versions non publiées
Red Hat Enterprise Linux BaseOS E4S (v.8.8) Versions non publiées
Red Hat Enterprise Linux BaseOS TUS (v.8.8) Versions non publiées
Red Hat Enterprise Linux BaseOS E4S (v.9.0) Versions non publiées
Red Hat Enterprise Linux BaseOS E4S (v.9.2) Versions non publiées
Red Hat Enterprise Linux BaseOS EUS (v.9.4) Versions non publiées
Red Hat Enterprise Linux BaseOS EUS (v.9.6) Versions non publiées
Red Hat Enterprise Linux BaseOS (v. 9) Versions non publiées
Red Hat Enterprise Linux CodeReady Linux Builder EUS (v. 10.0) Versions non publiées
Red Hat Enterprise Linux CodeReady Linux Builder (v. 10) Versions non publiées
Red Hat Enterprise Linux CRB (v. 8) Versions non publiées
Red Hat CodeReady Linux Builder EUS (v.9.4) Versions non publiées
Red Hat CodeReady Linux Builder EUS (v.9.6) Versions non publiées
Red Hat Enterprise Linux CodeReady Linux Builder (v. 9) Versions non publiées
Red Hat Enterprise Linux Real Time for NFV EUS (v. 10.0) Versions non publiées
Red Hat Enterprise Linux Real Time for NFV (v. 10) Versions non publiées
Red Hat Enterprise Linux NFV (v. 8) Versions non publiées
Red Hat Enterprise Linux NFV E4S (v.9.0) Versions non publiées
Red Hat Enterprise Linux Real Time for NFV E4S (v.9.2) Versions non publiées
Red Hat Enterprise Linux Real Time for NFV EUS (v.9.4) Versions non publiées
Red Hat Enterprise Linux Real Time for NFV EUS (v.9.6) Versions non publiées
Red Hat Enterprise Linux Real Time for NFV (v. 9) Versions non publiées
Red Hat Enterprise Linux Real Time EUS (v. 10.0) Versions non publiées
Red Hat Enterprise Linux Real Time (v. 10) Versions non publiées
Red Hat Enterprise Linux RT (v. 8) Versions non publiées
Red Hat Enterprise Linux Real Time E4S (v.9.0) Versions non publiées
Red Hat Enterprise Linux Real Time E4S (v.9.2) Versions non publiées
Red Hat Enterprise Linux Real Time EUS (v.9.4) Versions non publiées
Red Hat Enterprise Linux Real Time EUS (v.9.6) Versions non publiées
Red Hat Enterprise Linux Real Time (v. 9) Versions non publiées
Red Hat Enterprise Linux 9 Versions non publiées
Red Hat Enterprise Linux 6 Versions non publiées
Red Hat Enterprise Linux 7 Versions non publiées
Red Hat Enterprise Linux BaseOS E4S (v.9.4) Versions non publiées
Red Hat Enterprise Linux 10 Versions non publiées
Red Hat Enterprise Linux 10.0 Extended Update Support Versions non publiées
Red Hat Enterprise Linux 8 Versions non publiées
Red Hat Enterprise Linux 8.6 Advanced Mission Critical Update Support Versions non publiées
Red Hat Enterprise Linux 8.6 Telecommunications Update Service Versions non publiées
Red Hat Enterprise Linux 8.6 Update Services for SAP Solutions Versions non publiées
Red Hat Enterprise Linux 8.8 Telecommunications Update Service Versions non publiées
Red Hat Enterprise Linux 8.8 Update Services for SAP Solutions Versions non publiées
Red Hat Enterprise Linux 9.0 Update Services for SAP Solutions Versions non publiées
Red Hat Enterprise Linux 9.2 Update Services for SAP Solutions Versions non publiées
Red Hat Enterprise Linux 9.4 Extended Update Support Versions non publiées
Red Hat Enterprise Linux 9.4 Update Services for SAP Solutions Versions non publiées
Red Hat Enterprise Linux 9.6 Extended Update Support Versions non publiées

Références

Chronologie

  1. Publiée
  2. Dernière modification
Les 18283 CVE de Linux →
Suivre cette CVE