Comment vérifier que la mise à jour MS17-010 est installée

Avis

Cet article de la Base de connaissances est fourni en l’état et ne remplace pas les données de remplacement fournies par l'intermédiaire des canaux de mise à jour normaux. Les informations de remplacement dont la date est postérieure aux données suivantes se trouvent dans le guide des mises à jour de sécurité et dans d'autres outils associés.

Résumé

Consultez les produits auxquels cet article s’applique.

La mise à jour de sécurité MS17-010 corrige plusieurs vulnérabilités de Windows Server Message Block (SMB) v1. Le ransomware WannaCrypt exploite l’une des vulnérabilités faisant partie de la mise à jour MS17-010. Les ordinateurs sur lesquels la mise à jour MS17-010 n’est pas installée sont fortement exposés en raison de plusieurs logiciels malveillants. Cet article fournit plusieurs méthodes rapides permettant de détecter si l’ordinateur est mis à jour.

Méthode 1 : Vérifier par numéro de base de connaissances installée

Consultez le tableau suivant pour vérifier les mises à jour répertoriées (à l’exception de celles accompagnées de la mention « Ne contient pas le correctif MS17-010 »). Si l’une de ces mises à jour est installée, MS17-010 est installé.

Tableau 1 sur 2 : Windows 7 SP1 et versions ultérieures. Les numéros de correctif cumulatif suivants contiennent le correctif (à l’exception de la colonne « MàJ de sécurité uniquement d’avril 4B »). Sous chaque numéro d’article de la Base de connaissances figure le numéro de version du fichier Srv.sys mis à jour.

Version de Windows Mise à jour de sécurité de mars uniquement (14/03/17) Correctif cumulatif mensuel de mars
(14/03/2017)
Pré-version de mars du correctif cumulatif mensuel
(3/21/17)
MàJ de sécurité uniquement
Mise à jour uniquement
(4/11/17)
Correctif cumulatif mensuel d'avril
(4/11/17)
Pré-version d’avril du correctif cumulatif mensuel
(4/18/17)
Mise à jour de sécurité de mai uniquement
(5/09/17)
Correctif cumulatif mensuel de mai
(5/09/17)
Lien de téléchargement
Windows 7 SP1 et Windows Server 2008 R2 SP1 4012212
6.1.7601.23689
4012215
6.1.7601.23689
4012218
6.1.7601.23689
4015546
Ne contient pas le correctif MS17-010
4015549
6.1.7601.23689
4015552
6.1.7601.23689
4019263
6.1.7601.23762
4019264
6.1.7601.23762
Historique des mises à jour de Windows 7 SP1 et de Windows Server 2008 R2 SP1
Windows 2012 4012214
6.2.9200.22099
4012217
6.2.9200.22099
4012220
6.2.9200.22099
4015548
Ne contient pas le correctif MS17-010
4015551
6.2.9200.22099
4015554
6.2.9200.22099
4019214
6.2.9200.22137
4019216
6.2.9200.22137
Historique des mises à jour de Windows Server 2012
Windows 8.1 and Windows Server 2012 R2 4012213
6.3.9600.18604
4012216
6.3.9600.18604
4012219
6.3.9600.18604
4015547 Ne contient pas le correctif MS17-010 4015550
6.3.9600.18604
4015553
6.3.9600.18619
4019213
6.3.9600.18655
4019215
6.3.9600.18655
Historique des mises à jour de Windows 8.1 et de Windows Server 2012 R2
Windows 10 version 1507 4012606
10.0.10240.17319
4016637
10.0.10240.17319
- - 4015221
10.0.10240.17319
- - 4019474 10.0.10240.17394 Historique des mises à jour de Windows 10
Windows 10 version 1511 4013198
10.0.10586.839
4016636
10.0.10586.839
- - 4015219
10.0.10586.839
- - 4019473
10.0.10586.916
Historique des mises à jour de Windows 10
Windows 10 Version Windows Server 2016 4013429
10.0.14393.953
4016635
10.0.14393.953
- - 4015217
10.0.14393.953
- - 4019472
10.0.14393.1198
Historique de mise à jour de Windows 10 et de Windows Server 2016

 

Tableau 2 sur 2 : Suite pour les mises à jour de mai et juin 2017.

