La bascule « Intégrité de la mémoire » (Core Isolation / HVCI) de Windows 11 se désactive toute seule ? Voici un plan d’action exhaustif — matériel, firmware, pilotes et configuration — pour l’activer et la maintenir activée de façon durable, sans tâtonner.
Comprendre le problème et ses symptômes
L’Intégrité de la mémoire (HVCI, Hypervisor‑Enforced Code Integrity) est une composante de la Virtualization‑Based Security (VBS) qui isole la mémoire noyau dans un environnement protégé par l’hyperviseur Windows. Quand cette option se désactive, Windows l’indique dans Sécurité Windows > Sécurité de l’appareil > Isolation du noyau avec une alerte invitant à « Activer l’intégrité de la mémoire ». Parfois, l’activation échoue avec un message de pilotes incompatibles, ou bien l’option repasse à Désactivé après un redémarrage ou une mise à jour.
La cause la plus fréquente : un pilote noyau non conforme HVCI (ancien, mal signé, utilisant des API obsolètes), une virtualisation firmware désactivée, un BIOS/UEFI trop ancien ou un changement de configuration (mise à jour du GPU, ajout d’un périphérique PCIe, activation d’un outil de virtualisation tiers, etc.).
Résumé exécutif : la check‑list fiable
Appliquez ces étapes dans l’ordre. Si l’une échoue, corrigez avant de passer à la suivante.
Étape | Action | Détails essentiels | Commandes / Outils utiles |
---|---|---|---|
1. Vérifier les prérequis matériels | Confirmer que la plateforme prend en charge VBS | – CPU 64 bits avec Intel VT‑x ou AMD‑V. – SLAT (Second Level Address Translation). – IOMMU (Intel VT‑d / AMD‑Vi) pour bloquer les accès DMA. – TPM 2.0 (physique ou firmware). | systeminfo /nh Cherchez « Configuration requise pour Hyper‑V ».msinfo32 > Vérifier « Mode BIOS : UEFI » et « Sécurité basée sur la virtualisation ». |
2. Contrôler le firmware UEFI | Le microprogramme doit être compatible VBS | – Table WMST (Windows SMM Security Mitigations Table) conforme. – Table UEFI Memory Attributes (MAT) correcte : séparation code/données, alignement 4 Kio, protections RO/NX. – Secure MOR v2 pour l’effacement sécurisé de la mémoire. – Secure Boot activé. | Mettre à jour le BIOS/UEFI vers la dernière version stable du constructeur. |
3. Activer la virtualisation | Activer VT‑x/SVM et VT‑d/AMD‑Vi dans l’UEFI | – « Intel Virtualization Technology » / « SVM » (AMD). – « Intel VT‑d » ou « AMD‑Vi » (IOMMU). – Laisser Hyper‑V disponible (Windows gère l’hyperviseur pour VBS). | Après réglage UEFI, vérifiez : systeminfo et bcdedit /enum {current} (hypervisorlaunchtype=Auto) |
4. Mettre à jour BIOS, microprogramme et pilotes | Supprimer tout héritage incompatible | – Installez le BIOS/UEFI le plus récent. – Mettez à jour chipset, GPU, réseau, stockage via le constructeur. – Appliquez toutes les mises à jour Windows. | Gestionnaire de périphériques > clic droit > Mettre à jour. Privilégiez les packages OEM récents. |
5. Rechercher les pilotes incompatibles | Identifier et corriger les bloqueurs HVCI | – Lancez Driver Verifier avec l’option Code Integrity Compatibility. – Exécutez le test HVCI Readiness du Windows HLK (si disponible). – Dans Sécurité de l’appareil > Détails Isolation du noyau, tout pilote listé doit être mis à jour, remplacé ou supprimé. | verifier /standard /driver <nom.sys> Get-ComputerInfo | Select-Object DeviceGuard* Observateur d’événements : Microsoft > Windows > CodeIntegrity > Operational. |
6. Activer VBS & Intégrité | Activer l’option une fois la conformité atteinte | – Sécurité Windows > Sécurité de l’appareil > Isolation du noyau > bascule « Intégrité de la mémoire ». – OU via stratégie de groupe : Configuration ordinateur > Modèles d’administration > Système > Device Guard > Activer la sécurité basée sur la virtualisation + HypervisorEnforcedCodeIntegrity = Enabled . | Redémarrez après l’activation. Vérifiez l’état avec PowerShell (ci‑dessous). |
7. Redémarrer et valider | Confirmer la persistance | – Vérifiez que l’option reste Activée après 2 redémarrages. – Inspectez les journaux CodeIntegrity/Operational pour détecter des erreurs HVCI. – Contrôlez la Protection DMA du noyau (Kernel DMA Protection) dans Sécurité de l’appareil. | Get-CimInstance -ClassName Win32_DeviceGuard Get-ComputerInfo | Select-Object DeviceGuard* |
Informations complémentaires utiles
- Désactivation temporaire : pour diagnostiquer un pilote, vous pouvez désactiver HVCI provisoirement, redémarrer, remplacer le pilote, puis réactiver l’intégrité de la mémoire.
- Éviter les conflits Hyper‑V : Hyper‑V doit rester disponible, mais certains hyperviseurs tiers (Workstation, VirtualBox anciens) exigent des versions « compatibles Hyper‑V ».
- Scripts de vérification rapide :
systeminfo /nh
etGet‑ComputerInfo | Select‑Object DeviceGuard*
résument l’état VBS/HVCI. - Persistance : après mise à jour d’un pilote ou du BIOS, Windows peut désactiver l’option par précaution ; répétez les étapes 4 et 5.
Tutoriel détaillé et étapes pas à pas
Vérifier le matériel et le mode d’amorçage
- Ouvrez msinfo32 et contrôlez :
- Mode BIOS : UEFI (pas « Hérité »).
- État de démarrage sécurisé : Activé.
- Sécurité basée sur la virtualisation : idéalement En cours d’exécution une fois HVCI activé.
- Dans un Invite de commandes administrateur :
systeminfo
Recherchez la section « Configuration requise pour Hyper‑V ». Vous devez voir Extensions du mode de moniteur de machine virtuelle : Oui, SLAT : Oui, La virtualisation est activée dans le microprogramme : Oui, DEP : Oui.
Activer la virtualisation dans l’UEFI
Redémarrez et entrez dans l’UEFI. Activez :
- Intel Virtualization Technology (ou SVM côté AMD),
- Intel VT‑d / AMD‑Vi (IOMMU),
- Conservez Secure Boot activé.
De retour sous Windows :
bcdedit /enum {current}
Vérifiez hypervisorlaunchtype Auto
. Si ce n’est pas le cas :
bcdedit /set hypervisorlaunchtype auto
Mettre à jour le BIOS/UEFI et les pilotes clés
Un BIOS ancien ou un pilote noyau historique suffit à faire repasser HVCI à Off au démarrage. Appliquez :
- Le dernier BIOS/UEFI fourni par l’OEM (répare souvent MAT/WMST et IOMMU).
- Les pilotes OEM récents : chipset (Intel/AMD), GPU (DCH), réseau (Wi‑Fi/Ethernet), stockage (NVMe/RAID), audio. Évitez les pilotes génériques trop anciens.
- Les mises à jour facultatives de Windows Update dans « Mises à jour de pilotes ».
Identifier et corriger les pilotes incompatibles
Si Intégrité de la mémoire refuse de s’activer car un pilote est listé comme « incompatible » :
- Ouvrez Sécurité Windows > Sécurité de l’appareil > Détails de l’isolation du noyau et notez chaque pilote signalé (
nom.sys
). - Recherchez une version signée moderne du pilote (site OEM). Si indisponible : remplacez le composant (ex. adaptateur USB, carte capture), ou supprimez le logiciel associé.
- Avec Driver Verifier (Admin) :
verifier /standard /driver nom_du_pilote.sys
Redémarrez, reproduisez, puis inspectez Observateur d’événements > Microsoft > Windows > CodeIntegrity > Operational pour des erreurs détaillant les appels interdits par HVCI.
Exemples typiques de bloqueurs : anciens filtres sécurité, pilotes d’overclocking/monitoring hérités, filtres de stockage (anciens pilotes RAID), pilotes audio « enhancements », pilotes d’émulation ou de virtualisation obsolètes. Chaque fois que possible, migrez vers des pilotes DCH et des versions 2020+.
Activer HVCI via l’interface graphique
- Ouvrez Sécurité Windows > Sécurité de l’appareil > Isolation du noyau.
- Activez la bascule Intégrité de la mémoire, puis redémarrez.
- De retour, validez avec PowerShell :
Get-ComputerInfo | Select-Object DeviceGuard* | Format-List
Assurez‑vous que l’intégrité du code « enforced by hypervisor » est Active.
Activer HVCI via stratégie de groupe (GPO) ou Registre
En environnement géré ou si l’UI échoue, forcez la configuration :
Stratégie de groupe
- gpedit.msc > Configuration ordinateur > Modèles d’administration > Système > Device Guard.
- Ouvrez Activer la sécurité basée sur la virtualisation et choisissez :
- Sécurité basée sur la virtualisation : Activée,
- Protection basée sur la virtualisation de l’intégrité du code : Activée avec verrouillage UEFI (idéalement),
- Protection DMA : Active si disponible (plateforme compatible).
- Fermez, exécutez :
gpupdate /force
puis redémarrez.
Registre (administrateur)
Attention : sauvegardez votre Registre. Créez un fichier .reg
et importez :
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard]
"EnableVirtualizationBasedSecurity"=dword:00000001
"RequirePlatformSecurityFeatures"=dword:00000003
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity]
"Enabled"=dword:00000001
Signification :
EnableVirtualizationBasedSecurity=1
: VBS activé.RequirePlatformSecurityFeatures=3
: Secure Boot + protection DMA requises (1 = Secure Boot seul)....HVCI\Enabled=1
: HVCI activée.
Valider la persistance et diagnostiquer via les journaux
Après redémarrage :
- Double redémarrage : assurez‑vous que HVCI reste activée après deux cycles complets (certaines migrations de pilote nécessitent un second boot).
- Journaux : Observateur d’événements > Journaux des applications et services > Microsoft > Windows > CodeIntegrity > Operational. Recherchez des erreurs ou avertissements ; corrigez les pilotes incriminés.
- État synthétique (PowerShell) :
Get-CimInstance -ClassName Win32_DeviceGuard | Select-Object SecurityServicesConfigured, SecurityServicesRunning, VirtualizationBasedSecurityStatus
Scripts d’audit et de remédiation « prêts à l’emploi »
Audit rapide VBS/HVCI
# Exécuter dans PowerShell (Administrateur)
$dg = Get-CimInstance -ClassName Win32_DeviceGuard
$ci = Get-ComputerInfo | Select-Object -ExpandProperty DeviceGuard* -ErrorAction SilentlyContinue
"=== VBS/HVCI ==="
$dg | Format-List *
"=== DeviceGuard (Get-ComputerInfo) ==="
$ci
"=== Hyperviseur Windows ==="
bcdedit /enum {current}
"=== Hyper-V Requirements (systeminfo) ==="
systeminfo | Select-String "Hyper-V" -Context 0,4
Forcer l’activation (si prérequis OK)
# PowerShell (Administrateur) - forcer VBS/HVCI
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v EnableVirtualizationBasedSecurity /t REG_DWORD /d 1 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard" /v RequirePlatformSecurityFeatures /t REG_DWORD /d 3 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v Enabled /t REG_DWORD /d 1 /f
bcdedit /set hypervisorlaunchtype auto
Write-Host "Redémarrez l’ordinateur pour appliquer les changements."
Désactivation temporaire (pour remplacer un pilote)
# À utiliser UNIQUEMENT pour maintenance temporaire
reg add "HKLM\SYSTEM\CurrentControlSet\Control\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity" /v Enabled /t REG_DWORD /d 0 /f
Write-Host "Redémarrez, remplacez le(s) pilote(s), puis réactivez HVCI."
Cas particuliers et scénarios fréquents
Coexistence avec des hyperviseurs tiers, WSL 2 et outils développeur
- WSL 2 / Docker Desktop : compatibles si l’hyperviseur Windows est actif (hypervisorlaunchtype=Auto). Mettez ces outils à jour.
- VMware Workstation, VirtualBox : utilisez des versions « compatibles Hyper‑V » (modes basés sur l’API Windows Hypervisor Platform). Les versions anciennes exigent la désactivation d’Hyper‑V, ce qui casse VBS/HVCI.
- Mode noyau de débogage : tout débogage noyau ou patchguard‑like peut empêcher HVCI. Désactivez‑les en production.
Matériel portable avec stations d’accueil
Certains docks PCIe/Thunderbolt ajoutent des périphériques DMA ; si Kernel DMA Protection est indisponible, HVCI peut se désactiver par prudence. Mettez à jour le firmware du dock et les pilotes thunderbolt/USB4, et revalidez l’étape 1.
Pilotes « fantômes »
Après une désinstallation, il peut rester des services noyau désactivés mais présents, détectés par HVCI. Pour les nettoyer :
pnputil /enum-drivers | Select-String -Pattern "oem" -Context 0,6
# Identifier le package du pilote concerné
pnputil /delete-driver oemXX.inf /uninstall /force
Politiques WDAC / Device Guard conflictuelles
Des stratégies WDAC (Windows Defender Application Control) personnalisées peuvent interagir avec HVCI. Si vous gérez un parc : vérifiez que la politique n’interdit pas l’initialisation HVCI ou n’exige pas des pilotes spécifiques non conformes.
Retour arrière BIOS/UEFI
Chez certains OEM, le rollback réactive des options héritées (CSM, Legacy USB). Assurez‑vous que le CSM/Legacy Boot est désactivé.
Tableaux de référence rapide
Pré‑requis & où les vérifier
Pré‑requis | Où/Comment | Attendu |
---|---|---|
UEFI + Secure Boot | msinfo32 | UEFI / Démarrage sécurisé : Activé |
VT‑x/SVM + SLAT | systeminfo | Oui / Oui |
IOMMU (VT‑d/AMD‑Vi) | UEFI > Advanced/Chipset | Activé |
TPM 2.0 | tpm.msc | Version 2.0, prêt |
Hyperviseur Windows | bcdedit | hypervisorlaunchtype : Auto |
Registre & valeurs clés (HVCI/VBS)
Clé | Valeur | Rôle |
---|---|---|
HKLM\...\DeviceGuard\EnableVirtualizationBasedSecurity | DWORD 1 | Active VBS |
HKLM\...\DeviceGuard\RequirePlatformSecurityFeatures | DWORD 3 | Secure Boot + DMA |
HKLM\...\DeviceGuard\Scenarios\HypervisorEnforcedCodeIntegrity\Enabled | DWORD 1 | Active HVCI |
Messages courants → actions
Symptôme/Message | Cause probable | Action recommandée |
---|---|---|
« Pilotes incompatibles détectés » | Pilote noyau legacy | Mettre à jour / remplacer le pilote, nettoyer les restes (pnputil) |
Bascule repasse à OFF après redémarrage | Nouveau pilote ou mise à jour BIOS | Rejouer étapes 4–5, double redémarrage, vérifier journaux |
« La virtualisation n’est pas activée » | VT‑x/SVM/VT‑d désactivé dans l’UEFI | Activer virtualisation + IOMMU, vérifier bcdedit |
Conflits avec une VM tierce | Hyperviseur non compatible | Mettre à jour VMware/VirtualBox, activer compatibilité Hyper‑V |
Bonnes pratiques pour une activation qui tient dans le temps
- Mises à jour prévisibles : figez les versions de pilotes critiques (stockage, VPN, sécurité) et testez HVCI sur un groupe pilote avant déploiement large.
- Surveillance : surveillez le journal CodeIntegrity et l’état
Win32_DeviceGuard
via script, alertez en cas de bascule. - Hygiène logicielle : désinstallez les outils noyau non essentiels (anciens filtres, outils d’overclocking) sur postes d’entreprise.
- Firmware à jour : conservez une politique de mise à jour BIOS/UEFI annuelle minimum.
FAQ
HVCI ralentit‑il mon PC ? Sur du matériel récent (SLAT/IOMMU), l’impact est généralement faible. Sur des plateformes anciennes, l’overhead peut être perceptible ; privilégiez l’actualisation matérielle plutôt que de désactiver HVCI.
Faut‑il installer Hyper‑V ? Non : VBS/HVCI utilise l’hyperviseur Windows, même sans le rôle Hyper‑V complet. Il faut seulement que l’hyperviseur puisse se lancer (hypervisorlaunchtype=Auto).
Pourquoi HVCI se désactive après Windows Update ? Windows peut désactiver HVCI si un nouveau pilote noyau ne satisfait plus les exigences. Ce comportement protège la stabilité. Répétez les étapes 4–5, corrigez le pilote, puis réactivez.
Puis‑je forcer HVCI sur du matériel non compatible ? Non. Sans UEFI, SLAT, IOMMU et Secure Boot, HVCI n’est pas supporté et peut provoquer des instabilités.
Procédure de bout en bout (condensé « copier‑coller »)
- Vérifiez UEFI/Secure Boot/VT‑x/SLAT via
msinfo32
etsysteminfo
. - Activez VT‑x/SVM et VT‑d/AMD‑Vi dans l’UEFI, puis :
bcdedit /set hypervisorlaunchtype auto
- Mettez à jour BIOS/UEFI + pilotes chipset/GPU/réseau/stockage.
- Nettoyez les pilotes incompatibles (UI Sécurité Windows +
pnputil
+verifier
). - Activez HVCI via l’UI ou GPO/Registre (valeurs ci‑dessus).
- Double redémarrage, puis validez :
Get-CimInstance Win32_DeviceGuard
- Surveillez les journaux CodeIntegrity/Operational et la protection DMA.
Conclusion
Si vous suivez rigoureusement la séquence matériel → firmware → pilotes → activation logicielle, l’option « Intégrité de la mémoire » reste activée de manière stable. La clé est de supprimer les pilotes non conformes, maintenir l’UEFI et autoriser l’hyperviseur Windows. Conservez ce guide comme check‑list après chaque changement matériel/logiciel impactant le noyau.
Annexe : commandes utiles (mémo)
# État Device Guard / VBS / HVCI
Get-CimInstance -ClassName Win32_DeviceGuard | Format-List *
# Résumé DeviceGuard dans Get-ComputerInfo
Get-ComputerInfo | Select-Object DeviceGuard* | Format-List
# Hyperviseur Windows
bcdedit /enum {current}
# Hyper-V Requirements
systeminfo | Select-String "Hyper-V" -Context 0,4
# Journaux HVCI
eventvwr.msc # Microsoft > Windows > CodeIntegrity > Operational
# Driver Verifier ciblé
verifier /standard /driver nom_du_pilote.sys
# Nettoyage pilote PnP
pnputil /enum-drivers
pnputil /delete-driver oemXX.inf /uninstall /force
Annexe : modèle de note d’intervention
Machine/BIOS :
- UEFI : Oui / Secure Boot : Oui
- Virtualisation : VT-x/SVM : Oui | VT-d/AMD-Vi : Oui
- TPM : 2.0
Pilotes :
* Chipset/GPU/Net/Storage : à jour (versions >= 2022)
* Pilotes legacy retirés : (liste)
Configuration :
* HVCI : Activé via UI / GPO
* bcdedit : hypervisorlaunchtype=Auto
* DeviceGuard : VBS actif, HVCI actif
Validation :
* Journaux CodeIntegrity : OK
* Double reboot : OK
* Outils tiers (VM/WSL/Docker) : compatibles