Înștiințare
Acest articol din baza de cunoștințe este oferit ca atare și nu înlocuiește datele principale care unt furnizate prin intermediul canalelor de actualizare normale. Informațiile principale cu date ulterioare acestor informații pot fi găsite în Ghidul pentru actualizări de securitate și în alte instrumente colaterale.
Rezumat
Vedeți produsele pentru care se aplică acest articol.
Actualizarea de securitate MS17-010 rezolvă mai multe vulnerabilităţi din Blocare mesaj server Windows (SMB) v1. Software-ul ransomware WannaCrypt exploatează una dintre vulnerabilităţile care face parte din actualizarea MS17-010. Computerele pe care nu s-a instalat MS17-010 sunt într-un mare pericol din cauza mai multor caracteristici ale programului malware. Acest articol oferă mai multe metode rapide de a detecta dacă este actualizat computerul.
Metoda 1: Verificaţi după numărul bazei de cunoştinţe instalate
Folosiți tabelul următor pentru a verifica dacă există actualizările listate(cu excepția celor marcate cu „Nu conține corecția MS17-010”). Dacă s-a instalat oricare dintre acestea, MS17-010 este instalat.
Tabelul 1 din 2: Windows 7 SP1 şi versiuni ulterioare. Următoarele baze de cunoștințe (KB) cumulate conțin remedierea (cu excepția din coloana „Securitate aprilie numai 4B”). Sub fiecare număr KB, se găsește numărul versiunii Srv.sys actualizate.
Versiuni de Windows |
Actualizarea legată de securitate din martie (14.03.2017) |
Cumul lunar martie (14.03.2017) |
Previzualizare martie pentru cumulul lunar (21.03.2017) |
Securitate aprilie Doar actualizare (11.04.2017) |
Cumul lunar aprilie (11.04.2017) |
Previzualizare aprilie pentru cumulul lunar (18.04.2017) |
Securitate mai, doar actualizare (09.05.2017) |
Cumul lunar mai (09.05.2017) |
Link de descărcare |
Windows 7 SP1 și Windows Server 2008 R2 SP1 |
4012212 6.1.7601.23689 |
4012215 6.1.7601.23689 |
4012218 6.1.7601.23689 |
4015546 Nu conţine corecţia MS17-010 |
4015549 6.1.7601.23689 |
4015552 6.1.7601.23689 |
4019263 6.1.7601.23762 |
4019264 6.1.7601.23762 |
Istoricul actualizărilor Windows 7 SP1 și Windows Server 2008 R2 SP1 |
Windows 2012 |
4012214 6.2.9200.22099 |
4012217 6.2.9200.22099 |
4012220 6.2.9200.22099 |
4015548 Nu conţine corecţia MS17-010 |
4015551 6.2.9200.22099 |
4015554 6.2.9200.22099 |
4019214 6.2.9200.22137 |
4019216 6.2.9200.22137 |
|
Windows 8.1 și Windows Server 2012 R2 |
4012213 6.3.9600.18604 |
4012216 6.3.9600.18604 |
4012219 6.3.9600.18604 |
4015547 Nu conține corecția MS17-010 |
4015550 6.3.9600.18604 |
4015553 6.3.9600.18619 |
4019213 6.3.9600.18655 |
4019215 6.3.9600.18655 |
Istoricul actualizărilor Windows 8.1 şi 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 |
|
Windows 10 Version 1511 |
4013198 10.0.10586.839 |
4016636 10.0.10586.839 |
- |
- |
4015219 10.0.10586.839 |
- |
- |
4019473 10.0.10586.916 |
|
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 |
Tabelul 2 din 2: Continuare pentru actualizările aferente lunilor mai și iunie
Versiuni de Windows |
Previzualizare mai pentru cumulul lunar (16.05.2017) |
Securitate iunie, doar actualizare (13.06.2017) |
Cumul lunar iunie (13.06.2017) |
Link de descărcare |
Windows 7 și Server 2008 R2 |
4019265 6.1.7601.23762
|
4022722 |
4022168 6.1.7601.23762 |
Istoricul actualizărilor Windows 7 SP1 și Windows Server 2008 R2 SP1 |
Windows Server 2012 |
4019218 6.2.9200.22137 |
4022718 |
4022724 6.2.9200.22137 |
|
Windows 8.1 și Windows Server 2012 R2 |
4019217 6.3.9600.18655 |
4022717 |
4022720 6.3.9600.18688 |
Istoricul actualizărilor Windows 8.1 şi Windows Server 2012 R2 |
Windows 10 Version 1507 |
- |
- |
4032695 |
|
Windows 10 Version 1511 |
- |
- |
4032693 |
|
Windows 10 Version1607 și Windows Server 2016 |
- |
- |
4022723 10.0.14393.1198 |
Tabelul 2: Alte versiuni de Windows. Utilizaţi KB 4012598 pentru actualizarea de securitate.
Versiuni de Windows |
Număr KB și versiune fișier Srv.sys actualizat |
Link de descărcare |
Windows Server 2003 SP2 |
4012598 5.2.3790.6021 |
|
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 pentru sistemele pe 32 de biţi Service Pack 2 Windows Server 2008 pentru sistemele pe 64 de biţi Service Pack 2 Windows Server 2008 pentru sistemele Itanium Service Pack 2 |
Windows 8 |
4012598 6.2.9200.22099 |
Tabelul 3: Alte actualizări care conțin remedierea.
Windows 8.1 și Windows Server 2012 R2
Data lansării |
Număr KB |
Pagină de asistență |
21 martie 2017 |
4012219 |
21 martie 2017 - KB4012218 (Previzualizare a cumulului lunar) |
18 aprilie 2017 |
4015553 |
18 aprilie 2017 - KB4015553 (Previzualizare a cumulului lunar) |
16 mai 2017 |
4019217 |
|
27 iunie 2017 |
4022720 |
27 iunie 2017 - KB4022720 (Previzualizare a cumulului lunar) |
Windows server 2012
Data lansării |
Număr KB |
Pagină de asistență |
21 martie 2017 |
4012220 |
21 martie 2017 - KB4012220 (Previzualizare a cumulului lunar) |
18 aprilie 2017 |
4015554 |
18 aprilie 2017 - KB4015554 (Previzualizare a cumulului lunar) |
16 mai 2017 |
4019218 |
|
27 iunie 2017 |
4022721 |
27 iunie 2017 - KB4022721 (Previzualizare a cumulului lunar) |
Windows 7 SP1 și Windows Server 2008 R2 SP1
Data lansării |
Număr KB |
Pagină de asistență |
21 martie 2017 |
4012218 |
21 martie 2017 - KB4012218 (Previzualizare a cumulului lunar) |
18 aprilie 2017 |
4015552 |
18 aprilie 2017 - KB4015552 (Previzualizare a cumulului lunar) |
16 mai 2017 |
4019265 |
|
27 iunie 2017 |
4022168 |
27 iunie 2017 - KB4022168 (Previzualizare a cumulului lunar) |
Metoda 2: Verificaţi după versiunea fişierului %systemroot%\system32\drivers\srv.sys
Utilizaţi tabelul următor pentru a verifica versiunea de fişier %systemroot%\system32\drivers\srv.sys. Dacă versiunea de fişier este egală sau mai mare ca versiunea listată, înseamnă că s-a instalat MS17-010.
Versiuni de Windows |
Versiune minimă fişier Srv.sys actualizat |
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 |
Metoda 3: Verificați după WMI și Windows PowerShell
Utilizați WMI și Windows PowerShell pentru a stabili dacă s-au instalat remedierile MS17-010.
Comandă WMI Pentru a găsi numărul KB specificat, deschideți o fereastră cu linie de comandă cu drepturi sporite, apoi executați comanda următoare:
wmic qfe get hotfixid | find "KB1234567"
Note
-
În această comandă, înlocuiţi <KB1234567> cu numărul KB efectiv.
-
Utilizaţi simbolul & pentru a căuta mai multe actualizări. De exemplu, executaţi comanda următoare:
wmic qfe get hotfixid | find "KB4012212" & wmic qfe get hotfixid | find "KB4012215" & wmic qfe get hotfixid | find "KB4015549"
Comenzi PowerShell
Pentru a căuta în sistemul local, executați următorul cmdlet PowerShell administrativ:
get-hotfix -id KB1234567
Note
-
În această comandă, înlocuiţi <KB1234567> cu numărul KB efectiv.
-
Utilizaţi virgula (,) pentru a căuta mai multe actualizări. De exemplu, executaţi comanda următoare:
get-hotfix -id KB4012212,KB4012215,KB4015549
Pentru a verifica toate computerele dintr-un domeniu Active Directory sau OU, executaţi următorul cmdlet PowerShell administrativ pe un controler de domeniu:
foreach ( $n in (get-adcomputer -searchbase ‘OU=workstations,dc=contoso,dc=com’ -filter * -property * | select name )) {get-hotfix -computername $n.name -id KB1234567}
NotăPartea „OU=workstations,dc=contoso,dc=com” poate fi schimbată pentru a se adresa rădăcinii unei partiții a directorului domeniului Active Directory, cum ar fi „dc=contoso,dc=com”, pentru a căuta computerele din întregul domeniu. În această comandă, înlocuiți <KB1234567> cu numărul KB efectiv.
Cum se rezolvă eroare de instalare „nu se aplică”
Dacă remedierile preliminare nu sunt instalate pe computere, este posibil să primiți mesajul de eroare următor când instalați MS17-010 pe Windows 8.1 sau Windows Server 2012 R2:
Actualizarea nu se aplică computerului dvs.
Pentru a soluţiona această eroare, urmaţi aceşti paşi:
-
Asiguraţi-vă că încercaţi să instalaţi actualizarea corectă. Pentru aceasta, verificaţi numărul KB în Tabelul 1 de la Metoda 1. Comparaţi-l cu versiunea sistemului dvs., cu nivelul pachetului service pack al sistemului şi cu nivelul de biţi al sistemului (x64, IA64 sau x86).
-
Verificaţi dacă lipsesc dependenţe. Pentru Windows 8.1 şi Windows Server 2012 R2, instalaţi corespunzător remedierile dependente, conform articolelor următoare:
-
Dacă nu reuşiţi să instalaţi actualizarea cumulului, încercaţi o altă versiune a cumulului. Consultaţi Tabelul 1 pentru actualizările disponibile.
Script PowerShell
Următorul script Windows PowerShell compară versiunea fișierului Srv.sys de pe computerul local cu toate versiunile listate în diagrama din Metoda 2.
Salvați scriptul într-un fișier .ps1, apoi executați din nou scriptul din PowerShell. Scriptul este aplicabil pentru Windows XP și Windows Server 2003 și versiuni ulterioare. Este necesar Windows PowerShell 2.0 sau o versiune ulterioară.
[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
}
#
Referințe
Îndrumări pentru clienţi privind atacurile WannaCrypt
Centrul de protecţie împotriva software-ului rău intenţionat
Blogul Centru Microsoft de protecţie împotriva software-ului rău intenţionat
Actualizarea de securitate MS17-010
Interogările Configuration Manager SQL Server pentru raportarea conformităţii legate de MS17-010
Acest articol este aplicabil pentru:
-
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