Πώς να επαληθεύσετε ότι είναι εγκατεστημένο το MS17-010

Προειδοποίηση

Αυτό το άρθρο της Γνωσιακής βάσης παρέχεται ως έχει και δεν αντικαθιστά τα δεδομένα αντικατάστασης που παρέχονται μέσω των συνήθων καναλιών ενημέρωσης. Στον Οδηγό ενημερώσεων ασφαλείας και σε άλλα εργαλεία παράπλευρων ενημερώσεων μπορείτε να βρείτε πληροφορίες υπερισχύουν των επόμενων ημερομηνιών.

Σύνοψη

Ανατρέξτε στα προϊόντα για τα οποία ισχύει αυτό το άρθρο.

Η ενημέρωση ασφαλείας MS17-010 επιλύει διάφορες ευπάθειες στο Windows Server Message Block (SMB) v1. Το λυτρισμικό WannaCrypt εκμεταλλεύεται μία από τις ευπάθειες που αποτελούν μέρος της ενημέρωσης MS17-010. Οι υπολογιστές στους οποίους δεν είναι εγκατεστημένο το MS17-010 διατρέχουν αυξημένο κίνδυνο λόγω αρκετών πιέσεων λογισμικού κακόβουλης λειτουργίας. Αυτό το άρθρο παρέχει πολλές γρήγορες μεθόδους για να εντοπίσετε εάν ο υπολογιστής είναι ενημερωμένος.

Μέθοδος 1: Έλεγχος από εγκατεστημένο αριθμό Γνωσιακής βάσης

Χρησιμοποιήστε τον παρακάτω πίνακα για να ελέγξετε για οποιαδήποτε από τις αναφερόμενες ενημερώσεις (εκτός από αυτές που επισημαίνονται ως "Δεν περιέχουν ενημέρωση κώδικα MS17-010"). Εάν είναι εγκατεστημένο κάποιο από αυτά, είναι εγκατεστημένο το MS17-010.

Πίνακας 1 από 2: Windows 7 SP1 και νεότερες εκδόσεις. Οι παρακάτω ενημερώσεις KB περιέχουν την επιδιόρθωση (εκτός από τη στήλη "Μόνο 4B ασφαλείας Απριλίου"). Κάτω από κάθε αριθμό KB βρίσκεται ο ενημερωμένος Srv.sys αριθμός έκδοσης.

Εκδόσεις των Windows Ενημέρωση μόνο για την ασφάλεια Μαρτίου (14/3/17) Μηνιαία συνάθροιση Μαρτίου
(3/14/17)
Προεπισκόπηση Μαρτίου μηνιαίας συνάθροισης
(3/21/17)
Ασφάλεια Απριλίου
Ενημέρωση μόνο
(4/11/17)
Μηνιαία συνάθροιση Απριλίου
(4/11/17)
Προεπισκόπηση Απριλίου μηνιαίας συνάθροισης
(4/18/17)
Μάιος Ενημέρωση μόνο για την ασφάλεια
(5/09/17)
Μηνιαία συνάθροιση Μαΐου
(5/09/17)
Σύνδεση λήψης
Windows 7 SP1 και Windows Server 2008 R2 SP1 4012212
6.1.7601.23689
4012215
6.1.7601.23689
4012218
6.1.7601.23689
4015546
Δεν περιέχει ενημέρωση κώδικα MS17-010
4015549
6.1.7601.23689
4015552
6.1.7601.23689
4019263
6.1.7601.23762
4019264
6.1.7601.23762
Ιστορικό ενημερώσεων Windows 7 SP1 και Windows Server 2008 R2 SP1
Windows 2012 4012214
6.2.9200.22099
4012217
6.2.9200.22099
4012220
6.2.9200.22099
4015548
Δεν περιέχει ενημέρωση κώδικα MS17-010
4015551
6.2.9200.22099
4015554
6.2.9200.22099
4019214
6.2.9200.22137
4019216
6.2.9200.22137
Ιστορικό ενημερώσεων του Windows Server 2012
Windows 8.1 και Windows Server 2012 R2 4012213
6.3.9600.18604
4012216
6.3.9600.18604
4012219
6.3.9600.18604
4015547 Δεν περιέχει ενημέρωση κώδικα MS17-010 4015550
6.3.9600.18604
4015553
6.3.9600.18619
4019213
6.3.9600.18655
4019215
6.3.9600.18655
Ιστορικό ενημερώσεων Windows 8.1 και Windows Server 2012 R2
Windows 10 Έκδοση 1507 4012606
10.0.10240.17319
4016637
10.0.10240.17319
- - 4015221
10.0.10240.17319
- - 4019474 10.0.10240.17394 Ιστορικό ενημερώσεων των Windows 10
Windows 10 Έκδοση 1511 4013198
10.0.10586.839
4016636
10.0.10586.839
- - 4015219
10.0.10586.839
- - 4019473
10.0.10586.916
Ιστορικό ενημερώσεων των Windows 10
Windows 10 έκδοση Windows Server 2016 4013429
10.0.14393.953
4016635
10.0.14393.953
- - 4015217
10.0.14393.953
- - 4019472
10.0.14393.1198
Ιστορικό ενημερώσεων Windows 10 και Windows Server 2016

 

