technology

Combata a fraude com o Rowhammer para impressão digital exclusiva do dispositivo • Strong The One

.

Boffins, da Universidade da Califórnia, em Davis, desenvolveu uma maneira supostamente prática de aplicar uma técnica de abuso de memória chamada Rowhammer para criar impressões digitais de dispositivos únicas e estáveis.

Os pesquisadores da UC Davis Hari Venugopalan, Kaustav Goswami, Zainul Abi Din, Jason Lowe-Power, Samuel King e Zubair Shafiq descobriram que podem usar Rowhammer para criar impressões digitais de dispositivos em um breve período de tempo que são únicos e imutáveis, mesmo quando os dispositivos vêm do mesmo fabricante, com configurações de hardware e software idênticas.

Eles chamam sua técnica de impressão digital Centauri.

A impressão digital do dispositivo geralmente envolve a catalogação das características de software e hardware de um dispositivo. Diz-se que cada uma dessas características (por exemplo, resolução da tela ou fabricante) representa um bit de entropia. Com bits suficientes de entropia, você obtém um valor altamente provável de ser exclusivo entre um conjunto específico e, portanto, funciona como um identificador único.

E isso, dizem, pode ser estendido à memória: a sondagem no estilo Rowhammer pode revelar características da RAM que podem ser usadas para identificar o hardware. A principal coisa a entender aqui é que, ao executar ataques do tipo Rowhammer na memória, a maneira como a RAM reage e a distribuição de bits que mudam é exclusiva da memória de cada computador e pode ser usada para identificar a máquina.

“Nossa avaliação do Centauri em 98 DIMMs em seis conjuntos de módulos DRAM idênticos de dois fabricantes mostrou que ele pode extrair alta entropia e impressões digitais estáveis ​​com uma precisão geral de 99,91 por cento, sendo robusto e eficiente”, eles reivindicado [PDF].

Sua abordagem, dizem eles, é potencialmente útil para a detecção de fraudes. No entanto, eles reconhecem que o sistema tem algumas falhas – pode travar dispositivos com impressões digitais ou desgastar seus módulos de memória, por exemplo.

aula de história

Primeiro proposto em 2014, o Rowhammer é uma maneira de induzir erros de memória em chips DRAM modernos, “martelando” repetidamente linhas de células de memória com uma explosão de operações de leitura ou gravação.

Fazer isso pode inverter bits – ligando ou desligando um capacitor – em um endereço de memória específico, acessando repetidamente endereços de memória adjacentes. Essencialmente, a técnica cria interferência elétrica entre fileiras de células de memória que leva à corrupção da memória.

Rowhammer geralmente não é um ataque prático quando o contexto envolve a execução de código arbitrário no dispositivo da vítima. Se esse for o cenário de ameaça, há opções mais fáceis de seqüestrar ou interferir em um computador quando você já estiver executando seu próprio código arbitrário nele.

Mas suscitou alguma preocupação como forma assumir máquina virtual da vítima em um ambiente de nuvem, mesmo com uma defesa de memória chamada Target Row Refresh (TRR), por meio de um ataque chamado Ferreiro. O Rowhammer também foi usado para desenvolver um ataque baseado em navegador não particularmente rápido chamado Esmagar.

Impressão digital baseada em navegador já é usado por mais de um quarto dos sitesde acordo com a IBM Research.

A pesquisa

O Centauri não mede atributos desse tipo. Em vez disso, ele analisa blocos contíguos de 2 MB de endereços de memória para um conjunto exclusivo de bits invertidos quando ocorre um ataque Rowhammer. A distribuição desses bits invertidos ajuda a identificar o dispositivo.

Os cientistas da computação superaram vários desafios para fazer sua abordagem funcionar. Eles tiveram que descobrir como lidar com trocas de bits não determinísticas (imprevisíveis) em blocos de memória, como lidar com restrições de alocação de memória para garantir que eles pudessem acessar os mesmos blocos de memória repetidamente e como implementar técnicas estabelecidas para contornar a memória Rowhammer defesas (TRR).

Centauri é a primeira técnica a demonstrar a extração de impressões digitais únicas e estáveis ​​em maior escala usando Rowhammer

“O Centauri é a primeira técnica a demonstrar a extração de impressões digitais únicas e estáveis ​​em maior escala usando o Rowhammer, superando as limitações práticas impostas pelo sistema operacional e pelas mitigações do Rowhammer, como o TRR”, explicam.

O Centauri como protótipo envolve a execução de código nativo na área de trabalho do usuário, mas os pesquisadores acreditam que ele pode ser adaptado para ser executado a partir de um aplicativo da web em um navegador. Algumas etapas extras seriam necessárias: aqueles que tentassem registrar as impressões digitais da memória teriam que inferir a microarquitetura do usuário usando Rowhammer.js e usar o ataque Smash para criar os padrões necessários para acionar inversões de bits. Depois disso, Centauri poderia ser aplicado.

O ataque de código nativo envolve três fases: uma fase de modelagem, na qual a memória é sondada com o fuzzer Blacksmith para identificar padrões de troca de bits que podem ser usados ​​para escapar do TRR; uma fase de martelamento, na qual os bits são invertidos; e uma fase de correspondência, na qual as impressões digitais extraídas são comparadas com dados de referência para criar uma distribuição de probabilidade para cada capacitor virar dentro de um bloco de memória.

Com base na observação de que a distribuição de inversões de bits em um pedaço de memória de 2 MB é altamente única e consistente, os pesquisadores criaram sua impressão digital a partir dessas distribuições.

“A partir das informações registradas na fase de martelamento, identificamos as posições relativas e contagens dos capacitores que viraram dentro do bloco contíguo de 2 MB (indexado de 0 a 1.048.576 no caso de DIMMs 1Rx8)”, explicam os boffins. “Em seguida, usamos essas contagens para criar uma distribuição de probabilidade empírica para cada capacitor virar dentro do bloco”.

Os pesquisadores afirmam que o Centauri pode atingir uma precisão de 99,91%, embora isso leve cerca de três minutos. Uma impressão digital acelerada é possível à custa de alguma precisão.

“O Centauri é capaz de extrair uma impressão digital em apenas 9,92 segundos, reduzindo a sobrecarga em mais de 95,01 por cento e degradando a precisão em apenas 0,64”, afirmam em seu artigo.

Um possível uso desse tipo de impressão digital é a detecção de fraudes – por exemplo: detectar bots. Um computador que tenta fingir ser várias máquinas seria revelado por sua impressão digital única. Mas há um porém.

“A promessa da Centauri em detectar fraudadores vem com um risco diferente de zero para usuários benignos”, admitem os pesquisadores. “Ao ativar inversões de bits para extrair impressões digitais, o Centauri pode travar acidentalmente o dispositivo de um usuário, invertendo um bit sensível reservado para o sistema operacional. Em nossa experiência, no entanto, vemos que tais ocorrências são extremamente raras.”

Para evitar isso, os boffins propõem que os fornecedores de sistemas operacionais garantam que a memória alocada para o sistema operacional não seja fisicamente adjacente àquela reservada para outros aplicativos.

“Outro risco apresentado pelo Centauri é que ele pode desgastar os módulos de memória se for usado para acionar constantemente trocas de bits para impressões digitais”, explicam eles.

“A abordagem do Centauri de acionar inversões de bits com menos acessos aos agressores ajuda a mitigar essa preocupação. Essas preocupações também podem ser mitigadas empregando apenas outras técnicas de impressão digital para os casos comuns e empregando o Centauri com moderação para lidar apenas com os casos críticos.” ®

.

Mostrar mais

Artigos relacionados

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Botão Voltar ao topo