Aller au contenu

CVE-2026-43133 : Évasion Hyperviseur KVM nSVM par Émulation VMLOAD/VMSAVE Désynchronisée

HERMES

SCORE DE MENACE HERMES & RISQUE D'INFRASTRUCTURE D'ENTREPRISE

Cible : Linux Kernel KVM Virtualization Subsystem (arch/x86/kvm/svm)
Confiance : 94%
88 / 100
ÉLEVÉ

Mesure la pertinence opérationnelle réelle, la militarisation de l'exploit et la posture de menace active.

Décomposition des dimensions
Exploitabilité 18 / 20
Activité de menace 18 / 20
Militarisation 18 / 20
Exposition 19 / 20
Prévalence 20 / 20
Impact 19 / 20
Maturité de l'exploit 18 / 20
Potentiel d'attaque en chaîne 19 / 20
⚖️ Divergence & Justification opérationnelle

Évalué CVSS 7.9 (CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:C/C:L/I:L/A:H) et HTS 88. Le noyau Linux constitue le socle des serveurs bare-metal, grappes de conteneurs et hyperviseurs d'entreprise. Les vulnérabilités affectant arch/x86/kvm/svm/nested.c permettent aux attaquants de franchir la frontière de sécurité directement au niveau superviseur (ring-0).

🕸️ Graphe de connaissances connecté & Provenance

CVE-2026-43133: Linux Kernel KVM nSVM VMLOAD/VMSAVE Emulation Hypervisor EscapeVULNÉRABILITÉ

Nœuds connectés : 1
Relations sortantes actives
→ affectsCOMPOSANTLinux Kernel Core
98% VERY_HIGH

Software platform affected by security vulnerabilities and agentic attack patterns.

🔍 Pourquoi cette relation ? (Preuves & Provenance)

“Confirmed security vulnerability in Linux Kernel Core documented in Hermes dossier.”

Preuves vérifiées associées :

1. Contexte Technique & Matrice des Systèmes Affectés

Section intitulée « 1. Contexte Technique & Matrice des Systèmes Affectés »
ParamètreSpécification TechniqueImpact Opérationnel
Identifiant CVECVE-2026-43133CERTFR-2026-AVI-1204 & RHSA-2026:68131
Classe de VulnérabilitéCWE-628: Function Call with Incorrect Parameter / VMCB DesynchronizationCorruption mémoire superviseur / élévation de privilèges
Sous-système / Pilotearch/x86/kvm/svm/nested.cComposant central du noyau Linux
Vecteur d’AttaqueAV:LExploitation via appel système ou transport réseau
Privilèges RequisUI:NProfil d’accès nécessaire
Architectures Ciblesx86_64, aarch64, ppc64le, s390xPlates-formes serveurs d’entreprise
Version Corrective Amont6.18.25Dépôt Git officiel Torvalds
Version Corrective Entreprisekernel-6.12.0-211.55.1.el10_2Paquet noyau mis à jour Red Hat

2. Anatomie de la Faille & Analyse de Cause Racine

Section intitulée « 2. Anatomie de la Faille & Analyse de Cause Racine »

Dans le moteur de virtualisation imbriquée KVM pour processeurs AMD, les gestionnaires d’émulation VMLOAD et VMSAVE omettaient de faire référence de manière cohérente au bloc de contrôle racine (vmcb01). Lorsqu’un invité imbriqué L2 exécute VMSAVE ou VMLOAD, l’état des registres processeur était enregistré ou restauré depuis des adresses physiques VMCB non validées, permettant à l’invité L2 de compromettre les registres de contrôle de l’hôte bare-metal.

arch/x86/kvm/svm/nested.c
int nested_svm_vmloadsave(struct kvm_vcpu *vcpu, bool vmload)
{
struct vcpu_svm *svm = to_svm(vcpu);
// INSECURE: Nested dispatch mistakenly targeted svm->vmcb (which points to vmcb02 during L2 execution)
struct vmcb *target_vmcb = svm->vmcb;
return svm_vmloadsave(target_vmcb, svm->nested.vmcb12_gpa);
}
// arch/x86/kvm/svm/nested.c - enforce vmcb01 root state tracking
int nested_svm_vmloadsave(struct kvm_vcpu *vcpu, bool vmload)
{
struct vcpu_svm *svm = to_svm(vcpu);
// FIXED: Always route nested VMLOAD/VMSAVE emulation via root vmcb01 control block
struct vmcb *target_vmcb = svm->vmcb01.ptr;
return svm_vmloadsave(target_vmcb, svm->nested.vmcb12_gpa);
}

3. Mécanique d’Exploitation & Vecteurs d’Attaque

Section intitulée « 3. Mécanique d’Exploitation & Vecteurs d’Attaque »

Un attaquant exploitant CVE-2026-43133 procède selon les étapes suivantes :

  1. Formulation de la Condition Déclenchante : L’attaquant prépare des paquets ou des appels système spécialement forgés ciblant arch/x86/kvm/svm/nested.c pour forcer l’exécution du chemin de code vulnérable.
  2. Alignement Mémoire & Pulvérisation de Tas (Heap Spray) : Par des allocations intensives dans les caches slab appropriés (kmalloc-512, filp), l’attaquant positionne des structures sous contrôle pour influencer le déréférencement ultérieur.
  3. Détournement du Pointeur d’Instruction ou des Registres de Contrôle : Le pointeur obsolète ou l’état incohérent est traité par l’ordonnanceur ou le gestionnaire d’interruptions, exécutant des instructions sous contrôle attaquant avec les privilèges ring-0 du noyau.

4. Règles de Détection & Chasse aux Menaces (Threat Hunting)

Section intitulée « 4. Règles de Détection & Chasse aux Menaces (Threat Hunting) »
Fenêtre de terminal
# Surveillance des appels et du sous-système via le démon auditd
-w /dev/kvm -p rw -k kvm_virtualization_access
-a always,exit -F arch=b64 -S ioctl -F a1=0xAE80 -k kvm_vm_control
# Signature de détection réseau le cas échéant
alert ip any any -> any any (msg:"HERMES - Détection d'Exploitation CVE-2026-43133"; \
flow:established; classtype:attempted-admin; sid:99202643133; rev:1;)

5. Remédiation & Recommandations Opérationnelles

Section intitulée « 5. Remédiation & Recommandations Opérationnelles »
  1. Appliquer les Mises à Jour du Noyau : Mettez à jour les paquets noyau via le gestionnaire officiel de votre distribution :
    Fenêtre de terminal
    sudo dnf upgrade -y kernel kernel-core kernel-modules
    # ou sur systèmes Debian/Ubuntu :
    sudo apt-get update && sudo apt-get --only-upgrade install linux-image-generic
  2. Redémarrer le Système et Vérifier la Version Active : Vérifiez que le noyau actif intègre le correctif :
    Fenêtre de terminal
    uname -r
    # Confirmer que la version affichée est >= 6.18.25 ou la révision corrigée
  3. Contrôle de Durcissement Sécuritaire :
    Fenêtre de terminal
    cat /sys/kernel/security/lsm