Πίνακας 2 από 2: Συνεχίστηκε για τις ενημερώσεις Μαΐου και Ιουνίου 2017.

Εκδόσεις των Windows Μάιος Προεπισκόπηση μηνιαίας συνάθροισης
(5/16/17)
Ενημέρωση μόνο για την ασφάλεια Ιουνίου
(6/13/17)
Μηνιαία συνάθροιση Ιουνίου
(6/13/17)
Σύνδεση λήψης
Windows 7 και Server 2008 R2 4019265
6.1.7601.23762
4022722 4022168
6.1.7601.23762
Ιστορικό ενημερώσεων Windows 7 SP1 και Windows Server 2008 R2 SP1
Windows Server 2012 4019218
6.2.9200.22137
4022718 4022724
6.2.9200.22137
Ιστορικό ενημερώσεων του Windows Server 2012
Windows 8.1 και Windows Server 2012 R2 4019217
6.3.9600.18655
4022717 4022720
6.3.9600.18688
Ιστορικό ενημερώσεων Windows 8.1 και Windows Server 2012 R2
Windows 10 Έκδοση 1507 - - 4032695 Ιστορικό ενημερώσεων των Windows 10
Windows 10 Έκδοση 1511 - - 4032693 Ιστορικό ενημερώσεων των Windows 10
Windows 10 έκδοση 1607 και Windows Server 2016 - - 4022723
10.0.14393.1198
Ιστορικό ενημερώσεων Windows 10 και Windows Server 2016

 

Πίνακας 2: Άλλες εκδόσεις των Windows. Χρησιμοποιήστε την ενημέρωση KB 4012598 για την ενημέρωση ασφαλείας.

Εκδόσεις των Windows KB αριθμός και
ενημερωμένη έκδοση Srv.sys
Σύνδεση λήψης
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 x64 Edition Service Pack 2
Windows Server 2008 SP2 4012598
GDR:6.0.6002.19743
LDR:6.0.6002.24067
Windows Server 2008 για 32 bit Systems Service Pack 2

Windows Server 2008 για Service Pack 2 που βασίζεται σε x64

Windows Server 2008 για Itanium-based Systems Service Pack 2
Windows 8 4012598
6.2.9200.22099
Windows 8 x86, Windows 8 x64

 

Πίνακας 3: Πρόσθετες ενημερώσεις που περιέχουν την επιδιόρθωση.

Windows 8.1 και Windows Server 2012 R2

Ημερομηνία κυκλοφορίας Αριθμός KB Σελίδα υποστήριξης
21 Μαρτίου 2017 4012219 21 Μαρτίου 2017—KB4012218 (Προεπισκόπηση μηνιαίας συνάθροισης)
18 Απριλίου 2017 4015553 18 Απριλίου 2017—KB4015553 (Προεπισκόπηση μηνιαίας συνάθροισης)
16 Μαΐου 2017 4019217 16 Μαΐου 2017—KB4019217 (Προεπισκόπηση μηνιαίας συνάθροισης)
27 Ιουνίου 2017 4022720 27 Ιουνίου 2017—KB4022720 (Προεπισκόπηση μηνιαίας συνάθροισης)

