Abordando Rowhammer na Segurança do DRAM
Explorando novas maneiras de melhorar a segurança do DRAM contra ameaças do Rowhammer.
― 6 min ler
Índice
- Técnicas Tradicionais de Mitigação
- Desafios de Espaço e Tempo
- Falhas em Rastreadores de Baixo Custo
- O Design Panóptico e Suas Vulnerabilidades
- Chegou o MOAT: Uma Nova Abordagem
- Análise de Desempenho
- Cargas de Trabalho Benignas e Maliciosas
- Enfrentando Ataques de Desempenho
- Conclusão e Recomendações
- Fonte original
RowHammer é um problema de segurança que aparece na memória de computadores modernos, especialmente na DRAM. Quando certas linhas de memória são ativadas repetidamente em pouco tempo, elas podem fazer com que bits em linhas próximas mudem sem querer. Isso pode levar a situações perigosas onde um hacker pode obter acesso indevido a dados sensíveis ou até aumentar seus privilégios dentro de um sistema.
Nos últimos dez anos, a tecnologia na DRAM avançou bastante, mas isso também tornou o Rowhammer mais fácil de explorar. O número de Ativações necessárias pra causar essas trocas de bits caiu drasticamente. Por exemplo, as ativações necessárias passaram de cerca de 140 mil pra menos de 5 mil ao longo da última década.
Mitigação
Técnicas Tradicionais dePra enfrentar o Rowhammer, várias soluções foram propostas. Essas soluções geralmente envolvem rastrear quais linhas de memória estão sendo ativadas com frequência e refrescar linhas próximas pra manter sua integridade. Esses mecanismos podem ser implementados pelo controlador de memória, que é parte do sistema que gerencia o acesso à memória, ou diretamente dentro do chip da DRAM.
Soluções dentro do chip da DRAM são particularmente atraentes porque funcionam sem precisar de ajuda de outras partes do sistema. Porém, usar métodos dentro da DRAM traz seus próprios desafios com relação à memória limitada disponível pra rastreamento e os prazos impostos pelas operações de refresco da memória.
Desafios de Espaço e Tempo
A mitigação dentro da DRAM enfrenta dois problemas principais: espaço e tempo. Primeiro, a quantidade de memória disponível pra rastrear essas linhas agressivas é bem limitada, muitas vezes apenas alguns bytes por banco de memória. Isso significa que os dispositivos não conseguem rastrear todas as linhas potencialmente perigosas, levando a vulnerabilidades significativas.
Segundo, o tratamento da memória precisa ser eficiente. Há um cronograma rígido pra refrescar a memória e garantir a integridade dos dados, tornando crucial gerenciar as linhas agressivas sem atrapalhar esse cronograma. Os designs atuais não podem levar mais tempo se houver muitas linhas agressivas, já que isso violaria as regras de tempo.
Falhas em Rastreadores de Baixo Custo
Muitos rastreadores usados nas implementações atuais de DRAM são de baixo custo e têm entradas limitadas. Por causa disso, eles podem ser facilmente sobrecarregados por ataques deliberados que exploram suas fraquezas. Um atacante pode usar padrões inteligentes pra sobrecarregar esses rastreadores de baixo custo, fazendo com que eles esqueçam quais linhas proteger. Como resultado, os sistemas permanecem vulneráveis a ataques de Rowhammer, mesmo com as mitigações dentro da DRAM.
O Design Panóptico e Suas Vulnerabilidades
Um dos designs mais avançados pra rastrear ativações é conhecido como Panopticon. Esse método tenta resolver os desafios de espaço e tempo adicionando contadores dentro de cada linha da memória. Quando uma linha ultrapassa um limite de ativação definido, ela é marcada pra mitigação.
No entanto, até o Panopticon foi encontrado com fraquezas. Novos padrões de ataque podem permitir que um adversário crie mais ativações do que o limite, efetivamente contornando as proteções estabelecidas. Por exemplo, um padrão de ataque chamado "Jailbreak" pode levar a muito mais ativações do que o limite projetado do Panopticon, expondo os problemas de segurança subjacentes em sua implementação.
Chegou o MOAT: Uma Nova Abordagem
Em resposta a esses desafios, um novo design chamado MOAT foi criado. O MOAT usa dois Limites internos importantes pra melhorar a segurança contra ataques de Rowhammer. O primeiro limite, conhecido como Limite de Elegibilidade (ETH), decide se uma linha precisa de mitigação. O segundo, o Limite de ALERTA (ATH), determina quando um sinal de ALERTA deve ser enviado pra interromper operações de memória pra proteção adicional.
O MOAT é projetado pra mitigar contagens de ativações de maneira mais eficiente do que designs anteriores, focando em rastrear apenas uma entrada por banco de memória em vez de várias entradas. Isso minimiza os requisitos de recurso enquanto ainda mantém a segurança.
Análise de Desempenho
Através de várias avaliações de Carga de trabalho, foi encontrado que o MOAT se sai bem em condições normais. Pra cargas de trabalho como SPEC e GAP, o MOAT mostrou uma pequena desaceleração média de apenas 0,28% enquanto utilizava apenas uma pequena quantidade de SRAM pra rastreamento.
O design permite algumas ativações entre ALERTAs, o que precisa de uma consideração cuidadosa. Essa flexibilidade pode às vezes ser usada por atacantes que exploram as breves janelas de oportunidade entre os sinais de ALERTA pra superar os limites de ativação. No entanto, o MOAT tem mecanismos pra combater essa potencialidade.
Cargas de Trabalho Benignas e Maliciosas
O MOAT mostrou sua eficácia em diferentes tipos de cargas de trabalho. Em cargas de trabalho casuais-definidas como aquelas que não visam explorar vulnerabilidades-o número médio de ativações permanece significativamente mais baixo, contribuindo pra praticamente nenhuma desaceleração. Por outro lado, quando um padrão de ataque é implantado, as ativações médias podem disparar, mas o MOAT efetivamente minimiza os danos durante essas tentativas maliciosas.
Enfrentando Ataques de Desempenho
Ataques de desempenho são outro risco associado aos sinais de ALERTA. Ao coordenar bem os acessos à memória, um atacante pode potencialmente fazer o sistema desacelerar. No entanto, o impacto de desempenho de tais ataques sob o MOAT não é tão alto quanto poderia ser, com uma perda máxima de throughput de cerca de 52% demonstrada durante ataques bem coordenados. Isso indica que, embora ataques de desempenho sejam um problema potencial, eles não são especialmente perigosos em comparação com outros tipos de problemas de contenção de memória.
Conclusão e Recomendações
À medida que a tecnologia avança, novos métodos como o MOAT mostram promessa de melhorar a segurança da DRAM contra ataques de Rowhammer. Os problemas que surgiram com designs tradicionais, incluindo suas vulnerabilidades a padrões de ataque inteligentes, destacam a necessidade de inovação contínua nos mecanismos de proteção da memória.
É essencial que os fabricantes de memória considerem as implicações práticas de seus designs, incluindo garantir que suas implementações sejam seguras mesmo sob condições de ataque persistente. Designs futuros também devem encontrar um equilíbrio entre desempenho, uso de recursos e segurança pra garantir que possam efetivamente enfrentar ameaças emergentes no cenário em constante evolução da cibersegurança.
Em resumo, enquanto os métodos atuais de mitigação avançaram, ainda há um longo caminho a percorrer pra tornar os sistemas de DRAM totalmente seguros. Pesquisa e desenvolvimento contínuos serão cruciais pra construir sistemas de memória futuros que possam resistir tanto a ataques existentes quanto a novas formas de ataques, protegendo dados sensíveis e mantendo a integridade do sistema.
Título: MOAT: Securely Mitigating Rowhammer with Per-Row Activation Counters
Resumo: The security vulnerabilities due to Rowhammer have worsened over the last decade, with existing in-DRAM solutions, such as TRR, getting broken with simple patterns. In response, the DDR5 specifications have been extended to support Per-Row Activation Counting (PRAC), with counters inlined with each row, and ALERT-Back-Off (ABO) to stop the memory controller if the DRAM needs more time to mitigate. Although PRAC+ABO represents a strong advance in Rowhammer protection, they are just a framework, and the actual security is dependent on the implementation. In this paper, we first show that a prior work, Panopticon (which formed the basis for PRAC+ABO), is insecure, as our Jailbreak pattern can cause 1150 activations on an attack row for Panopticon configured for a threshold of 128. We then propose MOAT, a provably secure design, which uses two internal thresholds: ETH, an "Eligibility Threshold" for mitigating a row, and ATH, an "ALERT Threshold" for initiating an ABO. As JEDEC specifications permit a few activations between consecutive ALERTs, we also study how an attacker can exploit such activations to inflict more activations than ATH on an attack row and thus increase the tolerated Rowhammer threshold. Our analysis shows that MOAT configured with ATH=64 can safely tolerate a Rowhammer threshold of 99. Finally, we also study performance attacks and denial-of-service due to ALERTs. Our evaluations, with SPEC and GAP workloads, show that MOAT with ATH=64 incurs an average slowdown of 0.28\% and 7 bytes of SRAM per bank.
Autores: Moinuddin Qureshi, Salman Qazi
Última atualização: 2024-07-13 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2407.09995
Fonte PDF: https://arxiv.org/pdf/2407.09995
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.