Version de Windows Pré-version de mai du correctif cumulatif mensuel
(5/16/17)
Mise à jour de sécurité de juin uniquement
(6/13/17)
Correctif cumulatif mensuel de juin
(6/13/17)
Lien de téléchargement
Windows 7 et Server 2008 R2 4019265
6.1.7601.23762
4022722 4022168
6.1.7601.23762
Historique des mises à jour de Windows 7 SP1 et de Windows Server 2008 R2 SP1
Windows Server 2012 4019218
6.2.9200.22137
4022718 4022724
6.2.9200.22137
Historique des mises à jour de Windows Server 2012
Windows 8.1 and Windows Server 2012 R2 4019217
6.3.9600.18655
4022717 4022720
6.3.9600.18688
Historique des mises à jour de Windows 8.1 et de Windows Server 2012 R2
Windows 10 version 1507 - - 4032695 Historique des mises à jour de Windows 10
Windows 10 version 1511 - - 4032693 Historique des mises à jour de Windows 10
Windows 10 version 1607 et Windows Server 2016 - - 4022723
10.0.14393.1198
Historique de mise à jour de Windows 10 et de Windows Server 2016

 

Tableau 2 : Autres versions de Windows. utilisation de KB4012598 pour la mise à jour de sécurité.

Version de Windows N° d'article et
version mise à jour de Srv.sys
Lien de téléchargement
Windows Server 2003 SP2 4012598
5.2.3790.6021
Windows Server 2003 SP2 x64

Windows Server 2003 SP2 x86
Windows XP 4012598
5.1.2600.7208
Windows XP SP2 x64

Windows XP SP3 x86

Windows XP Embedded SP3 x86
Windows Vista SP2 4012598
GDR : 6.0.6002.19743
LDR : 6.0.6002.24067
Windows Vista Service Pack 2

Windows Vista Édition x64 Service Pack 2
Windows Server 2008 SP2 4012598
GDR : 6.0.6002.19743
LDR : 6.0.6002.24067
Windows Server 2008 pour systèmes 32 bits Service Pack 2

Windows Server 2008 pour systèmes x64 Service Pack 2

Windows Server 2008 pour les systèmes Itanium Service Pack 2
Windows 8 4012598
6.2.9200.22099
Windows 8 x86, Windows 8 x64

 

Tableau 3 : Mises à jour supplémentaires qui contiennent le correctif.

Windows 8.1 and Windows Server 2012 R2

Date de publication N° d’article Page de support
mardi 21 mars 2017 4012219 21 mars 2017 — KB4012218 (préversion du correctif cumulatif mensuel)
18 avril 2017 4015553 18 avril 2017 - KB4015553 (Pré-version du correctif cumulatif mensuel)
16 mai 2017 4019217 16 mai 2017 - KB4019217 (Pré-version du correctif cumulatif mensuel)
27 juin 2017 4022720 27 juin 2017 — KB4022720 (préversion du correctif cumulatif mensuel)

Windows Server 2012

Date de publication N° d’article Page de support
mardi 21 mars 2017 4012220 21 mars 2017 - KB4012220 (Pré-version du correctif cumulatif mensuel)
18 avril 2017 4015554 18 avril 2017 - KB4015554 (Pré-version du correctif cumulatif mensuel)
16 mai 2017 4019218 16 mai 2017 - KB4019218 (Pré-version du correctif cumulatif mensuel)
27 juin 2017 4022721 27 juin 2017 — KB4022721 (préversion du correctif cumulatif mensuel)

Windows 7 SP1 et Windows Server 2008 R2 SP1

Date de publication N° d’article Page de support
mardi 21 mars 2017 4012218 21 mars 2017 — KB4012218 (préversion du correctif cumulatif mensuel)
18 avril 2017 4015552 18 avril 2017 — KB4015552 (préversion du correctif cumulatif mensuel)
16 mai 2017 4019265 16 mai 2017 — KB4019265 (préversion du correctif cumulatif mensuel)
27 juin 2017 4022168 27 juin 2017 — KB4022168 (préversion du correctif cumulatif mensuel)

Méthode 2 : Vérifier la version du fichier %systemroot %\system32\drivers\srv.sys

Consultez le tableau suivant pour vérifier la version de fichier de %systemroot%\system32\drivers\srv.sys. Si la version de fichier correspond ou est postérieure à la version répertoriée, la mise à jour MS17-010 est installée.

Version de Windows Version mise à jour minimale de Srv.sys
Windows XP 5.1.2600.7208
Windows Server 2003 SP2 5.2.3790.6021
Windows Vista
Windows Server 2008 SP2
GDR : 6.0.6002.19743, LDR : 6.0.6002.24067
Windows 7
Windows Server 2008 R2
6.1.7601.23689
Windows 8
Windows Server 2012
6.2.9200.22099
Windows 8.1
Windows Server 2012 R2
6.3.9600.18604
Windows 10 TH1 v1507 10.0.10240.17319
Windows 10 TH2 v1511 10.0.10586.839
Windows 10 RS1 v1607
Windows Server 2016
10.0.14393.953

