Apple Silicon VULNERÁVEL a ataques
29 de Janeiro de 2025

Uma equipe de pesquisadores de segurança do Instituto de Tecnologia da Georgia e da Universidade Ruhr de Bochum demonstrou dois novos ataques de canal lateral visando o Apple silicon, que poderiam ser explorados para vazar informações sensíveis de navegadores web como Safari e Google Chrome.

Os ataques foram batizados de Ataques de Especulação de Dados via Predição de Endereço de Carga em Apple Silicon (SLAP) e Quebrando o CPU Apple M3 via Predições Erradas de Saída de Carga (FLOP).

A Apple foi notificada sobre os problemas em maio e setembro de 2024, respectivamente.

As vulnerabilidades, como o ataque iLeakage previamente divulgado, baseiam-se no Spectre, surgindo quando a execução especulativa "dá errado", deixando vestígios de má predições no estado microarquitetônico do CPU e no cache.

A execução especulativa refere-se a um mecanismo de otimização de desempenho em processadores modernos que visa prever o fluxo de controle que o CPU deve tomar e executar instruções ao longo do ramo antecipadamente.

No caso de uma má predição, os resultados das instruções transitórias são descartados e todos os estados seguintes à predição são revertidos.

Esses ataques aproveitam o fato de que a execução especulativa deixa vestígios para forçar um CPU a fazer uma má predição e executar uma série de instruções transitórias, cujo valor pode ser inferido através de um canal lateral mesmo após o CPU reverter todas as mudanças no estado devido à má predição.

"Em SLAP e FLOP, demonstramos que os recentes CPUs da Apple vão além, não apenas prevendo o fluxo de controle que o CPU deve tomar, mas também o fluxo de dados em que o CPU deve operar se os dados não estiverem prontamente disponíveis a partir do subsistema de memória", disseram os pesquisadores.

Ao contrário do Spectre, má predições no fluxo de dados não resultam diretamente na execução especulativa de instruções erradas pelo CPU.

Em vez disso, resultam na execução arbitrária de instruções em dados errados.

No entanto, mostramos que isso pode ser combinado com técnicas de indireção para executar instruções erradas.

SLAP, que afeta os chips M2, A15 e mais novos, tem como alvo o que é chamado de Preditor de Endereço de Carga (LAP) que os chips da Apple usam para adivinhar o próximo endereço de memória de onde o CPU recuperará dados com base nos padrões de acesso à memória anteriores.

No entanto, se o LAP prever um endereço de memória errado, pode fazer com que o processador realize cálculos arbitrários em dados fora dos limites sob execução especulativa, abrindo porta para um cenário de ataque onde um adversário pode recuperar o conteúdo do email de um usuário logado e comportamento de navegação do navegador Safari.

Por outro lado, FLOP impacta os chips M3, M4 e A17, e visa outra característica chamada Preditor de Valor de Carga (LVP) que é projetado para melhorar a performance de dependência de dados ao "adivinhar o valor de dados que será retornado pelo subsistema de memória no próximo acesso pelo núcleo do CPU." FLOP causa "verificações críticas na lógica do programa para segurança de memória serem contornadas, abrindo superfícies de ataque para vazar segredos armazenados na memória", observaram os pesquisadores, adicionando que poderia ser armado contra ambos os navegadores Safari e Chrome para realizar vários primitivos de leitura arbitrária de memória, como recuperar histórico de localização, eventos de calendário e informações de cartão de crédito.

A divulgação vem quase dois meses depois dos pesquisadores da Universidade da Coreia detalharem o SysBumps, o qual eles descreveram como o primeiro ataque de quebra de randomização do layout do espaço de endereços do kernel (KASLR) no macOS para Apple silicon.

"Usando gadgets do tipo Spectre em chamadas de sistema, um atacante não privilegiado pode causar traduções dos endereços do kernel escolhidos pelo atacante, fazendo com que o TLB mude de acordo com a validade do endereço", disseram Hyerean Jang, Taehun Kim e Youngjoo Shin.

Isso permite a construção de um primitivo de ataque que quebra o KASLR contornando o isolamento do kernel.

Separadamente, novas pesquisas acadêmicas também descobriram uma abordagem para "combinar múltiplos canais laterais para superar limitações ao atacar o kernel", descobrindo que a marcação do espaço de endereço, "a própria característica que torna a mitigação de canais laterais eficiente, abre uma nova superfície de ataque." Isso inclui um ataque prático chamado TagBleed, que abusa dos buffers de lookaside de tradução marcados (TLBs), o que torna eficiente a separação dos espaços de endereços do kernel e do usuário, e informação de tradução residual para quebrar o KASLR mesmo diante das mitigações mais modernas" em arquiteturas modernas.

"Essa fuga é suficiente para derandomizar completamente o KASLR quando usada em combinação com um ataque de canal lateral secundário que usa o kernel como um delegado confuso para vazar informações adicionais sobre seu espaço de endereço", disse o pesquisador da VUSec, Jakob Koschel.

Publicidade

Traçamos um caminho para você ir do zero ao avançado em hacking

Conheça a Solyd One, e tenha acesso a todos os cursos de segurança ofensiva da Solyd, todas as certificações práticas, incluindo a SYCP, 2 CTFs anuais com prêmios de até 30 mil reais, dezenas de laboratórios realísticos, suporte, comunidade e muito mais. Saiba mais...