Novo ataque Spectre v2 impacta sistemas Linux em CPUs Intel

Pesquisadores demonstraram a “primeira exploração nativa do Spectre v2” para uma nova falha de canal lateral de execução especulativa que afeta sistemas Linux executados em muitos processadores Intel modernos.

Spectre V2 é uma nova variante do ataque Spectre original descoberto por uma equipe de pesquisadores do grupo VUSec da VU Amsterdam. 

Os pesquisadores também lançaram uma ferramenta que usa execução simbólica para identificar segmentos de código exploráveis ​​no kernel do Linux para ajudar na mitigação.

A nova descoberta ressalta os desafios em equilibrar a otimização do desempenho com a segurança, o que torna complicada a solução de falhas fundamentais da CPU, mesmo seis anos após a  descoberta do Spectre original .

Spectre assusta Linux

A execução especulativa é uma técnica de otimização de desempenho em que os processadores modernos adivinham quais instruções serão executadas a seguir e começam a implementá-las antes de saberem que são necessárias. Como os processadores modernos são extremamente poderosos, eles podem prever vários caminhos que um programa pode seguir e executá-los simultaneamente.

Se uma das suposições estiver correta, há um aumento no desempenho do aplicativo. Se as suposições estiverem erradas, a CPU descarta o trabalho anterior e prossegue normalmente sem alterar o desempenho.

No entanto, embora esse recurso melhore o desempenho, ele também introduz riscos de segurança ao deixar rastros de dados privilegiados em caches de CPU, que os invasores podem potencialmente acessar.

Esses dados podem incluir senhas de contas, chaves de criptografia, informações pessoais ou corporativas confidenciais, código de software e muito mais.

Dois métodos de ataque são Branch Target Injection (BTI), que envolve a manipulação da previsão de branch da CPU para executar caminhos de código não autorizados, e Branch History Injection (BHI), que manipula o histórico de branch para causar execução especulativa de gadgets escolhidos (caminhos de código), levando a Vazamento de informações.

A Intel  já atribuiu  CVE-2022-0001 e CVE-2022-0002 para BTI e BHI, respectivamente, enquanto CVE-2024-2201 envolve uma nova exploração Spectre v2 que funciona contra o kernel Linux.

Como o Centro de Coordenação CERT (CERT/CC) divulgou ontem, a nova falha, rastreada como CVE-2024-2201, permite que invasores não autenticados leiam dados de memória arbitrários, aproveitando a execução especulativa, contornando os mecanismos de segurança atuais projetados para isolar níveis de privilégio.

“Um invasor não autenticado pode explorar esta vulnerabilidade para vazar memória privilegiada da CPU, saltando especulativamente para um gadget escolhido”,  diz o anúncio do CERT/CC .

“A pesquisa atual mostra que as técnicas de mitigação existentes para desabilitar o eBPF privilegiado e habilitar o (Fine)IBT são insuficientes para impedir a exploração do BHI contra o kernel/hipervisor.”

Uma exploração que demonstra a nova falha do Spectre V2 pode ser vista no vídeo abaixo.

As mitigações atuais são projetadas para isolar dispositivos exploráveis ​​para remover a superfície de ataque. No entanto, os pesquisadores do VUSec, por meio de sua ferramenta de análise personalizada ‘ InSpectre Gadget ‘, demonstraram que os gadgets exploráveis ​​no kernel do Linux permanecem.

Visão geral da função InSpectreGadget
Visão geral da função InSpectreGadget (VUSec)

A Microsoft lançou  orientações atualizadas  para mitigar o CVE-2024-2201 como parte das  atualizações de segurança do Patch Tuesday de abril , mas as mitigações são desativadas por padrão para permitir que usuários e administradores avaliem os resultados de desempenho.

No entanto, o risco permanece para as distribuições Linux, com as seguintes entidades afetadas respondendo à situação:

  • Illumos – Planejando adicionar mitigações de BHI esta semana.
  • Linux Foundation – Problema a ser tratado pelo procedimento padrão de vulnerabilidade de hardware seguido pela equipe de desenvolvimento do kernel Linux.
  • Red Hat – O eBPF sem privilégios está desabilitado por padrão no RHEL, portanto o problema não pode ser explorado em configurações padrão.
  • SUSE Linux – Impacto confirmado.
  • Triton Data Center – Atualização recomendada para SmartOS 20240418.
  • Xen – Impacto verificado de forma independente pelo CERT/CC.

A Intel também atualizou suas recomendações de mitigação para Spectre v2 e agora propõe desabilitar a funcionalidade Extended Berkeley Packet Filter (eBPF) sem privilégios, habilitando a especulação restrita de ramificação indireta aprimorada (eIBRS) e habilitando a proteção de execução do modo supervisor (SMEP).

Além disso, a Intel recomenda adicionar instruções LFENCE (Load Fence) a locais específicos no código para servir como pontos de serialização e implementar sequências de software que limpem o Branch History Buffer (BHB) para transições entre diferentes domínios de segurança.

O fornecedor de hardware indicou que os futuros processadores incluirão mitigações para BHI e potencialmente outras vulnerabilidades de execução especulativa.

Para obter uma lista completa dos processadores Intel afetados pelas diversas falhas de canal lateral de execução especulativa, verifique esta página atualizada pelo fornecedor.