Simple Science

Ciência de ponta explicada de forma simples

# Informática# Criptografia e segurança# Arquitetura de Hardware

Ataques Rowhammer: Uma Ameaça Crescente à Cibersegurança

Analisando a falha do Rowhammer e suas implicações para a segurança dos dados.

― 9 min ler


Expondo VulnerabilidadesExpondo Vulnerabilidadesdo Rowhammerseveros causados por ataques Rowhammer.Investigando os riscos de segurança
Índice

RowHammer é uma falha de segurança na memória do computador que permite que atacantes mudem bits de dados em células de memória próximas. Isso pode ser usado para obter níveis mais altos de acesso ou para roubar dados sensíveis. Esse ataque aproveita como a memória dinâmica de acesso aleatório (DRAM) moderna funciona. Quando uma linha de memória é acessada repetidamente, pode fazer com que linhas próximas mudem inesperadamente. Isso pode levar a mudanças não autorizadas nos dados, tornando o Rowhammer uma preocupação significativa para a cibersegurança.

Para combater essas ameaças, muitos sistemas implementam verificações para garantir a Integridade dos Dados quando uma falha é detectada. No entanto, a crença de que essas verificações podem proteger totalmente contra ataques está sendo cada vez mais questionada. Pesquisadores começaram a olhar para os efeitos reais das falhas em como os sistemas operam, em vez de apenas focar nas saídas incorretas que produzem.

Como o Rowhammer Funciona

Um atacante pode criar um perfil da memória de uma vítima observando os padrões de bits que mudam durante um ataque Rowhammer. Esse perfil revela quais locais de memória são mais vulneráveis a Mudanças de Bits. Uma vez que esses locais são identificados, o atacante pode empregar uma fase de ataque direcionada, usando o comportamento da vítima como um canal lateral para reunir dados sensíveis.

Na prática, um atacante pode executar o que é conhecido como "ataque de assinatura da vítima." Nesse cenário, o objetivo é contornar um mecanismo projetado para verificar a integridade de assinaturas digitais. Ao injetar falhas em posições específicas da memória, um atacante pode observar quão rapidamente uma vítima gera assinaturas. Essas informações podem ajudar a decriptar bits sensíveis da memória da vítima.

O ataque Rowhammer já foi comprovado como bem-sucedido em várias plataformas, incluindo serviços de nuvem, dispositivos móveis e até navegadores web. Ele evoluiu para diferentes variações, como tentar explorar assinaturas defeituosas em Sistemas Criptográficos.

Ataques a Sistemas Criptográficos

Além de ataques gerais ao sistema, o Rowhammer tem sido usado diretamente contra esquemas criptográficos. Por exemplo, atacantes conseguiram recuperar bits críticos de esquemas de assinatura pós-quântica injetando falhas durante a criação da assinatura. Essa técnica é conhecida como Ataque de Correção de Assinatura (SCA). O atacante introduz falhas enquanto uma assinatura está sendo gerada e depois usa observações das assinaturas defeituosas para deduzir os bits secretos.

Vários ataques foram documentados que visam diferentes algoritmos de assinatura, como ECDSA e RSA, demonstrando como o Rowhammer pode comprometer efetivamente a segurança digital.

Analisando Falhas

Pesquisadores propuseram vários métodos para analisar como as falhas afetam as vítimas. Uma maneira é através da Análise de Erros Segura (SEA), que mostra que verificações de saída podem inadvertidamente criar novas vulnerabilidades. A Análise de Falhas Ineficaz (IFA) é outro método que prova que verificações de saída podem não ser eficazes na prevenção de ataques.

Esses métodos apontam para uma área crítica de preocupação: vazamentos de informações podem ocorrer mesmo quando um mecanismo de segurança percebido está em vigor. Portanto, entender o impacto real das falhas nas vítimas é essencial para desenvolver defesas robustas.

Contra-medidas

Para se proteger contra ataques Rowhammer, soluções de hardware e software foram propostas. Algumas incluem aumentar as taxas de atualização da memória. Outras se concentram na implementação de métodos de detecção de falhas que podem rejeitar saídas defeituosas antes que elas levem a ações adicionais.

