Diretrizes da Microsoft para mitigar a variante L1TF

Comunicado de Segurança

Lançado: 14 de ago de 2018

Ultima atualização: 18 de jun de 2019

Assigning CNA
Microsoft

Sinopse

Em 3 de janeiro de 2018, a Microsoft lançou um alerta e atualizações de segurança para uma nova classe de vulnerabilidades de hardware envolvendo canais laterais de execução especulativa (conhecidos como Spectre e Meltdown). A Microsoft está ciente de uma nova vulnerabilidade de temporização de execução especulativa, conhecida como L1 Terminal Fault (L1TF), à qual foram atribuídas várias CVEs, conforme observado na tabela a seguir. Essa vulnerabilidade afeta os processadores Intel® Core® e Intel® Xeon®. Para obter mais informações, consulte o comunicado da Intel em: https://www.intel.com/content/www/us/en/security-center/advisory/intel-sa-00161.html.

CVE Nome Aplicabilidade
CVE-2018-3615 L1 Terminal Fault Intel® SGX (Software Guard Extensions)
CVE-2018-3620 L1 Terminal Fault SO (Sistema Operacional), SMM (System Management Mode)
CVE-2018-3646 L1 Terminal Fault VMM (Virtual Machine Manager)

Um invasor que tenha conseguido explorar a L1TF poderá ler dados privilegiados entre limites de confiança. Em ambientes de recursos compartilhados (como os que existem em algumas configurações de serviços de nuvem), essa vulnerabilidade pode permitir que uma máquina virtual acesse indevidamente as informações de outra. Um invasor precisaria de acesso prévio ao sistema ou da capacidade de executar código no sistema para aproveitar essa vulnerabilidade. Para obter uma descrição técnica da L1TF, consulte nosso blog Security Research and Defense (SRD).

A Microsoft lançou várias atualizações para ajudar a mitigar essa vulnerabilidade. Para obter todas as proteções disponíveis, são necessárias atualizações de firmware (microcódigo) e software. Também tomamos medidas para proteger nossos serviços de nuvem. Consulte a seção de clientes de nuvem da Microsoft para obter mais detalhes.

Até agora, a Microsoft não recebeu nenhuma informação que indicasse que essa vulnerabilidade foi usada para atacar clientes. A Microsoft continua trabalhando em estreita colaboração com parceiros do setor, incluindo fabricantes de chips, OEMs de hardware e fornecedores de aplicativos, para proteger os clientes contra a classe de execução especulativa de vulnerabilidades de hardware.

Ações recomendadas

  1. A melhor proteção é manter seus computadores atualizados. Você pode fazer isso aproveitando as atualizações automáticas. Saiba como ativar atualizações automáticas aqui.

  2. Os clientes corporativos devem:

    1. Examinar este comunicado em detalhes para obter diretrizes por produto ou serviço e registrar-se no mensageiro de notificações de segurança para ser alertado de alterações de conteúdo neste comunicado. Consulte Notificações de segurança técnica da Microsoft

    2. Inventariar os processadores em uso em toda a empresa para determinar a exposição ao risco e ajudar a informar as proteções necessárias para a L1TF.

    3. Inventariar o uso de VBS (Segurança Baseada em Virtualização) em toda a empresa e, especialmente em sistemas cliente, para ajudar a informar as proteções necessárias.

    4. Avaliar o risco representado pela L1TF para ambientes corporativos. Em termos gerais, qualquer sistema considerado como necessitando de proteção para o CVE-2017-5715 (Specter Variante 2, Branch Target Injection) precisaria de proteção contra a L1TF.

  3. Verificar o status da proteção para a CVE-2018-3620 usando o script do PowerShell Get-SpeculationControlSettings. Para obter mais informações e obter o script do PowerShell, consulte Noções básicas sobre a saída do script do PowerShell Get-SpeculationControlSettings.

Possíveis impactos sobre o desempenho

