Уведомление
Эта статья базы знаний Майкрософт представлена в исходном виде и не является заменой для более актуальных данных, предоставляемых по обычным каналам обновления. Актуальные данные, датированные более поздним числом, чем указанные здесь данные, приведены в Руководстве по обновлению системы безопасности и других вспомогательных материалах.
Аннотация
См. продукты, к которым относятся сведения из данной статьи.
Обновление для системы безопасности MS17-010 устраняет несколько уязвимостей в Windows Server Message Block (SMB) версии 1. Одну из них использует программа-шантажист WannaCrypt. Без обновления MS17-010 компьютеры подвергаются повышенному риску со стороны разнообразных вредоносных программ. В этой статье описано несколько быстрых способов, позволяющих определить наличие обновления на компьютере.
Способ 1. Проверка по номеру базы знаний
Проверьте наличие обновлений, указанных в приведенной ниже таблице (кроме помеченных как «Не содержит исправление MS17-010»). Если любое из них установлено, значит установлено и обновление MS17-010.
Таблица 1 из 2: Windows 7 с пакетом обновления 1 (SP1) или более поздней версии. Указанное исправление содержат следующие накопительные пакеты обновления из базы знаний (кроме столбца «Только безопасность за апрель, 4B»). Под каждым номером базы знаний указан номер версии обновленного Srv.sys.
Версии Windows |
Только обновление безопасности за март (14.03.17) |
Ежемесячный накопительный пакет за март (14.03.2017) |
Предварительная версия ежемесячного накопительного пакета за март (21.03.17) |
Только обновление безопасности за апрель (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 и Windows 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 с пакетом обновления 2 (SP2) |
4012598 5.2.3790.6021 |
Windows Server 2003 с пакетом обновления 2 (SP2) x64 Windows Server 2003 с пакетом обновления 2 (SP2) x86 |
Windows XP |
4012598 5.1.2600.7208 |
Windows XP с пакетом обновления 2 (SP2) x64 Windows XP с пакетом обновления 3 (SP3) x86 Windows XP Embedded с пакетом обновления 3 (SP3) x86 |
Windows Vista с пакетом обновления 2 (SP2) |
4012598 GDR:6.0.6002.19743 LDR:6.0.6002.24067 |
Windows Vista с пакетом обновления 2 (SP2) Windows Vista с пакетом обновления 2 (SP2) x64 |
Windows Server 2008 с пакетом обновления 2 (SP2) |
4012598 GDR:6.0.6002.19743 LDR:6.0.6002.24067 |
Windows Server 2008 для 32-разрядных систем с пакетом обновления 2 (SP2) Windows Server 2008 для 64-разрядных (x64) систем с пакетом обновления 2 (SP2) Windows Server 2008 для систем Itanium с пакетом обновления 2 (SP2) |
Windows 8 |
4012598 6.2.9200.22099 |
Windows 8 x86, Windows 8 x64 |
Таблица 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 с пакетом обновления 2 (SP2) |
5.2.3790.6021 |
Windows Vista Windows Server 2008 с пакетом обновления 2 (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
Чтобы проверить все компьютеры в домене 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
Центр Майкрософт по защите от вредоносных программ
Блог Центра Майкрософт по защите от вредоносных программ
Обновление для системы безопасности 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 с пакетом обновления 2 (SP2)
-
Windows Vista
-
Windows Server 2003 с пакетом обновления 2 (SP2)
-
Windows XP