Windows server 2012

Ημερομηνία κυκλοφορίας Αριθμός KB Σελίδα υποστήριξης
21 Μαρτίου 2017 4012220 21 Μαρτίου 2017—KB4012220 (Προεπισκόπηση μηνιαίας συνάθροισης)
18 Απριλίου 2017 4015554 18 Απριλίου 2017—KB4015554 (Προεπισκόπηση μηνιαίας συνάθροισης)
16 Μαΐου 2017 4019218 16 Μαΐου 2017—KB4019218 (Προεπισκόπηση μηνιαίας συνάθροισης)
27 Ιουνίου 2017 4022721 27 Ιουνίου 2017—KB4022721 (Προεπισκόπηση μηνιαίας συνάθροισης)

Windows 7 SP1 και Windows Server 2008 R2 SP1

Ημερομηνία κυκλοφορίας Αριθμός KB Σελίδα υποστήριξης
21 Μαρτίου 2017 4012218 21 Μαρτίου 2017—KB4012218 (Προεπισκόπηση μηνιαίας συνάθροισης)
18 Απριλίου 2017 4015552 18 Απριλίου 2017—KB4015552 (Προεπισκόπηση μηνιαίας συνάθροισης)
16 Μαΐου 2017 4019265 16 Μαΐου 2017—KB4019265 (Προεπισκόπηση μηνιαίας συνάθροισης)
27 Ιουνίου 2017 4022168 27 Ιουνίου 2017—KB4022168 (Προεπισκόπηση μηνιαίας συνάθροισης)

Μέθοδος 2: Έλεγχος κατά %systemroot%\system32\drivers\srv.sys έκδοση αρχείου

Χρησιμοποιήστε το παρακάτω γράφημα για να ελέγξετε την έκδοση αρχείου του %systemroot%\system32\drivers\srv.sys. Εάν η έκδοση αρχείου είναι ίση ή μεγαλύτερη από την έκδοση που παρατίθεται, είναι εγκατεστημένο το MS17-010.

Εκδόσεις των Windows Ελάχιστη ενημερωμένη έκδοση 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

Μέθοδος 3: Έλεγχος από WMI και Windows PowerShell

Χρησιμοποιήστε WMI και Windows PowerShell για να προσδιορίσετε εάν έχουν εγκατασταθεί επιδιορθώσεις ms17-010.

Εντολή WMI

Για να βρείτε έναν συγκεκριμένο αριθμό KB, ανοίξτε ένα αναβαθμισμένο παράθυρο γραμμής εντολών και, στη συνέχεια, εκτελέστε την ακόλουθη εντολή:


wmic qfe get hotfixid | find "KB1234567"

Σημειώσεις

  • Σε αυτή την εντολή, αντικαταστήστε <KB1234567> με τον πραγματικό αριθμό KB.

  • Χρησιμοποιήστε ένα χαρακτήρα εμπορικό "και" (&) για να αναζητήσετε πολλές ενημερώσεις. Για παράδειγμα, εκτελέστε την ακόλουθη εντολή:

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

Εντολές του PowerShell

Για να μεταβιβάσετε τον έλεγχο του τοπικού συστήματος, εκτελέστε το ακόλουθο cmdlet διαχείρισης του PowerShell:


 get-hotfix -id KB1234567

Σημειώσεις

  • Σε αυτή την εντολή, αντικαταστήστε <KB1234567> με τον πραγματικό αριθμό KB.

  • Χρησιμοποιήστε κόμμα ( , , ) για να αναζητήσετε πολλές ενημερώσεις. Για παράδειγμα, εκτελέστε την ακόλουθη εντολή:

    get-hotfix -id KB4012212,KB4012215,KB4015549

Για να ελέγξετε όλους τους υπολογιστές σε έναν τομέα υπηρεσίας καταλόγου Active Directory ή OU, εκτελέστε το ακόλουθο cmdlet διαχείρισης PowerShell σε έναν ελεγκτή τομέα:


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

