Примітка
Ця стаття з Бази даних надається "як є" та не може підмінювати дані заміни, що надаються через стандартні канали оновлення. Дані заміни, що випускаються після наступних даних, можна знайти в Керівництві з оновлення безпеки і інших допоміжних засобах.
Загальні відомості
Див. продукти, яких стосуються відомості з цієї статті.
Оновлення системи безпеки MS17-010 виправляє кілька вразливостей блоку серверних повідомлень Windows SMB (Windows Server Message Block) версії 1. Програма з вимогою викупу WannaCrypt використовує одну з уразливостей, що входить до оновлення MS17-010. Комп’ютери, на яких не інстальовано оновлення MS17-010, наражаються на підвищений ризик, оскільки ця зловмисна програма має кілька різновидів. У цій статті описано кілька способів, що допоможуть швидко визначити, чи оновлено комп’ютер.
Спосіб 1. Перевірка за номером статті в базі знань
Перевірте, чи інстальовано будь-яке з оновлень, перелічених у таблиці нижче(крім оновлень із позначкою "Не містить виправлення MS17-010"). Якщо будь-яке з цих оновлень інстальовано, MS17-010 також інстальовано.
Таблиця 1 із 2. Windows 7 SP1 і новіші версії. Наведені в таблиці зведені оновлення містять виправлення (крім оновлень у стовпці "Оновлення лише системи безпеки 4B у квітні"). Під кожним номером статті в базі знань зазначено номер версії оновленого файлу Srv.sys.
Версії Windows |
Оновлення лише системи безпеки в березні (14/03/17) |
Щомісячне зведене оновлення в березні (14.03.2017) |
Огляд щомісячного зведеного оновлення в березні (21.03.2017) |
Оновлення лише системи безпеки у квітні (11.04.2017) |
Щомісячне зведене оновлення у квітні (11.04.2017) |
Огляд щомісячного зведеного оновлення у квітні (18.04.2017) |
Оновлення лише системи безпеки в травні (09.05.2017) |
Щомісячне зведене оновлення в травні (09.05.2017) |
Посилання для завантаження |
В ОС Windows 7 з пакетом оновлень 1 (SP1) і Windows Server 2008 R2 з пакетом оновлень 1 (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 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 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 10 версія 1507 |
4012606 10.0.10240.17319 |
4016637 10.0.10240.17319 |
- |
- |
4015221 10.0.10240.17319 |
- |
- |
4019474 10.0.10240.17394 |
|
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 Server 2016 |
4013429 10.0.14393.953 |
4016635 10.0.14393.953 |
- |
- |
4015217 10.0.14393.953 |
- |
- |
4019472 10.0.14393.1198 |
Таблиця 2 із 2. Продовження для оновлень у травні та червні 2017 року.
Версії Windows |
Огляд щомісячного зведеного оновлення в травні (16.05.2017) |
Оновлення лише системи безпеки в червні (13.06.2017) |
Щомісячне зведене оновлення в червні (13.06.2017) |
Посилання для завантаження |
Windows 7 і Server 2008 R2 |
4019265 6.1.7601.23762
|
4022722 |
4022168 6.1.7601.23762 |
|
Windows Server 2012 |
4019218 6.2.9200.22137 |
4022718 |
4022724 6.2.9200.22137 |
|
Windows 8.1 та Windows Server 2012 R2 |
4019217 6.3.9600.18655 |
4022717 |
4022720 6.3.9600.18688 |
|
Windows 10 версія 1507 |
- |
- |
4032695 |
|
Windows 10 версія 1511 |
- |
- |
4032693 |
|
Windows 10 версія 1607 і Windows Server 2016 |
- |
- |
4022723 10.0.14393.1198 |
Таблиця 2. Інші версії Windows. Опис оновлення системи безпеки наведено в статті бази знань KB 4012598.
Версії Windows |
Номер статті бази знань і оновлена версія файлу Srv.sys |
Посилання для завантаження |
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 з пакетом оновлень 2 Windows Vista 64-розрядної версії з пакетом оновлень 2 |
Windows Server 2008 SP2 |
4012598 GDR:6.0.6002.19743 LDR:6.0.6002.24067 |
Windows Server 2008 для 32-розрядних систем із пакетом оновлень 2 Windows Server 2008 для 64-розрядних систем із пакетом оновлень 2 Windows Server 2008 для систем на основі Itanium із пакетом оновлень 2 |
Windows 8 |
4012598 6.2.9200.22099 |
Таблиця 3. Додаткові оновлення, що містять виправлення.
Windows 8.1 та Windows Server 2012 R2
Дата випуску |
Номер статті бази знань |
Сторінка підтримки |
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
Дата випуску |
Номер статті бази знань |
Сторінка підтримки |
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 з пакетом оновлень 1 (SP1) і Windows Server 2008 R2 з пакетом оновлень 1 (SP1)
Дата випуску |
Номер статті бази знань |
Сторінка підтримки |
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 Щоб знайти певний номер статті в базі знань, відкрийте командний рядок у режимі адміністратора та виконайте таку команду:
wmic qfe get hotfixid | find "KB1234567"
Примітки
-
У цій команді замініть <KB1234567> на потрібний номер оновлення в базі знань.
-
Щоб шукати кілька оновлень, використовуйте амперсанд (&). Наприклад, виконайте таку команду:
wmic qfe get hotfixid | find "KB4012212" & wmic qfe get hotfixid | find "KB4012215" & wmic qfe get hotfixid | find "KB4015549"
Команди PowerShell
Щоб шукати в локальній системі, запустіть такий адміністративний командлет PowerShell:
get-hotfix -id KB1234567
Примітки
-
У цій команді замініть <KB1234567> на потрібний номер оновлення в базі знань.
-
Щоб шукати кілька оновлень, використовуйте кому (,). Наприклад, виконайте таку команду:
get-hotfix -id KB4012212,KB4012215,KB4015549
Щоб перевірити всі комп’ютери в домені або підрозділі (OU) Active Directory, запустіть такий адміністративний командлет 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> на потрібний номер оновлення в базі знань.
Виправлення помилки інсталяції "Не застосовується"
Якщо на комп’ютерах не інстальовано обов’язкові виправлення, під час інсталяції MS17-010 у Windows 8.1 або Windows Server 2012 R2 може з’явитися таке повідомлення про помилку:
Це оновлення не призначено для вашого комп’ютера.
Щоб виправити цю помилку, виконайте наведені нижче дії.
-
Переконайтеся, що ви інсталюєте правильне оновлення. Для цього перевірте номер оновлення в базі знань, скориставшись таблицею 1, як описано в способі 1. Порівняйте його зі своєю версією системи, рівнем пакета оновлень системи та рівнем розрядності системи (x64, IA64 чи x86).
-
Перевірте, чи не бракує залежностей. Для Windows 8.1 і Windows Server 2012 R2 інсталюйте залежні виправлення, як описано в цих статтях:
-
Якщо не вдається інсталювати зведене оновлення, спробуйте його іншу версію. Доступні оновлення наведено в таблиці 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
Запити SQL Server у Configuration Manager для звітів про відповідність, пов’язаних із 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 з пакетом оновлень 2
-
Windows Vista
-
Windows Server 2003 з пакетом оновлень 2
-
Windows XP