Nos testes, a Microsoft observou algum impacto no desempenho com essas mitigações, dependendo da configuração do sistema e das mitigações necessárias. Para a maioria dos dispositivos de consumidor, não observamos um impacto perceptível no desempenho após a aplicativo das atualizações.  Os clientes que usam VBS (Segurança Baseada em Virtualização) ou versões do Hyper-V anteriores ao Windows Server 2016 podem precisar desabilitar o Hyper-Threading para resolver totalmente o risco da L1TF (L1 Terminal Fault), resultando na degradação do desempenho. O impacto no desempenho varia de acordo com o hardware e as cargas de trabalho em execução no sistema. Como a configuração mais comum de dispositivos e servidores é ter o Hyper-Threading habilitado, o impacto no desempenho dependerá de o usuário ou o administrador executar a ação para desabilitar o Hyper-Threading no sistema. Como observado anteriormente, o Windows Server 2016 fornece uma opção para habilitar o Agendador de Núcleo do Hyper-V, que mitiga o vetor de ataque da L1TF e permite que o Hyper-Threading permaneça habilitado, resultando em impacto mínimo no desempenho. O Windows Server 2019 usa do Agendador de Núcleo por padrão. Para obter informações sobre o impacto no desempenho da Intel, consulte: www.intel.com/securityfirst.

Detalhes do Comunicado

Descrição das vulnerabilidades

Vulnerabilidades de temporização de execução especulativa, como L1TF (L1 Terminal Fault), podem ser usadas para ler o conteúdo da memória ultrapassando um limite confiável e, se exploradas, podem levar à divulgação de informações. Existem vários vetores pelos quais um invasor pode desencadear as vulnerabilidades, dependendo do ambiente configurado. Para obter uma visão detalhada dos cenários afetados e da abordagem da Microsoft para mitigar a L1TF, consulte nosso blog SRD (Security Research and Defense). A tabela a seguir resume a relevância potencial da L1TF para vários cenários de ataque e a CVE aplicável:

Categoria de ataque Cenário de ataque L1TF CVE
Dentro da VM Hipervisor para convidado CVE-2018-3646
Host para convidado CVE-2018-3646
Convidado para convidado CVE-2018-3646
Dentro do SO Kernel para usuário CVE-2018-3620
Processo para processo CVE-2018-3620
Dentro do processo CVE-2018-3620
Enclave SGX-to-any CVE-2018-3615
VSM-to-any CVE-2018-3646

Clientes do Microsoft Cloud

A Microsoft implantou mitigações em todos nossos serviços de nuvem, o que reforça o isolamento entre os clientes.

Os clientes que hospedam código não confiável em seus aplicativos devem consultar o Guia para mitigar vulnerabilidades de temporização de execução especulativa no Azure.

Clientes do Azure Stack

Os clientes do Azure Stack devem consultar a Orientação para mitigar a L1 Terminal Fault no Azure Stack.

Cliente do Microsoft Windows Client

Os clientes que usam sistemas operacionais cliente Windows em sistemas com processadores Intel afetados podem precisar aplicar as atualizações de firmware (Microcódigo) e de software, dependendo de como o sistema está configurado. No entanto, a maioria dos dispositivos que executam sistemas operacionais cliente Windows só precisará de atualizações de software do Windows para proteção. Não observamos degradação de desempenho com essas alterações. A tabela a seguir descreve os requisitos para proteção total para cada CVE:

CVE Alterações do Windows Requer microcódigo? Requer ação adicional?
CVE-2018-3620 Atualizações de kernel Não Não*
CVE-2018-3646 Atualizações de hipervisor Sim** Sim, se estiver usando o VBS ou o Hyper-V

* Proteção para o CVE-2018-3620 baseada na mitigação para a CVE-2017-5754 (Meltdown). Quando a mitigação para a CVE-2017-5754 está habilitada, o Windows habilita automaticamente a proteção da CVE-2018-3620. A mitigação para a CVE-2017-5754 (Meltdown) é habilitada por padrão no cliente Windows. Os clientes que desabilitaram a proteção da CVE-2017-5754 devem reabilitá-la para obter proteção para a CVE-2018-3620. (Consulte o item 2 das Perguntas Frequentes)

** O microcódigo necessário é o mesmo microcódigo da CVE-2018-3639 e da CVE-2018-3640. A Microsoft está disponibilizando atualizações de microcódigo validadas pela Intel para sistemas operacionais Windows 10. Consulte o Artigo 4093836 da Base de Dados de Conhecimento Microsoft ou retorne a estas perguntas frequentes para obter as atualizações do microcódigo da Intel atuais.

