Como verificar se a MS17-010 está instalada


Aviso


Este artigo da Base de Conhecimento é fornecido no estado em que se encontra e não substitui os dados fornecidos nos canais de atualização normais. Informações de substituição cujas datas sejam posteriores aos dados a seguir podem ser encontradas no Guia de Atualizações de Segurança e em outras ferramentas de apoio.

Resumo


 
Veja os produtos aos quais este artigo se aplica.
 
A atualização de segurança MS17-010 resolve várias vulnerabilidades no Windows Server Message Block (SMB) v1. O ransomware WannaCrypt está explorando uma das vulnerabilidades que faz parte da atualização MS17-010. Os computadores que não têm a MS17-010 instalada correm altos riscos devido às diversas variações do malware. Este artigo fornece vários métodos rápidos para detectar se o computador está atualizado.
 
 

Método 1: Verificação pelo número da Base de Dados de Conhecimento instalada

Use a tabela a seguir para verificar a existência de qualquer uma das atualizações listadas (exceto aquelas as marcadas como "Não contém o patch MS17-010"). Se qualquer uma delas estiver instalada, a MS17-010 está instalada.

Tabela 1 de 2: Windows 7 SP1 e versões posteriores. As seguintes KBs de pacote cumulativo contêm a correção (exceto na coluna "Abril - Apenas segurança 4B"). Abaixo de cada número de KB, encontra-se o número da versão de Srv.sys atualizado.

Versões do Windows

Atualização apenas segurança de março (14/03/17)

Pacote cumulativo mensal de março
(14/03/2017)

Prévia de março do pacote cumulativo mensal
(21/03/17)

Atualização Apenas
segurança de abril
(11/04/17)

Pacote cumulativo mensal de abril
(11/04/17)

Prévia de abril do pacote cumulativo mensal
(18/04/17)

Atualização Apenas segurança de maio
(09/05/2017)

Pacote cumulativo mensal de maio
(09/05/2017)

Link de download

Windows 7 SP1 e Windows Server 2008 R2 SP1

4012212
6.1.7601.23689

4012215
6.1.7601.23689

4012218
6.1.7601.23689

4015546
Não contém o patch MS17-010

4015549
6.1.7601.23689

4015552
6.1.7601.23689

4019263
6.1.7601.23762

4019264
6.1.7601.23762

https://support.microsoft.com/pt-br/help/4009469

Windows 2012

4012214
6.2.9200.22099

4012217
6.2.9200.22099

4012220
6.2.9200.22099

4015548
Não contém o patch MS17-010

4015551
6.2.9200.22099

4015554
6.2.9200.22099

4019214
6.2.9200.22137

4019216
6.2.9200.22137

https://support.microsoft.com/pt-br/help/4009471

Windows 8.1 e Windows Server 2012 R2

4012213
6.3.9600.18604

4012216
6.3.9600.18604

4012219
6.3.9600.18604

4015547 Não contém o patch MS17-010

4015550
6.3.9600.18604

4015553
6.3.9600.18619

4019213
6.3.9600.18655

4019215
6.3.9600.18655

https://support.microsoft.com/pt-br/help/4009470

Windows 10 versão 1507

4012606
10.0.10240.17319

4016637
10.0.10240.17319

-

-

4015221
10.0.10240.17319

-

-

4019474 10.0.10240.17394

https://support.microsoft.com/pt-br/help/4000823

Windows 10 versão 1511  

4013198
10.0.10586.839

4016636
10.0.10586.839

-

-

4015219
10.0.10586.839

-

-

4019473
10.0.10586.916

https://support.microsoft.com/pt-br/help/4000824

Windows 10 Versão e Windows Server 2016

4013429
10.0.14393.953

4016635
10.0.14393.953

-

-

4015217
10.0.14393.953

-

-

4019472
10.0.14393.1198

https://support.microsoft.com/pt-br/help/4000825

 

