Thông báo
Bài viết Cơ sở kiến thức này được cung cấp nguyên trạng và không thay thế dữ liệu cũ được cung cấp thông qua các kênh cập nhật thông thường. Bạn có thể tìm thấy thông tin cũ có ngày đăng sau dữ liệu sau trong Hướng dẫn cập nhật bảo mật và các công cụ phụ khác.
Tóm tắt
Xem sản phẩm có áp dụng bài viết này.
Bản cập nhật bảo mật MS17-010 giải quyết nhiều lỗ hổng bảo mật trong Chặn thông báo Windows Server (SMB) v1. Phần mềm tống tiền WannaCrypt đang khai thác một trong những lỗ hổng bảo mật có trong bản cập nhật MS17-010. Những máy tính chưa cài đặt MS17-010 sẽ có nguy cơ cao do một số biến thể của phần mềm độc hại. Bài viết này cung cấp một số phương pháp nhanh chóng để tìm hiểu liệu máy tính đã được cập nhật hay chưa.
Phương pháp 1: Kiểm tra theo số Cơ sở kiến thức đã cài đặt
Sử dụng bảng sau đây để kiểm tra bất kỳ bản cập nhật được liệt kê nào (trừ bản cập nhật được đánh dấu là "Không chứa bản vá MS17-010"). Nếu đã cài đặt bất kỳ bản cập nhật nào trong số này thì MS17-010 được cài đặt.
Bảng 1/2: Windows 7 SP1 trở lên. KB bản cập nhật sau đây chứa bản sửa lỗi (trừ trong cột "Chỉ bảo mật tháng 4 4B"). Bên dưới từng số KB là số phiên bản Srv.sys đã cập nhật.
Phiên bản Windows |
Cập nhật chỉ liên quan đến Bảo mật Tháng 3 (14/3/2017) |
Bản cập nhật hàng tháng tháng 3 |
Xem trước bản cập nhật hàng tháng tháng 3 |
Bảo mật tháng 4 |
Bản cập nhật hàng tháng tháng 4 |
Bản xem trước bản cập nhật hàng tháng tháng 4 |
Chỉ bản cập nhật cbảo mật tháng 5 |
Bản cập nhật hàng tháng tháng 5 |
Liên kết tải xuống |
Windows 7 SP1 và Windows Server 2008 R2 SP1 |
4012212 |
4012215 |
4012218 |
4015546 |
4015549 |
4015552 |
4019263 |
4019264 |
|
Windows 2012 |
4012214 |
4012217 |
4012220 |
4015548 |
4015551 |
4015554 |
4019214 |
4019216 |
|
Windows 8.1 và Windows Server 2012 R2 |
4012213 |
4012216 |
4012219 |
4015547 Không chứa bản vá MS17-010 |
4015550 |
4015553 |
4019213 |
4019215 |
|
Windows 10 Phiên bản 1507 |
4012606 |
4016637 |
- |
- |
4015221 |
- |
- |
4019474 10.0.10240.17394 |
|
Windows 10 Phiên bản 1511 |
4013198 |
4016636 |
- |
- |
4015219 |
- |
- |
4019473 |
|
Phiên bản Windows 10 Windows Server 2016 |
4013429 |
4016635 |
- |
- |
4015217 |
- |
- |
4019472 |
Bảng 2/2: Tiếp tục với bản cập nhật tháng 5 và tháng 6 năm 2017.
Phiên bản Windows |
Xem trước bản cập nhật hàng tháng tháng 5 (16/05/2017) |
Chỉ bản cập nhật bảo mật tháng 6 (13/06/2017) |
Bản cập nhật hàng tháng tháng 6 (13/06/2017) |
Liên kết tải xuống |
Windows 7 và Server 2008 R2 |
4019265
|
4022722 |
4022168 |
|
Windows Server 2012 |
4019218 |
4022718 |
4022724 |
|
Windows 8.1 và Windows Server 2012 R2 |
4019217 |
4022717 |
4022720 |
|
Windows 10 Phiên bản 1507 |
- |
- |
4032695 |
|
Windows 10 Phiên bản 1511 |
- |
- |
4032693 |
|
Windows 10 Phiên bản 1607 và Windows Server 2016 |
- |
- |
4022723 |
Bảng 2: Các phiên bản Windows khác. Sử dụng KB 4012598 cho bản cập nhật bảo mật.
Phiên bản Windows |
Số KB và |
Liên kết tải xuống |
Windows Server 2003 SP2 |
4012598 |
|
Windows XP |
4012598 |
Windows XP SP2 x64
|
Windows Vista SP2 |
4012598 |
Windows Vista Gói dịch vụ 2
|
Windows Server 2008 SP2 |
4012598 |
Windows Server 2008 dành cho Hệ thống 32 bit Gói dịch vụ 2
|
Windows 8 |
4012598 |
Bảng 3: Bản cập nhật bổ sung chứa bản sửa lỗi.
Windows 8.1 và Windows Server 2012 R2
Ngày phát hành |
Số KB |
Trang hỗ trợ |
Ngày 21 tháng 3 năm 2017 |
4012219 |
Ngày 21 tháng 3 năm 2017 - KB4012218 (Bản xem trước của Tổng kết Hàng tháng) |
Ngày 18 tháng 4 năm 2017 |
4015553 |
Ngày 18 tháng 4 năm 2017---KB4015553 (Bản xem trước Tổng kết Hàng tháng) |
Ngày 16 tháng 5 năm 2017 |
4019217 |
Ngày 16 tháng 5 năm 2017---KB4019217 (Bản xem trước của Tổng kết Hàng tháng) |
Ngày 27 tháng 6 năm 2017 |
4022720 |
Ngày 27 tháng 6 năm 2017--- KB4022720 (Bản xem trước của Tổng kết Hàng tháng) |
Windows server 2012
Ngày phát hành |
Số KB |
Trang hỗ trợ |
Ngày 21 tháng 3 năm 2017 |
4012220 |
Ngày 21 tháng 3 năm 2017--- KB4012220 (Bản xem trước Tổng kết Hàng tháng) |
Ngày 18 tháng 4 năm 2017 |
4015554 |
Ngày 18 tháng 4 năm 2017--- KB4015554 (Bản xem trước của Tổng kết Hàng tháng) |
Ngày 16 tháng 5 năm 2017 |
4019218 |
Ngày 16 tháng 5 năm 2017--- KB4019218 (Bản xem trước Tổng kết Hàng tháng) |
Ngày 27 tháng 6 năm 2017 |
4022721 |
Ngày 27 tháng 6 năm 2017--- KB4022721 (Bản xem trước của Tổng kết Hàng tháng) |
Windows 7 SP1 và Windows Server 2008 R2 SP1
Ngày phát hành |
Số KB |
Trang hỗ trợ |
Ngày 21 tháng 3 năm 2017 |
4012218 |
Ngày 21 tháng 3 năm 2017 - KB4012218 (Bản xem trước của Tổng kết Hàng tháng) |
Ngày 18 tháng 4 năm 2017 |
4015552 |
Ngày 18 tháng 4 năm 2017--- KB4015552 (Bản xem trước của Tổng kết Hàng tháng) |
Ngày 16 tháng 5 năm 2017 |
4019265 |
Ngày 16 tháng 5 năm 2017--- KB4019265 (Bản xem trước Tổng kết Hàng tháng) |
Ngày 27 tháng 6 năm 2017 |
4022168 |
Ngày 27 tháng 6 năm 2017--- KB4022168 (Bản xem trước của Tổng kết Hàng tháng) |
Phương pháp 2: Kiểm tra theo phiên bản tệp %systemroot%\system32\drivers\srv.sys
Sử dụng biểu đồ sau đây để kiểm tra phiên bản tệp của %systemroot%\system32\drivers\srv.sys. Nếu phiên bản tệp bằng hoặc lớn hơn phiên bản được liệt kê thì MS17-010 đã được cài đặt.
Phiên bản Windows |
Phiên bản hệ thống dịch vụ đã cập nhật tối thiểu |
Windows XP |
5.1.2600.7208 |
Windows Server 2003 SP2 |
5.2.3790.6021 |
Windows Vista |
GDR:6.0.6002.19743, LDR:6.0.6002.24067 |
Windows 7 |
6.1.7601.23689 |
Windows 8 |
6.2.9200.22099 |
Windows 8.1 |
6.3.9600.18604 |
Windows 10 TH1 v1507 |
10.0.10240.17319 |
Windows 10 TH2 v1511 |
10.0.10586.839 |
Windows 10 RS1 v1607 |
10.0.14393.953 |
Phương pháp 3: Kiểm tra theo WMI và Windows PowerShell
Sử dụng WMI và Windows PowerShell để xác định xem bản sửa lỗi MS17-010 đã được cài đặt hay chưa.
Lệnh WMI
Để tìm số KB được chỉ định, hãy mở cửa sổ Nhắc lệnh nâng cao rồi chạy lệnh sau đây:
wmic qfe get hotfixid | find "KB1234567"
Lưu ý́
-
Trong lệnh này, thay thế <KB1234567> bằng số KB thực tế.
-
Sử dụng ký tự và (&) để tìm kiếm nhiều bản cập nhật. Ví dụ: chạy lệnh sau đây:
wmic qfe get hotfixid | find "KB4012212" & wmic qfe get hotfixid | find "KB4012215" & wmic qfe get hotfixid | find "KB4015549"
Lệnh PowerShell
Để kiểm tra trong hệ thống cục bộ, hãy chạy cmdlet PowerShell quản trị sau đây:
get-hotfix -id KB1234567
Lưu ý́
-
Trong lệnh này, thay thế <KB1234567> bằng số KB thực tế.
-
Sử dụng dấu phẩy ( , ) để tìm kiếm nhiều bản cập nhật. Ví dụ: chạy lệnh sau đây:
get-hotfix -id KB4012212,KB4012215,KB4015549
Để kiểm tra tất cả máy tính trong một miền Active Directory hoặc OU, hãy chạy cmdlet PowerShell quản trị sau đây trên trình điều khiển miền:
foreach ( $n in (get-adcomputer -searchbase ‘OU=workstations,dc=contoso,dc=com’ -filter * -property * | select name )) {get-hotfix -computername $n.name -id KB1234567}
Lưu ý:Có thể thay đổi phần "OU=workstations,dc=contoso,dc=com" để trỏ tới gốc của phân vÙng thư mục miền Active Directory, chẳng hạn như "dc=contoso,dc=com" để tìm kiếm máy tính trong toàn bộ miền. Trong lệnh này, thay thế <KB1234567> bằng số KB thực tế.
Cách giải quyết lỗi cài đặt “không áp dụng”
Nếu các bản sửa lỗi cần có trước tiên chưa được cài trên máy tính thì bạn có thể nhận được thông báo lỗi sau khi cài đặt MS17-010 trên Windows 8.1 hoặc Windows Server 2012 R2:
Bản cập nhật này không áp dụng cho máy tính của bạn
Để giải quyết lỗi này, hãy làm theo các bước sau:
-
Đảm bảo rằng bạn đang cố gắng cài đặt bản cập nhật đúng. Để thực hiện việc này, hãy xem số KB trong Bảng 1 trong Phương pháp 1. So sánh nó với phiên bản hệ thống, mức gói dịch vụ hệ thống, và cấp độ bit hệ thống (x64, IA64, hoặc x86).
-
Kiểm tra các phần phụ thuộc bị thiếu. Đối với Windows 8.1 và Windows Server 2012 R2, cài đặt các bản sửa lỗi phụ thuộc như được yêu cầu theo bài viết sau đây:
-
KB 2919355: Bản cập nhật Windows RT 8.1, Windows 8.1 và Windows Server 2012 R2: Tháng 4 năm 2014
-
KB 2919442: Bản cập nhật xếp chồng dịch vụ tháng 3 năm 2014 dành cho Windows 8.1 và Windows Server 2012 R2
-
KB 3173424: Bản cập nhật xếp chống dịch vụ cho Windows 8.1 và Windows Server 2012 R2: Ngày 12 tháng 7 năm 2016
-
-
Nếu bạn không thể cài đặt bản cập nhật, hãy thử phiên bản cập nhật khác. Xem Bảng 1 để biết bản cập nhật có sẵn.
Tập lệnh PowerShell
Tập lệnh Windows PowerShell sau đây sẽ so sánh phiên bản Srv.sys (hệ thống dịch vụ) trên máy tính cục bộ với các phiên bản được liệt kê trong biểu đồ trong Phương pháp 2.
Hãy lưu tập lệnh này vào tệp .ps1, sau đó chạy tập lệnh từ PowerShell. Tập lệnh này áp dụng cho Windows XP và Windows Server 2003 cÙng các phiên bản về sau. Tập lệnh yêu cầu Widows PowerShell 2.0 hoặc phiên bản mới hơn.
[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
}
#
Tham khảo
Hướng dẫn dành cho khách hàng về các cuộc tấn công WannaCrypt
Trung tâm phòng chống phần mềm độc hại Microsoft
Blog Trung tâm phòng chống phần mềm độc hại
Truy vấn Trình quản lý cấu hình SQL Server cho báo cáo tuân thủ liên quan đến MS17-010
Bài viết này áp dụng cho:
-
Windows Server 2016
-
Windows 10 Phiên bản 1607
-
Windows 10 Phiên bản 1511
-
Windows 10 Phiên bản 1507
-
Windows Server 2012 R2
-
Windows 8.1
-
Windows Server 2012
-
Windows 8
-
Windows Server 2008 R2
-
Windows 7
-
Windows Server 2008 Gói Dịch vụ 2
-
Windows Vista
-
Windows Server 2003 Gói Dịch vụ 2
-
Windows XP