Instructions Windows Server concernant la protection contre les vulnérabilités de canal auxiliaire d’exécution spéculative

S’applique à : Windows Server 2016 Version 1709Windows Server 2012 R2 StandardWindows Server 2012 Standard Plus

Résumé


Microsoft a connaissance d’une nouvelle classe de vulnérabilités appelée « attaques par canal auxiliaire d’exécution spéculative » qui touche de nombreux processeurs modernes, dont Intel, AMD et ARM.

Remarque Ce problème concerne également d’autres systèmes d’exploitation tels qu’Android, Chrome, iOS et Mac OS. Nous conseillons dès lors à nos clients de rechercher des instructions auprès du fournisseur correspondant.

Microsoft a publié plusieurs mises à jour pour contribuer à atténuer ces vulnérabilités. Nous avons également pris des mesures pour sécuriser nos services cloud. Pour plus d’informations, consultez les sections suivantes.

Microsoft n’a encore reçu aucune information faisant état d’une utilisation de ces vulnérabilités dans le but d’attaquer des clients. Microsoft collabore étroitement avec des partenaires du secteur, notamment des fabricants de puces, des fabricants de matériel OEM et des fournisseurs d’application, afin de protéger ses clients. Pour bénéficier de toutes les protections disponibles, des mises à jour du microprogramme (microcode) et des mises à jour logicielles sont requises. Cela concerne notamment le microcode des fabricants d’appareils OEM et, dans certains cas, des mises à jour de l’antivirus.

Cet article concerne les vulnérabilités suivantes :

Pour en savoir plus sur cette classe de vulnérabilités, consultez les avis ADV180002 et ADV180012.

Microsoft fournit des informations de contact de sociétés tierces afin de vous aider à obtenir un support technique. Ces informations de contact peuvent être modifiées sans préavis. Microsoft ne garantit pas l'exactitude des informations concernant les sociétés tierces.

Actions recommandées


Les clients doivent prendre les mesures suivantes pour bénéficier d’une protection contre ces vulnérabilités :

  1. Appliquer toutes les mises à jour disponibles pour le système d’exploitation Windows, y compris les mises à jour de sécurité Windows mensuelles. Pour plus d’informations sur l’activation de ces mises à jour, voir l’article 4072699 de la Base de connaissances Microsoft.
  2. Appliquer les mises à jour applicables du microprogramme (microcode) fournies par le fabricant de l’appareil (OEM).
  3. Évaluer le risque pour l’environnement en fonction des informations contenues dans les avis de sécurité Microsoft ADV180002 et ADV180012, ainsi que dans cet article de la Base de connaissances.
  4. Prendre les mesures requises mentionnées dans les avis et dans les informations sur les clés de Registre contenues dans cet article de la Base de connaissances.

Activation des protections sur Windows Server


Les atténuations pour CVE-2017-5753 sont activées par défaut sous Windows Server et aucune option administrateur n’est disponible pour les désactiver. Les atténuations pour les trois autres vulnérabilités décrites dans cet article sont désactivées par défaut. Vous devez modifier des clés de Registre pour activer ces atténuations si vous souhaitez bénéficier de toutes les protections disponibles contre ces vulnérabilités.

L’activation de ces atténuations peut réduire les performances. L’ampleur de l’impact sur les performances varie en fonction de différents facteurs, comme le circuit microprogrammé de l’hôte physique et les charges de travail exécutées. Nous vous recommandons d’évaluer l’impact sur les performances de votre environnement et d’apporter les modifications nécessaires.

