Ataque GLitch: o uso de rowhammer para ataques em telefones Android

07:48 Leandro Narezi Tonello 1 Comentarios



Novo ataque de rowhammer permite ataques de hijacking em smartphones Android


Pesquisadores do grupo de pesquisa VUSEC, da Vrije Universiteit, em Amsterdã, publicaram um artigo que detalha uma nova forma do ataque de rowhammer que eles chamaram de "GLitch".
Como nas versões anteriores, ele usa o ataque de rowhammer para induzir vazamentos na memória e alterar os zeros e vice-versa nos dados armazenados lá - os chamados "bits de virada". Mas, a nova técnica pode permitir que um hacker execute códigos maliciosos em alguns telefones Android quando a vítima simplesmente visita uma página da web cuidadosamente desenvolvida, tornando-se a primeira implementação remota do ataque do rowhammer.

Como os pesquisadores identificaram a falha?


Os pesquisadores decidiram analisar se poderiam usar um código em execução na GPU utilizando um dispositivo Android para executar truques de rowhammer que não seriam possíveis por meio de técnicas tradicionais de programação. Para tornar o problema ainda mais específico e interessante, eles também queriam verificar se poderiam fazer tudo isso sem precisar de um Android configurado como root e sem depender de um aplicativo de malware pré instalado.
O objetivo final dos pesquisadores era fazer um ataque de rowhammer pelo navegador, usando nada mais do que o JavaScript exibido em uma página da web.
A pesquisa foi batizada de GLitch, onde as letras GL vêm de WebGL, abreviação de Web Graphics Library - biblioteca de programação incorporada em navegadores modernos que permite que o código JavaScript trabalhe em conjunto com a GPU para melhorar o desempenho em aplicativos online que utilizam muito a parte gráfica.
Os pesquisadores assumiram que os recursos adicionados do WebGL trariam riscos adicionais, e por causa disso conseguiram identificar o que estavam procurando.



O ataque GLitch é a primeira técnica remota de rowhammer que explora as unidades de processamento gráfico (GPU), que é encontrada em quase todos os processadores móveis.
Como os processadores ARM dentro dos smartphones Android incluem um tipo de cache que dificulta o acesso a linhas de memória direcionadas, os pesquisadores fazem uso da GPU, cujo cache pode ser mais facilmente controlado, permitindo que os hackers façam buscas nas linhas sem interferência.

O que fazer para mitigar o problema?


Como o rowhammer explora uma vulnerabilidade no hardware do smartphone, nenhum patch de software pode corrigir completamente o problema.
Até agora, os pesquisadores têm um conjunto limitado de ataques que funcionam sob circunstâncias controladas, em um dispositivo desatualizado de sua própria escolha, executando uma versão antiga do Android. No entanto, o GLitch nos lembra que quando você adiciona recursos e desempenho, seja ao criar GPUs em chips para telefones celulares ou ao adicionar bibliotecas sofisticadas de programação gráfica a navegadores, podem existir consequências.
Os pesquisadores enfatizam que a ameaça de rowhammer não é apenas real, mas também tem o potencial de causar danos reais e severos.

Sobre os ataques rowhammer


O ataque de rowhammer é uma vulnerabilidade relativamente antiga, que origina-se no fato que os chips DRAM atuais usam geometrias de processo muito pequenas, que reduzem o número de elétrons armazenados na célula, enquanto a proximidade das “linhas” vizinhas acelera a taxa na qual os elétrons vazam para dentro e para fora da célula. Se muitos elétrons forem removidos ou adicionados a uma célula, ela mudará de estado.

Para que a vulnerabilidade ocorra quando uma linha de DRAM é ativada repetidamente, é necessário que vários acessos ocorram em uma linha antes que as linhas adjacentes internas tenham sido ativadas ou atualizadas. A carga da linha sobreativada, vazará para as linhas adjacentes, fazendo com que os bits mudem de estado. Este não é um erro permanente. A célula manterá seus dados em circunstâncias normais, mas perderá dados se a linha de sequência apresentar uma atividade excepcionalmente alta.

Simplificando, o ataque de rowhammer significa ler os mesmos endereços de memória DRAM repetidamente, concentrando a atividade eletrônica em uma pequena parte do chip por tempo suficiente para interferir nas células de memória próximas. De tempos em tempos, algumas dessas células próximas podem mudar sua carga elétrica, invertendo os valores binários 0 para 1 ou de 1 para 0.

Referências:



Um comentário:

  1. É algo a se preocupar uma vez que não há correções. A única e viável saída por enquanto é a precaução, sempre evitar de visitar sites duvidosos. Parabéns pela bela matéria.;)

    ResponderExcluir