O que é RAMpage

rampage_logoTemos visto constantemente vários vetores de ataque a smartphones Android. Vimos o Shattered Trust, o Cloak and Dagger e o Rowhammer, só para citar alguns. RAMPage é o mais recente da lista e, embora seja uma vulnerabilidade de hardware, não precisa necessariamente de acesso físico ao seu dispositivo para explorar. Como isso funciona é relativamente simples.

Quando uma CPU lê ou grava uma linha de bits na RAM do dispositivo, as linhas vizinhas são levemente afetadas devido a uma pequena descarga elétrica. Normalmente, isso não é um problema, pois sabemos que a RAM faz isso e é por isso que é atualizada (refresh) periodicamente para garantir que nada dê errado. Mas e se começarmos a martelar (hammering) a mesma linha? E se lermos ou escrevermos continuamente na mesma linha para perturbar e quebrar as linhas vizinhas? Isso pode causar uma mudança de bit (bit-flip) em uma linha de memória que não devemos ter acesso ou que não deva ser acessível a todos. Isto é Rowhammer, e está sendo usado como parte de uma vulnerabilidade maior chamada RAMpage. O CVE é CVE-2018-9442 e afeta dispositivos fornecidos com RAM LPDDR2, LPDDR3 ou LPDDR4

A equipe por trás do RAMpage é formada por pesquisadores de segurança de sistemas da Vrije Universiteit Amsterdam, da TU Wien, da EURECOM, da IBM e da UC Santa Barbara.

O que é RAMpage?

RAMpage não é exatamente uma novidade, por assim dizer. RAMpage é uma vulnerabilidade de hardware que implementa o Rowhammer e outras explorações menores. A RAMpage pode ser usada para obter acesso root em um dispositivo, mas os pesquisadores conseguiram fazer com que ela fizesse muito mais. Ele pode ser usado para ignorar caixas de proteção (sandboxes) JavaScript e até mesmo executar um ataque em execução em outra máquina virtual no mesmo computador em dispositivos x86. Dispositivos baseados em ARM também são vulneráveis, e é aí que entram nossos telefones Android. DRAMMER (Deterministic Rowhammer Attacks on Mobile Devices) significa “Ataques Determinísticos a Ramificação em Dispositivos Móveis” em tradução livre, e foi muito usado no passado para obter acesso root em vários telefones Android.

Como funciona a RAMpage?

O RAMpage funciona principalmente abusando do sistema de gerenciamento de memória do Android – o alocador de memória Android ION. O ION foi introduzido com o Android 4.0 no final de 2011 e simplesmente fornece aos aplicativos a memória que eles precisam para serem executados. No entanto, quebrar esse sistema significa poder acessar toda a memória do dispositivo a partir de qualquer aplicativo – uma situação extremamente perigosa. A memória não mais estará protegida uma vez que o ION foi quebrado e qualquer aplicativo malicioso que esteja procurando por vazamento de dados pode vasculhar essa memória. Embora a proteção contra o DRAMMER seja difícil (e, consequentemente, contra o Rowhammer), por ser uma vulnerabilidade de hardware, a criação de salvaguardas em torno do Android ION atenuará a maioria dos danos que podem ser causados. Os pesquisadores chamam isso de GuardION e lançaram o código aberto no GitHub.

O que é o GuardION?

O GuardION é o método de mitigação proposto pelos caras que descobriram a RAMpage. Ele simplesmente configura linhas de buffer na RAM em torno de um software potencialmente explorável, como o Android ION. É um método simples, mas é o melhor por alguns motivos. O primeiro é que obviamente você não pode substituir o módulo de RAM em todos os dispositivos Android lançados. O segundo é que, mesmo em dispositivos mais recentes, as correções de hardware serão mais “pesados” para a bateria, pois elas terão que atualizar (refresh) a memória constantemente. Portanto, proteger a memória com software é mais fácil. Os pesquisadores mostraram que o GuardION tem sobrecarga insignificante de memória, melhor desempenho do que as tentativas do Google de impedir a exploração e impede todos os ataques DMA (Direct Memory Access) conhecidos. No entanto, enquanto os pesquisadores estão em contato com o Google, a empresa determinou que o GuardION apresenta uma sobrecarga de desempenho muito grande para ser incorporada ao AOSP. O GuardION não corrige a vulnerabilidade de hardware, em vez disso, ele simplesmente considera a falha e reduz a os danos que ela pode causar.

Eu sou vulnerável a RAMpage?

Considerando que você possui um Android lançado a partir de 2012, você deve está vulnerável. Mas é possível instalar o aplicativo de teste DRAMMER em seu site oficial para conferir. Embora tudo isso pareça assustador, ainda não existe um exploit público disponível. Embora devamos ser cuidadosos, não há atualmente nenhuma razão para se preocupar, o exploit não é de domínio público e os pesquisadores não pretendem divulgá-lo neste momento.

O trabalho sobre deterministic Rowhammer attacks on mobile platforms – vulgo Drammer (PDF) – foi exibido na Dutch television, e repercutiu na media popular (incluindo ArsTechnica e WIRED), e ultimamente ganhou o prêmio Dutch Cyber Security Research Paper award! Pode-se encontrar detalhes em Drammer project page ou verificar o código fonte em github.

Um aplicativo para testar se o seu Android está vulnerável   pode ser baixado aqui.Drammer_result

O núcleo do aplicativo consiste em um componente para o qual também foi lançado o código-fonte. Após uma execução bem-sucedida, o aplicativo carrega uma saída anônima, ou seja, compartilha os resultados da verificação com a equipe de pesquisa para seja melhor avaliado sobre quantos e quais dispositivos são vulneráveis. Claro, você pode optar por não compartilhar os resultados.

Eu fiz um teste com um Moto G4 com RAM LPDDR3 1866MB, Android 7.0 e Kernel ElementalX (root), levou um tempão de 35min para acessar 35520M de DRAM e não encontrou qualquer bit-flip

Fonte: RAMpage Official Website  https://rampageattack.com/

Anúncios

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair /  Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair /  Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair /  Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair /  Alterar )

w

Conectando a %s