Desenvolvedores de bibliotecas também começaram a corrigir seu software, adicionando defesas específicas da aplicação para se proteger contra ataques habilitados pelo Rowhammer. Por exemplo, alguns implementaram métodos para verificar assinaturas antes de enviá-las, visando impedir que atacantes usem assinaturas defeituosas para decifrar informações secretas.

Apesar desses esforços, desafios permanecem. Muitas soluções propostas exigem mudanças significativas no hardware ou em sistemas existentes e podem nem sempre ser práticas de implementar. À medida que essa área de estudo continua a crescer, pesquisas contínuas e melhorias nas defesas são essenciais.

Nossas Contribuições

Este trabalho apresenta uma nova maneira para atacantes sondarem bits na memória de uma vítima usando técnicas Rowhammer. A abordagem se concentra na análise estatística de falhas (SFA) com base em como um sistema atacado se comporta durante a Injeção de Falhas.

Alguns desafios existem para tornar esse tipo de ataque bem-sucedido. Por exemplo, identificar alvos onde feedback observável ocorre é crítico. O ataque também requer locais de memória estáveis que produzam mudanças de bits consistentes, o que exige um perfilamento cuidadoso anteriormente.

Para demonstrar o ataque, fornecemos evidências por meio de experimentos práticos. Nossa pesquisa destaca vulnerabilidades em sistemas que assumem que mecanismos de segurança protegem efetivamente contra ameaças relacionadas ao Rowhammer.

Realizando um Ataque

O ataque começa com a fase de perfilamento de memória offline, onde um atacante identifica quais locais de memória são vulneráveis a mudanças. Em seguida, vem a fase de ataque online, onde o atacante manipula ativamente a memória para revelar informações ocultas.

Como parte da fase de perfilamento, linhas de atacante são "marteladas" usando padrões específicos. Essa etapa ajuda a detectar quais bits podem ser revertidos de forma confiável. Após o perfilamento, o sistema é configurado para a fase de ataque online, que envolve observar cuidadosamente o comportamento da vítima enquanto falhas são injetadas.

As informações obtidas no perfilamento podem ser usadas para deduzir bits sensíveis da memória da vítima, efetivamente contornando protocolos de segurança estabelecidos.

Flips de Bits Reproduzíveis

Reproduzir flips de bits é vital para o sucesso de um ataque. Esse processo se refere à capacidade do atacante de induzir mudanças específicas no conteúdo da memória de forma consistente. Ao se concentrar em linhas específicas na DRAM e "martelá-las" repetidamente, um atacante pode criar mudanças previsíveis nos bits da vítima.

Identificar linhas confiáveis é crucial para aumentar a probabilidade de flips de bits bem-sucedidos. Ataques bem-sucedidos dependem de encontrar as condições certas para alterar bits e observar as mudanças resultantes no comportamento da vítima.

Amplificando Resultados

Para melhorar as chances de recuperar valores secretos, os atacantes podem precisar amplificar seus esforços repetindo o ataque nos mesmos bits várias vezes. Dado que nem todas as tentativas terão sucesso, aumentar o número de iterações melhora bastante a confiabilidade dos resultados.

A técnica garante que os atacantes possam recuperar valores secretos mesmo quando enfrentam variações nas taxas de flip, aumentando assim as chances de extração bem-sucedida de dados.

Configuração do Experimento

Para validar o ataque, projetamos um experimento usando uma configuração de sistema específica. Os resultados revelaram a relação entre falhas de conexão durante tentativas de acessar os dados da vítima e a precisão das previsões de bits. Este experimento destacou os efeitos do Rowhammer em várias configurações, demonstrando como diferentes setups podem produzir taxas de sucesso variadas.

Ao perfilarmos a memória consistentemente usando múltiplas configurações e, em seguida, realizando experimentos de acompanhamento, ganhamos insights sobre as condições que levam a ataques bem-sucedidos.

Resultados do Ataque Online

