Resumo

A Spectre é uma nova classe de vulnerabilidades de hardware que envolve canais laterais de execução especulativa que podem ser usados  para divulgar informações sobre o programa que está sendo atacado. Para obter mais informações, consulte este artigo do Blog da Equipe do Visual C++ e o comunicado de segurança 180002.

Se você é um desenvolvedor cujo código opera em dados que ultrapassam um limite de confiança, deve considerar instalar essas atualizações e recompilar o seu código com a opção /Qspectre habilitada e depois vinculá-lo às bibliotecas fornecidas mitigadas para a Spectre. /Qspectre e as bibliotecas fornecem assistência de mitigação para a Spectre Variante 1 - CVE-2017-5753.

Como obter esta atualização

Atualização do conjunto de ferramentas

Para todas as arquiteturas

VC14-KB4338871.exe

 

Bibliotecas VC++ mitigadas para a Spectre

Para todos os sistemas com base em x86 compatíveis

VS2015U3_vcpp_spectre_libs_x86.exe

Para todos os sistemas com base em x64 compatíveis

VS2015U3_vcpp_spectre_libs_x64.exe

Para todos os sistemas baseados em ARM com suporte

VS2015U3_vcpp_spectre_libs_arm.exe

 

Pré-requisitos

Para aplicar esta atualização, você deve ter a Atualização 3 do Visual Studio 2015 instalada.

Informações sobre reinicialização

Talvez seja necessário reiniciar o computador após aplicar essa atualização.

Informações sobre substituição

Esta atualização não substitui nenhuma outra lançada anteriormente.

Mais informações sobre a atualização

Ao instalar a atualização do conjunto de ferramentas, você pode habilitar /Qspectre manualmente a partir das opções da linha de comando C/C ++.

Opções de linha de comando

Você também deve instalar as bibliotecas VC++ mitigadas para a Spectre (uma atualização por arquitetura) e, em seguida, vincular-se manualmente a elas.

Vincular manualmente

Os caminhos são os seguintes:

x86: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\spectre

x64: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\spectre\amd64

ARM: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\lib\spectre\arm

Estamos fornecendo apenas suporte para vinculação estática e implantação no local do aplicativo . O conteúdo do Visual C++ 2015 Runtime Libraries Redistributable não foi modificado. Implantação no local do aplicativo significa que você vincula às novas bibliotecas Spectre usando a opção Multithreaded DLL (/MD ou /MDd) e, em seguida, ao implantar o novo programa, você inclui os tempos de execução mitigados no mesmo diretório que o arquivo .exe que os carrega. A versão implantada centralmente do tempo de execução (em C:\Windows\System32 or C:\Windows\SysWOW64) é a versão não mitigada. Se o arquivo executável não estiver no mesmo diretório, ele selecionará a versão implantada centralmente do tempo de execução.

Para facilidade de uso, também estamos fornecendo cópias da maioria das bibliotecas nos diretórios da biblioteca Spectre. No entanto, elas não são todas mitigadas para a Spectre. A tabela a seguir especifica quais bibliotecas são mitigadas. Observe também que os arquivos que possuem mitigações para a Spectre devem ser consistentes em todas as arquiteturas, caso a tecnologia for compatível com essa arquitetura.

  • binmode.obj

  • chkstk.obj

  • commode.obj

  • comsupp.lib

  • comsuppw.lib

  • concrt.lib

  • delayimp.lib

  • invalidcontinue.obj

  • iso_stdio_wide_specifiers.lib

  • legacy_stdio_definitions.lib

  • legacy_stdio_wide_specifiers.lib

  • libcmt.lib

  • libconcrt.lib

  • libconcrt1.lib

  • libcpmt.lib

  • libcpmt1.lib

  • libvcruntime.lib

  • loosefpmath.obj

  • msvcmrt.lib

  • msvcprt.lib

  • msvcrt.lib

  • newmode.obj

  • noarg.obj

  • noenv.obj

  • notelemetry.obj

  • nothrownew.obj

  • oldnames.lib

  • ptrustm.lib

  • setargv.obj

  • threadlocale.obj

  • vcamp.lib

  • vccorlib.lib

  • vcomp.lib

  • vcruntime.lib

  • wsetargv.obj

  • onecore\iso_stdio_wide_specifiers.lib

  • onecore\legacy_stdio_definitions.lib

  • onecore\legacy_stdio_wide_specifiers.lib

  • onecore\libcmt.lib

  • onecore\libcpmt.lib

  • onecore\libcpmt1.lib

  • onecore\libvcruntime.lib

  • onecore\msvcprt.lib

  • onecore\msvcrt.lib

  • onecore\oldnames.lib

  • onecore\vccorlib.lib

  • onecore\vcomp.lib

  • onecore\vcruntime.lib

  • concrt140.dll

  • mfc140chs.dll

  • mfc140cht.dll

  • mfc140deu.dll

  • mfc140enu.dll

  • mfc140esn.dll

  • mfc140fra.dll

  • mfc140ita.dll

  • mfc140jpn.dll

  • mfc140kor.dll

  • mfc140rus.dll

  • mfc140u.dll

  • mfcm140u.dll

  • Microsoft.VisualC.STLCLR.dll

  • msvcp140.dll

  • vcamp140.dll

  • vccorlib140.dll

  • vcruntime140.dll

  • onecore\concrt140.dll

  • onecore\msvcp140.dll

  • onecore\vccorlib140.dll

  • onecore\vcruntime140.dll

 

Precisa de mais ajuda?

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Microsoft Insider

Essas informações foram úteis?

Qual é o seu grau de satisfação com a qualidade do idioma?
O que afetou sua experiência?

Obrigado pelos seus comentários!

×