Tabela 2 de 2: Continuação para as atualizações de maio e junho de 2017.

Versões do Windows

Prévia de maio do pacote cumulativo mensal

(16/05/2017)

Atualização Apenas segurança de junho

(13/06/2017)

Pacote cumulativo mensal de junho

(13/06/2017)

Link de download

Windows 7 e Server 2008 R2

4019265
6.1.7601.23762

 

4022722

4022168
6.1.7601.23762

https://support.microsoft.com/pt-br/help/4009469

Windows Server 2012

4019218
6.2.9200.22137

4022718

4022724
6.2.9200.22137

https://support.microsoft.com/pt-br/help/4009471

Windows 8.1 e Windows Server 2012 R2

4019217
6.3.9600.18655

4022717

4022720
6.3.9600.18688

https://support.microsoft.com/pt-br/help/4009470

Windows 10 versão 1507

-

-

4032695

https://support.microsoft.com/pt-br/help/4000823

Windows 10 versão 1511

-

-

4032693

https://support.microsoft.com/pt-br/help/4000824

Windows 10 Versão 1607 e Windows Server 2016

-

-

4022723
10.0.14393.1198

https://support.microsoft.com/pt-br/help/4000825

 

Tabela 2: Outras versões do Windows. Usa a KB 4012598 para a atualização de segurança.

Versões do Windows

Número da base de dados de conhecimento e
versão de Srv.sys atualizada

Link de download

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 Service Pack 2 para sistemas de 32 bits

Windows Server 2008 Service Pack 2 para sistemas com base em x64

Windows Server 2008 Service Pack 2 para sistemas baseados em Itanium

Windows 8

4012598
6.2.9200.22099

Windows 8 x86, Windows 8 x64

 

Tabela 3: Atualizações adicionais que contêm a correção.

Windows 8.1 e Windows Server 2012 R2

Data de lançamento

Número da KB

Página de suporte

terça-feira, 21 de março de 2017

4012219

21 de março de 2017—KB4012218 (Prévia do pacote cumulativo mensal)

terça-feira, 18 de abril de 2017

4015553

18 de abril de 2017—KB4015553 (Prévia do pacote cumulativo mensal)

terça-feira, 16 de maio de 2017

4019217

16 de maio de 2017—KB4019217 (Prévia do pacote cumulativo mensal)

terça-feira, 27 de junho de 2017 4022720 27 de junho de 2017 — KB4022720 (Prévia do Pacote cumulativo mensal)
 
Windows Server 2012

Data de lançamento

Número da KB

Página de suporte

terça-feira, 21 de março de 2017

4012220

21 de março de 2017—KB4012220 (Prévia do pacote cumulativo mensal)

terça-feira, 18 de abril de 2017

4015554

18 de abril de 2017—KB4015554 (Prévia do pacote cumulativo mensal)

terça-feira, 16 de maio de 2017

4019218

16 de maio de 2017—KB4019218 (Prévia do pacote cumulativo mensal)

terça-feira, 27 de junho de 2017 4022721 27 de junho de 2017 — KB4022721 (Prévia do Pacote cumulativo mensal)
 
Windows 7 SP1 e Windows Server 2008 R2 SP1

Data de lançamento

Número da KB

Página de suporte

terça-feira, 21 de março de 2017

4012218

21 de março de 2017—KB4012218 (Prévia do pacote cumulativo mensal)

terça-feira, 18 de abril de 2017

4015552

18 de abril de 2017—KB4015552 (Prévia do pacote cumulativo mensal)

terça-feira, 16 de maio de 2017

4019265

16 de maio de 2017—KB4019265 (Prévia do pacote cumulativo mensal)

terça-feira, 27 de junho de 2017 4022168 27 de junho de 2017 — KB4022168 (Prévia do Pacote cumulativo mensal)


Método 2: Verificação pela versão do arquivo %systemroot%\system32\drivers\srv.sys