Votre serveur est exposé à un risque accru s’il relève de l’une des catégories suivantes :

  • Hôtes Hyper-V : nécessitent une protection contre les attaques d’une machine virtuelle vers une autre machine virtuelle et d’une machine virtuelle vers un hôte.
  • Hôtes de services Bureau à distance (RDSH) : nécessitent une protection contre les attaques d’une session vers une autre session ou d’une session vers un hôte.
  • Machines virtuelles ou hôtes physiques qui exécutent du code non approuvé, tels des conteneurs ou des extensions non approuvées d’une base de données, du contenu web non approuvé ou des charges de travail exécutant du code provenant de sources externes : nécessitent une protection contre les attaques d’un processus non approuvé vers un autre processus ou d’un processus non approuvé vers le noyau.

Utilisez les paramètres de clé de Registre suivants pour activer les atténuations sur le serveur et veillez à redémarrer le système pour que les modifications soient prises en compte.

Activer les atténuations pour CVE-2017-5715 (variante 2 de Spectre) et CVE-2017-5754 (Meltdown)


Important Cette section, méthode ou tâche contient des étapes vous indiquant comment modifier le Registre. Toutefois, des problèmes graves peuvent se produire si vous modifiez le Registre de façon incorrecte. Par conséquent, veillez à suivre ces étapes scrupuleusement. Pour plus de protection, effectuez une sauvegarde du Registre avant de le modifier. Vous serez alors en mesure de le restaurer en cas de problème. Pour plus d'informations sur la procédure de sauvegarde et de restauration du Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft :

322756 Comment sauvegarder et restaurer le Registre dans Windows

Pour activer les atténuations pour CVE-2017-5715 (variante 2 de Spectre) et CVE-2017-5754 (Meltdown) :

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization" /v MinVmVersionForCpuBasedMitigations /t REG_SZ /d "1.0" /f

S’il s’agit d’un hôte Hyper-V et que les mises à jour du microprogramme ont été appliquées : arrêtez toutes les machines virtuelles. L’atténuation liée au microprogramme peut ainsi être appliquée sur l’hôte avant le démarrage des machines virtuelles. Par conséquent, les machines virtuelles sont également mises à jour lorsqu’elles sont redémarrées.

Redémarrez le serveur pour que les modifications soient prises en compte.

Pour désactiver les atténuations pour CVE-2017-5715 (variante 2 de Spectre) et CVE-2017-5754 (Meltdown) :

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 3 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

Redémarrez le serveur pour que les modifications soient prises en compte.

(Il n’est pas nécessaire de modifier MinVmVersionForCpuBasedMitigations.)


Remarques

Désactiver l’atténuation pour CVE-2017-5715 (variante 2 de Spectre)


En attendant qu’Intel teste, mette à jour et déploie un nouveau microcode, nous proposons une nouvelle possibilité pour les utilisateurs confirmés d’appareils concernés de désactiver et d’activer manuellement l’atténuation contre la variante 2 de Spectre (CVE-2017-5715 - « Branch Target Injection ») de manière indépendante en modifiant le Registre.

Si vous avez installé le microcode, mais souhaitez désactiver l’atténuation de la vulnérabilité CVE-2017-5715 en raison de redémarrages inattendus ou de problèmes de stabilité du système, suivez les instructions ci-dessous.

Pour désactiver l’atténuation de la variante 2 (CVE-2017-5715 - « Branch Target Injection ») :

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 1 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

Pour activer l’atténuation de la variante 2 (CVE-2017-5715 - « Branch Target Injection ») :

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization" /v MinVmVersionForCpuBasedMitigations /t REG_SZ /d "1.0" /f


Remarque
La désactivation et l’activation de l’atténuation de la variante 2 par la modification du Registre nécessitent des droits d’administration et un redémarrage.

Activer Indirect Branch Prediction Barrier (IBPB) pour la variante 2 de Spectre sur les processeurs AMD


Certains processeurs AMD proposent une fonctionnalité de contrôle de branche indirecte (Indirect Branch) pour atténuer les injections cibles de branche indirecte par le biais d’un mécanisme IBPB (Indirect Branch Prediction Barrier). (Pour plus d’informations, consultez le point 15 du forum aux questions dans l’avis ADV180002, ainsi que les instructions relatives à l’architecture AMD concernant le contrôle Indirect Branch et les mises à jour de la sécurité des processeurs AMD.)