Os clientes que usam o Hyper-V ou recursos que dependem da VBS (Segurança Baseada em Virtualização) talvez precisem realizar ações adicionais para ficarem totalmente protegidos:

  1. Instalação de Atualizações de segurança do Windows (consulte a tabela Produtos Afetados neste comunicado).
  2. Instalação de atualizações de firmware fornecidas pelo OEM do dispositivo.
  3. Desabilitação do Hyper-Threading (consulte o nº 1 das perguntas frequentes). Observação: A desabilitação do Hyper-Threading pode afetar o desempenho do sistema. Consulte as diretrizes da Intel em www.intel.com/securityfirst para obter mais informações.

A VBS (Segurança Baseada em Virtualização ) do Windows é fundamental para a segurança do Windows 10. Todos os recursos da VBS, inclusive HVCI (Hyper-Explicated Code Integrity) e enclaves VBS, dependem da confidencialidade para manter um forte limite de segurança. A vulnerabilidade L1TF apresenta o risco de que a confidencialidade dos segredos do VBS possa ser comprometida por meio de um ataque de temporização quando o HT (Hyper-Threading) está habilitado, enfraquecendo o limite de segurança fornecido pelo VBS. Mesmo com esse risco aumentado, a VBS ainda oferece benefícios de segurança valiosos e reduz uma série de ataques com o HT habilitado. Portanto, recomendamos que a VBS continue a ser usada em sistemas habilitados para HT. Os clientes que desejam eliminar o risco potencial da vulnerabilidade L1TF sobre a confidencialidade da VBS devem considerar a desativação do HT para mitigar esse risco adicional.

Os usuários do sistema operacional cliente Windows que estão usando o Hyper-V para as garantias de segurança fornecidas pelo isolamento de VM devem desabilitar o HT para proteger-se contra a L1TF.

Clientes do Microsoft Windows Server

Os clientes que usam sistemas operacionais Windows Server podem precisar aplicar as atualizações de firmware (microcódigo) e de software, dependendo de como o sistema está configurado. A tabela a seguir descreve os requisitos para proteção total para cada CVE:

CVE Alterações no Windows Server Requer microcódigo? Requer ação adicional?
CVE-2018-3620 Atualizações de kernel Não Windows Server 2019: Não*
Windows Server 2016 ou anterior: Sim*
CVE-2018-3646 Atualizações de hipervisor Sim** Windows Server 2019: Sim, se estiver usando o VBS e se o Hyper-Threading estiver habilitado***
Windows Server 2016 ou anterior: Sim, se estiver usando a VBS ou o Hyper-V e o Hyper-Threading estiver habilitado

* Proteção para o CVE-2018-3620 baseada na mitigação para a CVE-2017-5754 (Meltdown). Quando a mitigação para a CVE-2017-5754 está habilitada, o Windows habilita automaticamente a proteção da CVE-2018-3620. A mitigação para a CVE-2017-5754 está habilitada por padrão no Windows Server 2019 e desabilitada por padrão no Windows Server 2016 e em versões anteriores. Para obter proteção para a CVE-2018-3620, os clientes devem habilitar a proteção da CVE-2017-5754, se desabilitada. (Consulte a Pergunta frequente 2).

** O microcódigo necessário é o mesmo microcódigo da CVE-2018-3639 e da CVE-2018-3640. A Microsoft está disponibilizando atualizações de microcódigo validadas pela Intel para sistemas operacionais Windows Server 2016. Consulte o Artigo 4093836 da Base de Dados de Conhecimento Microsoft ou retorne a estas perguntas frequentes para obter as atualizações do microcódigo da Intel atuais.

*** O Windows Server 2019 assume como padrão o uso do Agendador de Núcleo como o tipo de agendador de hipervisor. As versões anteriores do Windows Server usam o agendador clássico. Os servidores que usam o Hyper-V com o Agendador de Núcleo não precisam desabilitar o Hyper-Threading para se protegerem contra a L1TF.

Diretrizes detalhadas sobre as ações necessárias para clientes do Windows Server podem ser encontradas no Artigo 4457951 da Base de Dados de Conhecimento Microsoft.

Clientes do Microsoft Surface

Os clientes que usam os produtos Microsoft Surface e Surface Book precisam seguir as diretrizes para o Cliente Windows descrita neste comunicado. Consulte o Artigo 4073065 da Base de Dados de Conhecimento Microsoft para obter mais informações sobre os produtos Surface afetados e a disponibilidade das atualizações de microcódigo.

Clientes do Microsoft HoloLens

O Microsoft HoloLens não é afetado pela L1TF porque não usa um processador Intel afetado.

