Vulnerabilidade em WebGPU Trava Macs M-series: O 'Ataque Deathray'
Aprofundamento CEVIU
Aprofundamento
A vulnerabilidade 'Ataque Deathray' expõe uma falha crítica na implementação da API WebGPU nos sistemas macOS com chips M-series. Tecnicamente, o ataque explora a capacidade dos shaders de computação (compute shaders) e de vértice (vertex shaders) de interagirem com o mesmo buffer de dados. Um shader de computação malicioso entra em um loop infinito, ocupando incessantemente a GPU. Paralelamente, um shader de vértice tenta acessar este mesmo buffer, ficando preso à espera. Esta disputa de recursos e o consumo excessivo da GPU levam à exaustão do sistema gráfico. Isso sobrecarrega o WindowServer, processo vital do macOS, tornando a interface do usuário não responsiva e, eventualmente, forçando a reinicialização da máquina devido a um kernel panic.
A arquitetura dos chips M-series parece influenciar a severidade do problema. A comunicação entre o kernel do sistema operacional e a GPU é mediada por um coprocessador, o ASC. A lógica de preempção da GPU reside no firmware do ASC, o que sugere uma barreira de comunicação para o kernel intervir em shaders não responsivos. Enquanto outros sistemas operacionais gerenciam bem a interrupção de processos WebGPU problemáticos, o macOS falha ao isolar a execução do shader malicioso, permitindo que ele degrade o desempenho de todo o sistema. A falha é agnóstica de navegador, replicando em Chrome, Firefox e Safari em Macs M-series.
O que mudou
Esta não é a primeira vez que a Apple enfrenta um problema de congelamento do sistema via GPU web. Em 2023, o 'ShadyShader' explorou uma vulnerabilidade semelhante usando WebGL. Na época, a Apple respondeu com a CVE-2023-40441, implementando uma validação de entrada aprimorada para detectar loops em shaders. No entanto, o 'Ataque Deathray' com WebGPU prova que essa mitigação ou foi insuficiente para a nova API ou a validação de loops é mais fraca na WebGPU. Antes, o foco era validar o código do shader. Agora, a discussão foca na falta de preempção eficaz para shaders que entram em estado de não resposta, um aspecto que não evoluiu o suficiente para lidar com a natureza do WebGPU.
Por que isso importa
A revelação do 'Ataque Deathray' é um lembrete vívido sobre a necessidade de isolamento robusto em APIs de alto desempenho no navegador. Para desenvolvedores, significa que o poder da WebGPU, embora promissor para aplicações gráficas intensivas, vem com riscos de segurança que podem afetar diretamente a estabilidade do sistema operacional subjacente. Além disso, a postura da Apple, que não considera um congelamento de sistema um problema de segurança prioritário, levanta um debate importante. Há uma desconexão entre a percepção do usuário comum, que espera que um clique em um link não trave seu computador, e a definição técnica de segurança de um fornecedor. Isso pode erodir a confiança na plataforma e no navegador como um ambiente seguro para aplicações web de próxima geração.
Linha do tempo
Descoberta do 'ShadyShader' (WebGL) e atribuição da CVE-2023-40441.
Pesquisa demonstra ataques tipo Rowhammer na memória de GPU.
Descoberta da falha HollowByte no OpenSSL, permitindo ataque de congelamento de servidores.
O 'Ataque Deathray' é divulgado para a Apple Security.
Vulnerabilidade crítica de acesso root no macOS via screensharingd é revelada.
Apple informa que não considera o Deathray uma questão de segurança prioritária.
CEVIU News reporta a vulnerabilidade 'Ataque Deathray' em WebGPU que trava Macs M-series.
Perguntas frequentes
O que é WebGPU e qual sua importância para desenvolvedores?
WebGPU é uma API web que permite acesso de baixo nível à placa gráfica do dispositivo, substituindo WebGL. Ela é crucial para aplicações web de alto desempenho, como jogos, renderização 3D e processamento de IA no navegador, oferecendo maior controle sobre a GPU e desempenho aprimorado. Para desenvolvedores, significa mais poder para criar experiências visuais complexas e eficientes diretamente na web.
Como o 'Ataque Deathray' consegue travar Macs M-series?
O ataque usa um shader de computação que entra em um loop infinito, consumindo todos os recursos da GPU. Simultaneamente, um shader de vértice tenta usar o mesmo buffer de dados, ficando preso. Essa sobrecarga do processamento gráfico paralisa o WindowServer do macOS, o que impede a interface de responder e eventualmente aciona um kernel panic, forçando a reinicialização do sistema.
Por que a Apple não considera o 'Ataque Deathray' uma falha de segurança prioritária?
A Apple define falhas de segurança como aquelas que resultam em acesso não autorizado, execução de código remoto ou perda de dados. Congelamentos ou crashes do sistema, que exigem apenas uma reinicialização, não são classificados como 'segurança'. Apesar de ser um problema de negação de serviço, a empresa o considera uma questão de 'melhoria potencial' em vez de uma vulnerabilidade crítica.
Qual a relação entre 'Ataque Deathray' e o 'ShadyShader' de 2023?
O 'Ataque Deathray' é uma evolução do 'ShadyShader' de 2023. Ambos utilizam shaders maliciosos para sobrecarregar a GPU e travar o macOS. A diferença principal é que o 'ShadyShader' usava WebGL, enquanto o 'Deathray' explora a WebGPU. Isso mostra que as mitigações aplicadas anteriormente pela Apple para o WebGL não foram eficazes ou transferidas para a nova API.
Fontes
- auberon.xyzfonte original
- Categoria
- CEVIU Web Dev
- Publicado
- 11 de setembro de 2026
- Editoria
- CEVIU Web Dev
