GhostRace: um ataque de execução especulativo que afeta processadores Intel, AMD, ARM e IBM

Corrida Fantasma

Vulnerabilidade GhostRace

Informações sobre um novo ataque de execução especulativa, apelidado de GhostRace (listado em CVE-2024-2193), este é um novo método desenvolvido por pesquisadores da Vrije Universiteit Amsterdam e da IBM para explorar o mecanismo de execução especulativa presente em processadores modernos da Intel, AMD, ARM e IBM.

Os pesquisadores mencionam que, GhostRace se concentra na manipulação de condições de corrida especulativas para acessar áreas de memória previamente liberadas, que podem levar à extração de dados confidenciais do kernel Linux, especialmente em ambientes de virtualização onde um invasor em um sistema convidado pode comprometer a segurança do sistema host ou de outros sistemas convidados.

Como funciona o ataque é baseado na execução especulativa de instruções condicionais com primitivas de sincronização threading, como mutex e spinlock.

Se o processador prever incorretamente ramificações no código que trata dessas operações, acessos especulativos poderão ser feitos à memória que já foi liberada. Embora o processador descarte esses acessos após detectar a previsão errada, os rastros de execução permanecem no cache e podem ser recuperados usando técnicas de análise de canal lateral.

GhostRace requer a presença de certas sequências de instruções no kernel, conhecido como aparelhos, que são usados ​​para execução especulativa dependendo das condições externas controladas pelo invasor. Esses gadgets Eles são formados a partir de seções de código onde o estado é verificado em um loop infinito e sai do loop após remover o bloqueio de acesso ao recurso. Isso permite disparar falsamente uma transição e executar instruções protegidas por um bloqueio, mesmo que o recurso permaneça bloqueado.

Durante a análise de vulnerabilidade, o que foi feito no código do kernel Linux 5.15.83, foi revelada a presença de 1283 dispositivos que podem levar a acessos especulativos para a memória já liberada. Este tipo de ataque representa um risco potencial para sistemas de virtualização, qualquer kernel de sistema operacional e programas que utilizam primitivas de sincronização de threads verificadas por instruções condicionais e executados em plataformas que permitem a execução especulativa de operações de ramificação, como x86, ARM, RISC-V, entre outros.

Para testar a vulnerabilidade, os investigadores desenvolveu um protótipo de exploração que demonstra a eficácia De ataque permitindo a extração de dados da memória do kernel Linux com uma taxa de transferência de 12 KB por segundo e um nível de confiabilidade semelhante aos ataques da classe Spectre.

Os Desenvolvedores de kernel Linux e empresas fabricantes de CPU foram informados sobre esse problema no final do 2023. A AMD já publicou um relatório sobre a vulnerabilidade e recomenda o uso de técnicas padrão para proteção contra ataques semelhantes ao Spectre v1. Por outro lado, a Intel e a ARM ainda não responderam a esta notificação.

Embora Os desenvolvedores do kernel Linux não têm planos imediatos para implementar a serialização de primitivos sincronização Devido à perda de desempenho, já incorporaram restrições para proteção contra a técnica de exploração IPI Storming (CVE-2024-26602). Esta técnica de ataque envolve a interrupção de um processo no momento apropriado para fornecer uma janela de tempo para acesso especulativo à memória liberada.

Para mitigar esse tipo de ataque, Se propõe usar a serialização de primitivas sincronização incluindo uma instrução LFENCE após a instrução cmpxchq que verifica o status do bloqueio. Porém, Esta medida de proteção acarreta uma penalidade de desempenho de aproximadamente 5% no benchmark LMBench, porque a instrução LFENCE desativa a execução preemptiva de instruções subsequentes antes de confirmar todas as operações anteriores.

No caso do hipervisor Xen, os desenvolvedores prepararam mudanças para implementar o mecanismo de bloqueio protegido LOCK_HARDEN, semelhante ao método BRANCH_HARDEN usado acima. No entanto, devido a potenciais impactos negativos no desempenho e à falta de evidências de ataques no Xen, o modo LOCK_HARDEN está desabilitado por padrão.

finalmente se você está interessado em saber mais sobre o assunto, você pode verificar os detalhes em o seguinte link.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: AB Internet Networks 2008 SL
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.