Cyberpediapor Brain
PTDEENESFRITNL

Rowhammer, o ataque que inverte bits na memória

O Rowhammer altera a memória DRAM de um dispositivo sem lhe tocar diretamente. O que vê o colaborador, como funciona e o que fazer.

Em 30 segundos

Onde acontece
Na memória DRAM dos computadores e dispositivos, inclusive quando um sítio web executa JavaScript no navegador1.
O que o atacante quer
Alterar bits que o seu programa não tem o direito de modificar, por exemplo para obter direitos de administrador13.
O reflexo
Manter o sistema, o navegador e os programas atualizados, porque a atualização regular do software é uma medida de proteção citada pelo MITRE ATT&CK contra a exploração de falhas34.
Se já aconteceu
Comunicar à equipa de segurança qualquer comportamento invulgar do dispositivo, por exemplo a paragem súbita de um antivírus, que o MITRE ATT&CK inclui entre os sinais de exploração de uma falha4.

Do que se trata

Uma regra básica da segurança informática estabelece que um endereço da memória só pode ser modificado pelos programas autorizados a escrever nele. O Rowhammer contorna essa regra: ao ler com muita frequência certas zonas da memória DRAM, um programa pode alterar o conteúdo de células vizinhas sem lhes aceder1.

Para um colaborador, o ponto a reter é que basta um sítio web com JavaScript para realizar este ataque1. Ele atinge o próprio hardware e, segundo os autores, as contramedidas existentes em 2015 não o bloqueavam1.

Perguntas diretas

O que é o Rowhammer?

É um defeito da memória DRAM. Os autores do Rowhammer.js explicam que efeitos parasitas na DRAM podem alterar o conteúdo de uma célula de memória sem lhe aceder, através de acessos de alta frequência a outras posições1. Indicam que este defeito surge na maior parte dos módulos de memória em uso à data do seu artigo1.

Porque existe este defeito?

Segundo a segunda versão do artigo, a DRAM tornou-se mais densa e, por isso, as suas células estão menos isoladas umas das outras2. Acessos repetidos a linhas da DRAM podem então provocar inversões aleatórias de bits numa linha adjacente2.

Um bit invertido é mesmo grave?

Sim, segundo os mesmos autores. O defeito já serviu para obter direitos de root e para sair de uma sandbox2. Uma sandbox é um espaço isolado onde um programa deveria permanecer confinado.

É preciso ter acesso ao computador para o atacar?

Não necessariamente. O Rowhammer.js, segundo os seus autores, é o primeiro ataque de hardware desencadeado remotamente por software: não exige acesso físico à máquina, nem execução de código nativo, nem instruções especiais2. Um sítio web com JavaScript basta para provocar falhas no hardware remoto1.

O que vê a vítima?

As fontes aqui citadas não descrevem qualquer mensagem nem sinal no ecrã. Indicam que estes ataques realizados por JavaScript podem visar milhões de utilizadores de forma discreta e simultânea2.

1Na pele do atacante1 min

O atacante parte de um obstáculo: um programa executado com poucos direitos não consegue aceder a certos recursos do sistema. O MITRE ATT&CK descreve esta etapa como uma escalada de privilégios, que pode levar do nível de utilizador aos direitos SYSTEM ou root3. Pode também permitir sair de um ambiente virtualizado, como uma máquina virtual ou um contentor, para chegar à máquina anfitriã3.

O Rowhammer oferece um caminho para lá chegar, uma vez que permite alterar a memória sem autorização. Os autores do Rowhammer.js referem ataques de escalada de privilégios entre as consequências1. Indicam também que um sítio web basta para obter acesso sem restrições aos sistemas dos seus visitantes1.

O MITRE ATT&CK descreve outra técnica, a exploração de uma falha para escapar à deteção, que consiste em agir de modo a reduzir a visibilidade ou a confundir-se com a atividade legítima4. Este artigo não afirma que o Rowhammer tenha sido usado assim: as fontes aqui citadas não o mencionam.

2O que vê no ecrã1 min

As fontes aqui citadas não descrevem o que o utilizador perceciona. Dizem apenas que o ataque através do navegador pode ser realizado de forma discreta2. No cenário descrito pelos autores do Rowhammer.js, a vítima visita um sítio web que contém JavaScript1.

Como o Rowhammer não tem um sinal visível específico, os indícios a vigiar são os de qualquer exploração de falhas. O MITRE ATT&CK cita comportamentos anormais de processos, como um antivírus ou uma ferramenta de deteção que para de forma inesperada, ou registos com lacunas4.

