AMD revela uma nova classe de vulnerabilidades em seus processadores Zen 3 e Zen 4

vulnerabilidade

foi dado a conhecer Informações sobre uma nova ameaça à segurança dos processadores AMD com a divulgação de uma técnica de ataque microarquitetônico batizado como TSA (Ataque de especulação transitória ou ataque de agendador transitório).

Ataques Os TSA constituem uma nova classe de vulnerabilidades especulativas Explorações de canal lateral que exploram o comportamento do processador sob certas condições microarquitetônicas. Elas se baseiam na análise do tempo de execução de uma instrução, o que pode revelar informações confidenciais quando o processador toma decisões especulativas incorretas.

Em cenários específicos, essa diferença de tempo pode ser explorada por um invasor para inferir dados que devem permanecer isolados, resultando em vazamento de informações que compromete diretamente os mecanismos de isolamento entre processos e níveis de privilégio.

O que é TSA e como ele compromete a segurança?

Ataque de especulação transitória ou TSA, explora a execução especulativa e as estruturas internas CPU para acessar informações que, em condições normais, deve permanecer completamente isolado entre processos ou entre sistemas convidados em uma máquina virtual.

O ataque é baseado em uma condição conhecida como “falsa conclusão”. de uma instrução, onde o processador, assumindo que certos dados estão disponíveis (por exemplo, no cache L1), inicia prematuramente operações especulativas que dependem do resultado dessa instrução.

Nesse caso, operações dependentes podem ser agendadas para execução antes que a conclusão falsa seja detectada. Como a carga não foi concluída, os dados associados a ela são considerados inválidos. A carga será executada novamente posteriormente para ser concluída com sucesso, e quaisquer operações dependentes serão executadas novamente com dados válidos quando estiverem prontas.

Se posteriormente for descoberto que as informações não estavam disponíveis, a operação é abortada e reiniciada, mas operações especulativas já deixaram rastros de tempo que podem ser medidos por meio de análise de tempo de execução. Embora essas operações não modifiquem o cache ou o TLB, elas influenciam a latência das instruções subsequentes, permitindo que informações confidenciais sejam extraídas indiretamente.

Embora dados inválidos associados a uma conclusão falsa possam ser encaminhados para operações dependentes, as instruções de carregamento e armazenamento que consomem esses dados não tentarão buscar dados ou atualizar o cache ou o estado da TLB. Portanto, o valor desses dados inválidos não pode ser inferido usando métodos padrão de canal lateral transitório.

CVE-2024-36350 e CVE-2024-36357

Duas variantes específicas do ataque da TSA foram identificadas:

  • CVE-2024-36350 (TSA-SQ): Exploração do buffer de escrita (Store Queue), que permite deduzir o resultado das operações de escrita na memória.
  • CVE-2024-36357 (TSA-L1): Exploração do cache de dados de primeiro nível (L1D), por meio do qual informações processadas no nível do kernel podem ser inferidas.

Essas vulnerabilidades permitem que um invasor ignore os mecanismos tradicionais de separação entre usuário e kernel, ou mesmo entre máquinas virtuais, comprometendo assim a confidencialidade dos dados processados em ambientes compartilhados.

Quais processadores são afetados?

A ameaça afeta processadores AMD baseados nas microarquiteturas Zen 3 e Zen 4. Isso inclui uma ampla gama de produtos para usuários finais e data centers:

  • AMD Ryzen 5000, 6000, 7000 e 8000.
  • AMD EPYC Milão, Milão-X, Gênova, Gênova-X, Bérgamo e Siena.
  • AMD Instinct MI300A.
  • AMD Ryzen Threadripper PRO 7000 WX.
  • AMD EPYC Embedded 7003, 8004, 9004 e 97X4.
  • AMD Ryzen Embedded 5000, 7000 e V3000.

O fato de o TSA impactar uma parcela tão ampla do catálogo atual da AMD o torna um risco de segurança de alto nível.

Mitigações e considerações disponíveis

A AMD desenvolveu mitigações que foram distribuídos por meio de atualizações de firmware desde dezembro. Esses patches incluem ajustes no firmware PI (Inicialização da plataforma) enviada aos fabricantes OEM, e também estão sendo integrados em sistemas operacionais e plataformas de virtualização.

No caso deNo Linux, foram propostos patches para o kernel que permitem Desabilite a proteção usando a opção tsa=off na linha de comandos. Essa possibilidade é oferecida porque, embora a mitigação bloqueie o ataque, ela também pode introduzir degradações no desempenho do sistema.

O hipervisor A Xen também incorporou medidas para mitigar o risco representado pela TSA, consolidando sua posição contra ameaças que visam a infraestrutura de virtualização.

A TSA se junta a uma lista crescente de ataques que exploram a execução especulativa vazar dados confidenciais do hardware, como Meltdown, Spectre e outros derivados fizeram em sua época. Essa nova vulnerabilidade destaca a complexidade de manter a segurança em arquiteturas modernas que priorizam o desempenho por meio de otimizações como a previsão de instruções.

Por fim, se estiver interessado em saber mais sobre o assunto, pode consultar os detalhes no link a seguir