Em setembro de 2025, pesquisadores do ETH Zurich (Instituto Federal de Tecnologia da Suíça) publicaram um artigo apresentando o Phoenix, uma modificação do ataque Rowhammer que funciona em módulos de memória DDR5. Os autores não apenas demonstraram a eficácia do novo ataque em 15 módulos testados, como também propuseram três casos de uso práticos: leitura e escrita de dados na memória, roubo de uma chave privada de criptografia armazenada na memória e contorno das proteções do utilitário sudo do Linux para escalonamento de privilégios.
O ataque de Rowhammer: uma breve história
Para entender este estudo bastante complexo, é necessário revisitar brevemente a história do Rowhammer. O ataque Rowhammer foi descrito pela primeira vez em um artigo de 2014. Naquela época, pesquisadores da Carnegie Mellon University e da Intel mostraram como o acesso repetido a linhas de células de memória poderia causar alterações em células de memória adjacentes. Essas células vizinhas podem conter dados críticos, cuja alteração poderia ter consequências graves, como escalonamento de privilégios.
Isso acontece porque cada célula em um chip de memória é essencialmente um capacitor: um componente simples que pode armazenar carga elétrica apenas por um curto período. É por isso que essa memória é volátil: ao desligar o computador ou servidor, os dados desaparecem. Pelo mesmo motivo, a carga nas células deve ser atualizada com frequência, mesmo que ninguém esteja acessando aquela região de memória.
As células de memória não são isoladas; elas são organizadas em linhas e colunas, interconectadas de maneiras que podem causar interferência. Acessar uma linha pode afetar uma linha vizinha, por exemplo, atualizar uma linha pode corromper dados em outra. Durante anos, esse efeito era conhecido apenas pelos fabricantes de memória, que faziam o possível para mitigá-lo e melhorar a confiabilidade. Mas, à medida que as células se tornaram menores e, portanto, mais compactadas, o efeito de “martelamento de linha” passou a ser explorável em ataques reais.
Depois que o ataque Rowhammer foi demonstrado, os desenvolvedores de memória começaram a implementar defesas, resultando na tecnologia de hardware Target Row Refresh (TRR). Na teoria, o TRR funciona de forma simples: monitora acessos agressivos às linhas de memória e, se detectados, força a atualização das linhas adjacentes. Na prática, ele não foi tão eficaz. Em 2021, os pesquisadores descreveram o ataque Blacksmith, que contornava o TRR usando padrões de acesso às células de memória mais sofisticados.
Os desenvolvedores, então, se adaptaram novamente, adicionando defesas ainda mais avançadas contra ataques semelhantes ao Rowhammer em módulos DDR5 e aumentando a frequência de atualização aplicada. Para dificultar novos ataques, os fabricantes também evitaram divulgar quais contramedidas haviam sido implementadas. Isso levou muitos a acreditar que o DDR5 havia efetivamente resolvido o problema do Rowhammer. No entanto, apenas no ano passado, pesquisadores também do ETH Zurich conseguiram atacar com sucesso módulos DDR5, embora sob certas condições: a memória precisava estar emparelhada com CPUs AMD Zen 2 ou Zen 3 e, mesmo assim, alguns módulos permaneceram intocados.
Características do novo ataque
Para desenvolver o Phoenix, os pesquisadores fizeram a engenharia reversa do mecanismo TRR. Eles analisaram seu comportamento sob vários padrões de acesso à linha de memória e verificaram se a proteção era acionada para linhas adjacentes. Descobriu-se que o TRR se tornou significativamente mais complexo e os padrões de acesso anteriormente conhecidos não funcionam mais: a proteção, agora, sinaliza corretamente esses padrões como potencialmente perigosos e força a atualização das linhas adjacentes. Como resultado, os pesquisadores descobriram que, após 128 acessos monitorados pelo TRR, surge uma “janela de oportunidade” de 64 acessos, durante a qual as defesas são mais fracas. Não é que o sistema de proteção falhe completamente, mas suas respostas são insuficientes para evitar uma alteração de valor em uma célula de memória alvo. A segunda janela surge após acessar células de memória ao longo de 2.608 intervalos de atualização.
Os pesquisadores, então, estudaram esses pontos vulneráveis em detalhe para realizar um ataque altamente direcionado às células de memória, neutralizando as defesas. Simplificando, o ataque funciona assim: um código malicioso realiza uma série de acessos fictícios que efetivamente induzem o TRR a uma falsa sensação de segurança. Em seguida, ocorre a fase ativa do ataque, que modifica o valor da célula alvo. Como resultado, a equipe confirmou que o ataque funcionou de forma confiável contra todos os 15 módulos DDR5 testados, fabricados pela SK Hynix, uma das líderes de mercado.
Três cenários de ataque do mundo real
Um ataque realista deve alterar um valor em uma região de memória definida com precisão, o que é uma tarefa difícil. Em primeiro lugar, o invasor precisa de conhecimento detalhado do software alvo. É preciso contornar vários controles de segurança convencionais, e um erro de apenas um ou dois bits pode provocar a queda do sistema em vez de permitir a invasão.
Os pesquisadores suíços decidiram demonstrar que o Phoenix poderia ser usado para causar danos no mundo real. Eles avaliaram três cenários de ataque. O primeiro (PTE) envolveu o acesso à tabela de páginas para criar condições para leitura/gravação arbitrária de dados de RAM. O segundo (RSA) teve como objetivo roubar uma chave de criptografia privada RSA-2048 da memória. O terceiro (sudo) envolveu contornar as proteções do utilitário Linux sudo visando ao escalonamento de privilégios. Os resultados finais do estudo são apresentados nesta tabela:

Efetividade do ataque Phoenix. Fonte
Para alguns módulos, a primeira variante de ataque (128 intervalos de atualização) foi eficaz, enquanto para outros apenas o método da segunda variante (2.608 intervalos) funcionou. Em alguns experimentos, o roubo da chave RSA e os exploits do sudo não tiveram sucesso. Contudo, identificou-se um método que permite leitura/gravação arbitrária de memória em todos os módulos, com tempo de exploração relativamente baixo (cerca de cinco segundos e sete minutos). Isso é suficiente para demonstrar que os ataques Rowhammer representam um risco real, embora em cenários altamente restritos.
Relevância e contramedidas
O ataque Phoenix mostra que ataques do tipo Rowhammer podem ser realizados contra módulos DDR5 tão efetivamente quanto contra DDR4 e DDR3. Embora apenas módulos de um único fabricante tenham sido testados e os pesquisadores tenham identificado uma vulnerabilidade relativamente simples no algoritmo TRR desse fabricante (provavelmente fácil de corrigir), trata-se de um avanço significativo na pesquisa de segurança de módulos de memória.
Os autores propuseram várias contramedidas contra ataques do tipo Rowhammer. Primeiro, reduzir o intervalo de atualização aplicado a todas as células, o que pode dificultar significativamente o ataque. Isso pode aumentar o consumo de energia e a temperatura do chip, mas é uma solução simples e direta. Em segundo lugar, pode-se usar memória com código de correção de erros (ECC). Isso complica os ataques de Rowhammer, mas, curiosamente, não os elimina por completo.
Além dessas medidas óbvias, os autores mencionam mais duas. O primeiro é o método de proteção Fine Granularity Refresh, que já está sendo implementado. Integrado no controlador de memória do processador, modifica o comportamento de atualização da célula de memória para resistir aos ataques Rowhammer. Quanto ao segundo método, os pesquisadores também recomendam que desenvolvedores de módulos de memória e chips parem de depender de medidas de segurança proprietárias (“segurança pela obscuridade”). Em vez disso, eles sugerem adotar uma abordagem comum em criptografia, com algoritmos de segurança publicamente disponíveis e sujeitos a testes independentes.
hardware
Dicas