Na fase de ataque online, os atacantes manipulam ativamente a memória do programa da vítima para induzir flips de bits, mantendo um olhar atento no status da conexão. Se uma conexão falhar, isso pode indicar que uma falha foi introduzida com sucesso, permitindo ao atacante inferir informações sobre os bits secretos.

Em nossos testes, os resultados mostraram que conseguimos alcançar uma taxa significativa de recuperação de bits secretos, confirmando a eficácia da nossa abordagem mesmo contra medidas de segurança aprimoradas como a verificação pós-assinatura.

Comparação com Outros Trabalhos

Pesquisas anteriores direcionaram vulnerabilidades semelhantes por meio de diferentes estratégias de ataque. Alguns métodos se concentram em identificar falhas para recuperar bits específicos ou em analisar o comportamento dos sistemas sob estresse.

O que distingue nossa abordagem é a capacidade de deduzir rapidamente bits sem depender de operações matemáticas complexas ou precisar de acesso a assinaturas defeituosas. Podemos observar diretamente os efeitos das falhas de forma simplificada, tornando nosso método eficiente.

Estratégias de Mitigação

Pesquisas contínuas são cruciais para desenvolver contra-medidas eficazes contra ataques Rowhammer. Estratégias potenciais incluem a implementação de erros aleatórios ou técnicas de mascaramento durante a alocação de memória.

Desenvolvedores de software também devem estar atentos a como códigos de erro e mensagens de falha são tratados para minimizar as informações disponíveis para os atacantes. Isso inclui refinar como bibliotecas gerenciam dados sensíveis e implementar métodos de tempo constante para obscurecer as diferenças de tempo nas respostas.

Conclusão

Esta pesquisa destaca a necessidade de melhorar as medidas de segurança em resposta aos ataques Rowhammer. Ao destacar vulnerabilidades em sistemas existentes, enfatizamos a importância de entender como a injeção de falhas pode ser explorada na prática.

Desenvolvimentos futuros devem focar em refinar defesas que considerem comportamentos observáveis e condições de falha. À medida que a tecnologia continua a evoluir, estar à frente de ameaças potenciais será crucial para manter a integridade e a segurança dos dados em sistemas modernos.

Fonte original

Título: FAULT+PROBE: A Generic Rowhammer-based Bit Recovery Attack

Resumo: Rowhammer is a security vulnerability that allows unauthorized attackers to induce errors within DRAM cells. To prevent fault injections from escalating to successful attacks, a widely accepted mitigation is implementing fault checks on instructions and data. We challenge the validity of this assumption by examining the impact of the fault on the victim's functionality. Specifically, we illustrate that an attacker can construct a profile of the victim's memory based on the directional patterns of bit flips. This profile is then utilized to identify the most susceptible bit locations within DRAM rows. These locations are then subsequently leveraged during an online attack phase with side information observed from the change in the victim's behavior to deduce sensitive bit values. Consequently, the primary objective of this study is to utilize Rowhammer as a probe, shifting the emphasis away from the victim's memory integrity and toward statistical fault analysis (SFA) based on the victim's operational behavior. We show FAULT+PROBE may be used to circumvent the verify-after-sign fault check mechanism, which is designed to prevent the generation of erroneous signatures that leak sensitive information. It does so by injecting directional faults into key positions identified during a memory profiling stage. The attacker observes the signature generation rate and decodes the secret bit value accordingly. This circumvention is enabled by an observable channel in the victim. FAULT+PROBE is not limited to signing victims and can be used to probe secret bits on arbitrary systems where an observable channel is present that leaks the result of the fault injection attempt. To demonstrate the attack, we target the fault-protected ECDSA in wolfSSL's implementation of the TLS 1.3 handshake. We recover 256-bit session keys with an average recovery rate of 22 key bits/hour and a 100% success rate.

Autores: Kemal Derya, M. Caner Tol, Berk Sunar

Última atualização: 2024-06-11 00:00:00

Idioma: English

Fonte URL: https://arxiv.org/abs/2406.06943

Fonte PDF: https://arxiv.org/pdf/2406.06943

Licença: https://creativecommons.org/licenses/by/4.0/

Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.

Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.

Artigos semelhantes