Use o seguinte gráfico para verificar a versão do arquivo de %systemroot%\system32\drivers\srv.sys. Se a versão do arquivo for igual a ou maior que a versão listada, a MS17-010 está instalada.

Versões do Windows

Versão mínima de Srv.sys atualizada

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


Método 3: Verificação pela WMI e pelo Windows PowerShell

Use a WMI e o Windows PowerShell para determinar se as correções da MS17-010 foram instaladas.

Comando da WMI

Para encontrar o número da KB especificado, abra a janela do prompt de comandos com privilégios elevados e execute o seguinte comando:

wmic qfe get hotfixid | find "KB1234567"

Observações

  • Neste comando, substitua <KB1234567> pelo número da KB atual.
  • Use um caractere de E comercial (&) para procurar várias atualizações. Por exemplo, execute o comando a seguir:

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

Comandos do PowerShell

Para verificar no sistema local, execute o seguinte cmdlet administrativo do PowerShell:

 get-hotfix -id KB1234567

Observações

  • Neste comando, substitua <KB1234567> pelo número da KB atual.
  • Use uma vírgula ( , ) para procurar várias atualizações. Por exemplo, execute o comando a seguir:

    get-hotfix -id KB4012212,KB4012215,KB4015549


Para verificar todos os computadores em um domínio do Active Directory ou em uma OU, execute o seguinte cmdlet do Windows PowerShell administrativo em um controlador de domínio:

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


Observação A parte "OU=workstations,dc=contoso,dc=com"pode ser alterada para apontar para a raiz de uma partição de diretório de domínio do Active Directory, como "dc=contoso,dc=com"para pesquisar computadores no domínio inteiro. Neste comando, substitua <KB1234567> pelo número da KB atual.

Como resolver o erro de instalação "não aplicável"


Se correções de pré-requisitos não estiverem instaladas nos computadores, você poderá receber a seguinte mensagem de erro quando instalar a MS17-010 no Windows 8.1 ou no Windows Server R2 de 2012:
A atualização não é aplicável ao seu computador
Para resolver esse erro, siga estas etapas:
 
  1. Verifique se você está tentando instalar a atualização correta. Para fazer isso, verifique o número da KB na Tabela 1 do Método 1. Compare-a com a versão do sistema, o nível do service pack do sistema e o nível de bits do sistema (x64, IA64 ou x86).
     
  2. Verifique se há dependências faltando. Para o Windows 8.1 e o Windows Server R2 2012, instale correções dependentes conforme necessário, de acordo com os seguintes artigos:
     
    • KB 2919355: Atualização do Windows RT 8.1, Windows 8.1 e Windows Server 2012 R2: Abril de 2014
    • KB 2919442: Março de 2014 - Atualização da pilha de manutenção para Windows 8.1 e Windows Server 2012 R2
    • KB 3173424: Atualização da pilha de manutenção para Windows 8.1 e Windows Server 2012 R2: 12 de julho de 2016
  3. Se você não conseguir instalar uma atualização de pacote cumulativo, tente uma versão de pacote cumulativo diferente. Consulte a Tabela 1 para conhecer as atualizações disponíveis.
     

Script do PowerShell


O seguinte script do Windows PowerShell compara a versão de Srv.sys no computador local com as versões que estão listadas no gráfico do Método 2.

Salve esse script em um arquivo .ps1 e, em seguida, execute o script no PowerShell. Esse script se aplica ao Windows XP e ao Windows Server 2003 e versões posteriores. Ele requer o Windows PowerShell 2.0 ou uma versão posterior.
 
[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 CyanWrite-Host "`nExpected Version of srv.sys: $($expectedVersion.ToString())" -ForegroundColor CyanWrite-Host "`nActual Version of srv.sys: $($fileVersion.ToString())" -ForegroundColor CyanIf ($($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    }#

Este artigo aplica-se a:


 

  • Windows Server 2016
  • Windows 10 versão 1607
  • Windows 10 versão 1511
  • Windows 10 versão 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