3Por baixo do capôEquipas de TI1 min

A memória DRAM guarda os dados em células organizadas em linhas. Quando a densidade aumenta, as células ficam menos bem isoladas entre si2. Ler uma linha com muita frequência pode então fazer mudar bits na linha vizinha2.

Os primeiros exploits escritos para tirar partido deste defeito usavam código nativo e instruções especiais destinadas a esvaziar dados da cache2. Todos os estudos e ataques anteriores ao Rowhammer.js dependiam da disponibilidade de uma instrução de esvaziamento da cache, para provocar acessos à DRAM com frequência suficiente1.

O Rowhammer.js eliminou este limite. Os seus autores mostram que é possível forçar a cache a expulsar rapidamente os seus dados e desencadear o defeito com simples acessos comuns à memória1. O ataque torna-se então possível em ambientes restritos, incluindo de script1. Uma estratégia de expulsão encontrada por um algoritmo genérico faz subir a taxa de expulsão de 95,2 % para 99,99 %2.

Os autores afirmam que as contramedidas existentes à data do seu artigo não protegiam contra este novo ataque1. Na segunda versão, propõem contramedidas aplicáveis de imediato2.

4AutópsiasCasos reais1 min

Rowhammer.js, julho de 2015

A 24 de julho de 2015, Daniel Gruss, Clémentine Maurice e Stefan Mangard publicam no arXiv o artigo Rowhammer.js1. Apresentam nele uma implementação do ataque em JavaScript2. Descrevem um ataque totalmente automatizado, que não exige mais do que um sítio web com JavaScript para provocar falhas em hardware remoto1.

Segundo eles, o ataque funciona em sistemas comerciais e permite acesso sem restrições aos sistemas dos visitantes do sítio1. Uma segunda versão surge a 27 de agosto de 2015 e a última versão data de 5 de abril de 201612. O artigo foi aceite na 13.ª conferência DIMVA em 20161.

5O que pode fazer1 min

As fontes aqui citadas não detalham nenhuma medida própria do Rowhammer, nem sobre a memória ECC nem sobre as gerações recentes de DDR. Permitem apenas reter a medida geral indicada pelo MITRE ATT&CK: atualizar regularmente o software, com uma gestão de correções para os postos de trabalho e os servidores da empresa34.

Para um colaborador, isto significa aceitar as atualizações propostas pela equipa de informática e não as adiar sem motivo. O MITRE ATT&CK cita também proteções que detetam comportamentos de exploração, bem como o isolamento de aplicações por sandbox, que dificulta a progressão de um atacante4.

Ficha

Identificador
CP-088
Ala
1. Ataques e técnicas
Competência Brain
Proteger os dispositivos (secure_devices)
Reflexo Brain
cr-055
Esquema
G3 · Corte anatómico
Idiomas
de, en, es, fr, it, nl, pt
Fontes
4 fontes verificadas em 3 de novembro de 2026
Fontes4 fontes
  1. arXiv, «Rowhammer.js: A Remote Software-Induced Fault Attack in JavaScript», 24 de julho de 2015. https://arxiv.org/abs/1507.06955 (consultado em 3 de novembro de 2026)
  2. arXiv, «Rowhammer.js: A Remote Software-Induced Fault Attack in JavaScript», 27 de agosto de 2015. https://arxiv.org/abs/1507.06955v2 (consultado em 3 de novembro de 2026)
  3. MITRE ATT&CK, «Exploitation for Privilege Escalation, Technique T1068 - Enterprise | MITRE ATT&CK®». https://attack.mitre.org/techniques/T1068/ (consultado em 3 de novembro de 2026)
  4. MITRE ATT&CK, «Exploitation for Stealth, Technique T1211 - Enterprise | MITRE ATT&CK®». https://attack.mitre.org/techniques/T1211/ (consultado em 3 de novembro de 2026)

Citar este artigo

Brain, «Rowhammer, o ataque que inverte bits na memória», Cyberpedia, 2026. https://startbrain.io/cyberpedia/pt/articles/rowhammer-inversao-bits-memoria-dram/

BibTeX
@misc{brain_cp088_pt_2026,
  author = {Brain},
  title = {Rowhammer, o ataque que inverte bits na memória},
  year = {2026},
  howpublished = {Cyberpedia},
  url = {https://startbrain.io/cyberpedia/pt/articles/rowhammer-inversao-bits-memoria-dram/},
  note = {CC BY 4.0}
}