Suivez les instructions ci-dessous pour contrôler IBPB en cas de basculement du contexte utilisateur vers le contexte de noyau :

Pour activer l’utilisation de Indirect Branch Prediction Barrier (IBPB) en cas de basculement du contexte utilisateur vers le contexte de noyau :

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 64 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f


Remarque
L’activation de l’utilisation de Indirect Branch Prediction Barrier (IBPB) par la modification du Registre nécessite des droits d’administration et un redémarrage.

Activer les atténuations pour CVE-2018-3639 (Speculative Store Bypass), CVE-2017-5715 (variante 2 de Spectre) et CVE-2017-5754 (Meltdown)



Pour activer les atténuations pour CVE-2018-3639 (Speculative Store Bypass), CVE-2017-5715 (variante 2 de Spectre) et CVE-2017-5754 (Meltdown) :

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 8 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization" /v MinVmVersionForCpuBasedMitigations /t REG_SZ /d "1.0" /f

Pour désactiver les atténuations pour CVE-2018-3639 (Speculative Store Bypass) Atténuation CVE-2017-5715 (variante 2 de Spectre) et CVE-2017-5754 (Meltdown)

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 3 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f


Remarque
Ces modifications du Registre nécessitent des droits d’administration et un redémarrage.

Vérification de l’activation des protections


Pour vous aider à vérifier que les protections appropriées sont activées, Microsoft a publié un script PowerShell à exécuter sur votre système. Installez et exécutez le script à l’aide des commandes suivantes.

Vérification PowerShell à l’aide de PowerShell Gallery (Windows Server 2016 ou WMF 5.0/5.1)

Installation du module PowerShell :

PS> Install-Module SpeculationControl

Exécution du module PowerShell pour vérifier que les protections sont activées :

PS> # Save the current execution policy so it can be reset

PS> $SaveExecutionPolicy = Get-ExecutionPolicy

PS> Set-ExecutionPolicy RemoteSigned -Scope Currentuser

PS> Import-Module SpeculationControl

PS> Get-SpeculationControlSettings

PS> # Reset the execution policy to the original state

PS> Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser

Vérification PowerShell à l’aide d’un téléchargement depuis TechNet (versions antérieures du système d’exploitation/WMF)

Installation du module PowerShell à partir de TechNet ScriptCenter :

  1. Accédez à https://aka.ms/SpeculationControlPS.
  2. Téléchargez le fichier SpeculationControl.zip dans un dossier local.
  3. Extrayez le contenu dans un dossier local. Par exemple : C:\ADV180002.

Exécution du module PowerShell pour vérifier que les protections sont activées :

Démarrez PowerShell, puis utilisez l’exemple précédent pour copier et exécuter les commandes suivantes :

PS> # Save the current execution policy so it can be reset

PS> $SaveExecutionPolicy = Get-ExecutionPolicy

PS> Set-ExecutionPolicy RemoteSigned -Scope Currentuser

PS> CD C:\ADV180002\SpeculationControl

PS> Import-Module .\SpeculationControl.psd1

PS> Get-SpeculationControlSettings

PS> # Reset the execution policy to the original state

PS> Set-ExecutionPolicy $SaveExecutionPolicy -Scope Currentuser


Pour obtenir des explications détaillées sur les résultats du script PowerShell, consultez l’
article 4074629 de la Base de connaissances

Forum aux questions


Les mises à jour de sécurité Windows publiées en janvier et en février 2018 ne m’ont pas été proposées. Que faire ?

Afin d’éviter tout impact négatif sur les appareils, les mises à jour de sécurité Windows publiées en janvier et en février 2018 n’étaient pas proposées à tous les clients. Pour plus d’informations, consultez l’article 4072699 de la Base de connaissances Microsoft.

Références