Perguntas frequentes

1. Como desabilitar o Hyper-Threading em meu dispositivo?

As etapas necessárias para desabilitar o Hyper-Threading diferem de OEM para OEM, mas geralmente fazem parte das ferramentas de instalação e configuração do BIOS ou do firmware.

2. Como habilitar a mitigação para CVE-2017-5754 (Meltdown)?

Importante Este método, seção ou tarefa contém etapas que informam como modificar o Registro. Entretanto, sérios problemas poderão ocorrer caso você modifique o Registro incorretamente. Portanto, siga essas etapas cuidadosamente. Para obter mais proteção, faça backup do Registro antes de modificá-lo. Você poderá então restaurar o Registro se ocorrer um problema. Para obter mais informações sobre como fazer backup do Registro e restaurá-lo, consulte o artigo 322756 da Base de Dados de Conhecimento Microsoft, Como fazer backup do Registro e restaurá-lo no Windows.

Para habilitar a proteção para a CVE-2017-5715 e a CVE 2017-5754:

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0 /f

reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 3 /f

Reinicie o computador para que as alterações tenham efeito.

Observação: Os clientes que ativaram a mitigação para o Speculative Store Bypass Específico (CVE-2018-3639) seguindo as diretrizes do Comunicado de Segurança 180012 não precisam tomar mais medidas, pois as configurações da chave do Registro fornecidas no ADV180012 também habilitam proteções para CVE-2017-5754.

3. O que é a VBS e como saber se a estou usando?

A VBS (Segurança Baseada em Virtualização) usa recursos de virtualização de hardware para criar e isolar uma região segura de memória do sistema operacional normal e é usada por recursos de segurança como Device Guard, Application Guard, Credential Guard e HVCI. A VBS tem suporte nas seguintes versões do Windows:

  • Windows 10 versão 1809
  • Windows 10 versão 1803
  • Windows 10 versão 1709
  • Windows 10 versão 1703
  • Windows 10 versão 1607
  • Windows Serve 2016
  • Windows Server, versão 1709
  • Windows Server, versão 1803
  • Windows Server 2019

Para determinar se a VBS está habilitada, execute MSINFO32.EXE e procure o item de linha Segurança Baseada em Virtualização no nó Resumo do Sistema.

Exploração

A tabela a seguir fornece uma avaliação de exploração dessa vulnerabilidade no momento da publicação original.

Publicly disclosed
Não
Exploited
Não
Exploitability assessment
Probabilidade menor de exploração

Agradecimentos

  • Microsoft would like to thank Raoul Strackx, Jo Van Bulck, and Frank Piessens of imec-DistriNet, KU Leuven; Marina Minkin and Mark Silberstein of Technion; Ofir Weisse, Daniel Genkin, Baris Kasikci, and Thomas F. Wenisch of University of Michigan; Yuval Yarom, University of Adelaide and Data61; Lei Shi of Qihoo360 CERT; Leibo Liu, Ao Luo, Bowei Zhang, and Guanhua Li of Tsinghua University for reporting this and working with us on coordinated disclosure.
A Microsoft reconhece os esforços dos membros da comunidade de segurança que nos ajudam a proteger os consumidores graças à divulgação coordenada de vulnerabilidades. Consulte Agradecimentos para obter mais informações.

Atualizações de segurança

Para determinar o ciclo de vida de suporte de seu software, consulte o Ciclo de vida de suporte da Microsoft.

Data de lançamento Descending

Aviso de isenção de responsabilidade

As informações fornecidas na Base de Dados de Conhecimento da Microsoft são apresentadas "no estado em que se encontram", sem qualquer tipo de garantia. A Microsoft se isenta de todas as garantias, expressas ou implícitas, inclusive as garantias de comercialização e adequação a um propósito específico. Em hipótese alguma a Microsoft Corporation ou seus fornecedores serão responsáveis por quaisquer danos, inclusive danos diretos, indiretos, incidentais, consequenciais, danos por lucros cessantes ou danos especiais, mesmo que a Microsoft Corporation ou seus fornecedores tenham sido alertados da possibilidade dos referidos danos. Como alguns estados não permitem a exclusão ou limitação de responsabilidade por danos consequenciais ou indiretos, a limitação acima pode não ser aplicável a você.

Revisões

Qual é seu nível de satisfação com o Guia de Atualização de Segurança do MSRC?