Méthode 3 : Vérification par WMI et Windows PowerShell

Utilisez WMI et Windows PowerShell pour déterminer si les correctifs MS17-010 ont été installés.

Commande WMI

Pour rechercher un numéro d’article spécifique de la Base de connaissances, ouvrez une fenêtre d’invite de commandes avec élévation de privilèges, puis exécutez la commande suivante :


wmic qfe get hotfixid | find "KB1234567"

Remarques

  • Dans cette commande, remplacez <KB1234567> par le numéro de base de connaissances réel.

  • Utilisez une esperluette (&) pour rechercher plusieurs mises à jour. Par exemple, exécutez la commande suivante :

    wmic qfe get hotfixid | find "KB4012212" & wmic qfe get hotfixid | find "KB4012215" & wmic qfe get hotfixid | find "KB4015549"

Commandes PowerShell

Pour effectuer une vérification dans le système local, exécutez l’applet de commande PowerShell d’administration suivante :


 get-hotfix -id KB1234567

Remarques

  • Dans cette commande, remplacez <KB1234567> par le numéro de base de connaissances réel.

  • Utilisez une virgule ( , ) pour rechercher plusieurs mises à jour. Par exemple, exécutez la commande suivante :

    get-hotfix -id KB4012212,KB4012215,KB4015549

Pour vérifier tous les ordinateurs dans une unité d’organisation ou un domaine Active Directory, exécutez l’applet de commande PowerShell d’administration suivante sur un contrôleur de domaine :


foreach ( $n in (get-adcomputer -searchbase ‘OU=workstations,dc=contoso,dc=com’ -filter * -property * | select name )) {get-hotfix -computername $n.name -id KB1234567}

Remarque La partie « OU=workstations,dc=contoso,dc=com » peut être modifiée pour désigner la racine d’une partition d’annuaire du domaine Active Directory, comme « dc=contoso,dc=com » pour rechercher les ordinateurs dans l’ensemble du domaine. Dans cette commande, remplacez <KB1234567> par le numéro de base de connaissances réel.

Comment résoudre l’erreur d’installation « ne s’applique pas »

Si des correctifs prérequis ne sont pas installés sur l’ordinateur, le message d’erreur suivant peut s’afficher lors de l’installation de la mise à jour MS17-010 sur Windows 8.1 ou Windows Server 2012 R2 :

Remarque

La mise à jour ne s’applique pas à votre ordinateur.

Pour résoudre cette erreur, procédez comme suit :

  1. Assurez-vous que vous essayez d’installer la mise à jour correcte. Pour cela, vérifiez le numéro d’article de la Base de connaissances dans le tableau 1 de la méthode 1. Comparez ce numéro à la version, le niveau de Service Pack et le niveau de bits (x64, IA64 ou x86) de votre système.
     

  2. Vérifiez si des dépendances sont manquantes. Pour Windows 8.1 et Windows Server 2012 R2, installez les correctifs dépendants conformément aux articles suivants :

    • 2919355 de la base de connaissances : mise à jour Windows RT 8.1, Windows 8.1 et Windows Server 2012 R2 : avril 2014
    • Kb 2919442 : mise à jour de la pile de maintenance de mars 2014 pour Windows 8.1 et Windows Server 2012 R2
    • Kb 3173424 : Mise à jour de la pile de maintenance pour Windows 8.1 et Windows Server 2012 R2 : 12 juillet 2016
  3. Si vous ne parvenez pas à installer un correctif cumulatif, essayez une autre version de correctif cumulatif. Consultez le tableau 1 pour connaître les mises à jour disponibles.
     

Script PowerShell

Le script Windows PowerShell suivant compare la version de Srv.sys sur l’ordinateur local aux versions répertoriées dans le tableau de la méthode 2.

Enregistrez ce script dans un fichier .ps1, puis exécutez le script dans PowerShell. Ce script s’applique à Windows XP, à Windows Server 2003 et aux versions ultérieures. Il nécessite Windows PowerShell 2.0 ou version ultérieure.
 


[reflection.assembly]::LoadWithPartialName("System.Version")
$os = Get-WmiObject -class Win32_OperatingSystem
$osName = $os.Caption
$s = "%systemroot%\system32\drivers\srv.sys"
$v = [System.Environment]::ExpandEnvironmentVariables($s)
If (Test-Path "$v")
    {
    Try
        {
        $versionInfo = (Get-Item $v).VersionInfo
        $versionString = "$($versionInfo.FileMajorPart).$($versionInfo.FileMinorPart).$($versionInfo.FileBuildPart).$($versionInfo.FilePrivatePart)"
        $fileVersion = New-Object System.Version($versionString)
        }
    Catch
        {
        Write-Host "Unable to retrieve file version info, please verify vulnerability state manually." -ForegroundColor Yellow
        Return
        }
    }