Σημείωση Το τμήμα "OU=workstations,dc=contoso,dc=com" μπορεί να αλλάξει ώστε να οδηγεί στη ρίζα ενός διαμερίσματος καταλόγου τομέα Active Directory, όπως "dc=contoso,dc=com" για την αναζήτηση υπολογιστών σε ολόκληρο τον τομέα. Σε αυτή την εντολή, αντικαταστήστε <KB1234567> με τον πραγματικό αριθμό KB.

Τρόπος επίλυσης του "μη εφαρμόσιμου" σφάλματος εγκατάστασης

Εάν δεν είναι εγκατεστημένες οι προαπαιτούμενες επιδιορθώσεις στους υπολογιστές, ενδέχεται να λάβετε το ακόλουθο μήνυμα σφάλματος κατά την εγκατάσταση του MS17-010 στο Windows 8.1 ή Windows Server 2012 R2:

Σημείωση

Η ενημέρωση δεν ισχύει για τον υπολογιστή σας

Για να επιλύσετε αυτό το σφάλμα, ακολουθήστε τα παρακάτω βήματα:

  1. Βεβαιωθείτε ότι προσπαθείτε να εγκαταστήσετε τη σωστή ενημέρωση. Για να το κάνετε αυτό, ελέγξτε τον αριθμό KB στον Πίνακα 1 στη Μέθοδο 1. Συγκρίνετέ το με την έκδοση συστήματος, το επίπεδο service pack συστήματος και το επίπεδο bit του συστήματος (x64, IA64 ή x86).
     

  2. Ελέγξτε για εξαρτήσεις που λείπουν. Για Windows 8.1 και Windows Server 2012 R2, εγκαταστήστε τις εξαρτώμενες επιδιορθώσεις όπως απαιτείται σύμφωνα με τα ακόλουθα άρθρα:

    • KB 2919355: ενημέρωση Windows RT 8.1, Windows 8.1 και Windows Server 2012 R2: Απρίλιος 2014
    • KB 2919442: Ενημέρωση στοίβας συντήρησης Μαρτίου 2014 για Windows 8.1 και Windows Server 2012 R2
    • KB 3173424: Ενημέρωση στοίβας συντήρησης για Windows 8.1 και Windows Server 2012 R2: 12 Ιουλίου 2016
  3. Αν δεν μπορείτε να εγκαταστήσετε μια ενημέρωση συνάθροισης, δοκιμάστε μια διαφορετική έκδοση συνάθροισης. Ανατρέξτε στον Πίνακα 1 για τις διαθέσιμες ενημερώσεις.
     

Δέσμη ενεργειών του PowerShell

Η ακόλουθη δέσμη ενεργειών Windows PowerShell συγκρίνει την έκδοση Srv.sys στον τοπικό υπολογιστή με τις εκδόσεις που παρατίθενται στο γράφημα στη Μέθοδο 2.

Αποθηκεύστε αυτή τη δέσμη ενεργειών σε ένα αρχείο .ps1 και, στη συνέχεια, εκτελέστε τη δέσμη ενεργειών από το PowerShell. Αυτή η δέσμη ενεργειών ισχύει για τα Windows XP και Windows Server 2003 και νεότερες εκδόσεις. Απαιτείται Windows PowerShell 2.0 ή νεότερη έκδοση.
 


[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
    }
#

Παραπομπές

Οδηγίες πελατών για επιθέσεις WannaCrypt

Κέντρο προστασίας από λογισμικό κακόβουλης λειτουργίας

ιστολόγιο Κέντρο της Microsoft για προστασία από κακόβουλο λογισμικό

Ενημέρωση ασφαλείας MS17-010

Configuration Manager SQL Server ερωτήματα για την αναφορά συμμόρφωσης που σχετίζονται με το MS17-010

Αυτό το άρθρο αφορά:

 

  • Windows Server 2016
  • Windows 10 έκδοση 1607
  • Windows 10 Έκδοση 1511
  • Windows 10 Έκδοση 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