Else
    {
    Write-Host "Srv.sys does not exist, please verify vulnerability state manually." -ForegroundColor Yellow
    Return
    }
if ($osName.Contains("Vista") -or ($osName.Contains("2008") -and -not $osName.Contains("R2")))
    {
    if ($versionString.Split('.')[3][0] -eq "1")
        {
        $currentOS = "$osName GDR"
        $expectedVersion = New-Object System.Version("6.0.6002.19743")
        } 
    elseif ($versionString.Split('.')[3][0] -eq "2")
        {
        $currentOS = "$osName LDR"
        $expectedVersion = New-Object System.Version("6.0.6002.24067")
        }
    else
        {
        $currentOS = "$osName"
        $expectedVersion = New-Object System.Version("9.9.9999.99999")
        }
    }
elseif ($osName.Contains("Windows 7") -or ($osName.Contains("2008 R2")))
    {
    $currentOS = "$osName LDR"
    $expectedVersion = New-Object System.Version("6.1.7601.23689")
    }
elseif ($osName.Contains("Windows 8.1") -or $osName.Contains("2012 R2"))
    {
    $currentOS = "$osName LDR"
    $expectedVersion = New-Object System.Version("6.3.9600.18604")
    }
elseif ($osName.Contains("Windows 8") -or $osName.Contains("2012"))
    {
    $currentOS = "$osName LDR"
    $expectedVersion = New-Object System.Version("6.2.9200.22099")
    }
elseif ($osName.Contains("Windows 10"))
    {
    if ($os.BuildNumber -eq "10240")
        {
        $currentOS = "$osName TH1"
        $expectedVersion = New-Object System.Version("10.0.10240.17319")
        }
    elseif ($os.BuildNumber -eq "10586")
        {
        $currentOS = "$osName TH2"
        $expectedVersion = New-Object System.Version("10.0.10586.839")
        }
    elseif ($os.BuildNumber -eq "14393")
        {
        $currentOS = "$($osName) RS1"
        $expectedVersion = New-Object System.Version("10.0.14393.953")
        }
    elseif ($os.BuildNumber -eq "15063")
        {
        $currentOS = "$osName RS2"
        "No need to Patch. RS2 is released as patched. "
        return
        }
    }
elseif ($osName.Contains("2016"))
    {
    $currentOS = "$osName"
    $expectedVersion = New-Object System.Version("10.0.14393.953")
    }
elseif ($osName.Contains("Windows XP"))
    {
    $currentOS = "$osName"
    $expectedVersion = New-Object System.Version("5.1.2600.7208")
    }
elseif ($osName.Contains("Server 2003"))
    {
    $currentOS = "$osName"
    $expectedVersion = New-Object System.Version("5.2.3790.6021")
    }
else
    {
    Write-Host "Unable to determine OS applicability, please verify vulnerability state manually." -ForegroundColor Yellow
    $currentOS = "$osName"
    $expectedVersion = New-Object System.Version("9.9.9999.99999")
    }
Write-Host "`n`nCurrent OS: $currentOS (Build Number $($os.BuildNumber))" -ForegroundColor Cyan
Write-Host "`nExpected Version of srv.sys: $($expectedVersion.ToString())" -ForegroundColor Cyan
Write-Host "`nActual Version of srv.sys: $($fileVersion.ToString())" -ForegroundColor Cyan
If ($($fileVersion.CompareTo($expectedVersion)) -lt 0)
    {
    Write-Host "`n`n"
    Write-Host "System is NOT Patched" -ForegroundColor Red
    }
Else
    {
    Write-Host "`n`n"
    Write-Host "System is Patched" -ForegroundColor Green
    }
#

Références

Conseils aux clients en ce qui concerne les attaques WannaCrypt

Centre de protection contre les programmes malveillants

Blog Microsoft Malware Protection Center

Mise à jour de sécurité MS17-010

Requêtes SQL Server Configuration Manager pour les rapports de conformité liés à MS17-010

Cet article s’applique aux produits suivants :

 

  • Windows Server 2016
  • Windows 10 version 1607
  • Windows 10 version 1511
  • Windows 10 version 1507
  • Windows Server 2012 R2
  • Windows 8.1
  • Windows Server 2012
  • Windows 8
  • Windows Server 2008 R2
  • Windows 7
  • Windows Server 2008 Service Pack 2
  • Windows Vista
  • Windows Server 2003 Service Pack 2
  • Windows XP