Vulnerabilidad Rowhammer en DDR5: Descubren ataques que burlan las defensas
Rowhammer es una vulnerabilidad que afecta a la memoria DRAM. En esencia, consiste en manipular repetidamente una fila de memoria para causar alteraciones (bit flips) en las filas adyacentes. Imagina que estás golpeando repetidamente la pared de tu vecino hasta que algo se cae al otro lado. Inicialmente se consideró un problema de fiabilidad, pero se ha demostrado que puede ser utilizado para escalar privilegios en un sistema o incluso para denegar el servicio.
¿Cómo funciona un ataque Rowhammer?
Un atacante puede explotar Rowhammer de las siguientes maneras:
- Causar de forma fiable alteraciones de bits accediendo repetidamente a filas DRAM adyacentes.
- Obligar a otras aplicaciones o al sistema operativo a utilizar estas páginas de memoria vulnerables.
- Atacar código o datos sensibles a la seguridad para lograr una escalada de privilegios.
- O simplemente corromper la memoria del sistema para causar una denegación de servicio.
DDR5 y la amenaza persistente de Rowhammer
A pesar de las mitigaciones existentes, como TRR (Target Row Refresh) y ECC (Error Correcting Code), la vulnerabilidad Rowhammer sigue siendo una preocupación en los sistemas DDR5. Estas medidas, aunque útiles, no son infalibles y pueden ser eludidas con técnicas de ataque más sofisticadas.
Google, en colaboración con investigadores académicos y la industria, ha estado trabajando para comprender mejor y mitigar esta amenaza. Sus investigaciones han revelado que los sistemas DDR5 actuales carecen de defensas robustas contra Rowhammer, lo que los hace vulnerables a nuevos ataques.
El problema de las mitigaciones actuales
Las mitigaciones actuales, como TRR y ECC, se basan en contramedidas probabilísticas que resultan ser insuficientes. Una vez que un analista comprende cómo funciona TRR, puede diseñar patrones de acceso a la memoria específicos para evitarlo. Además, los esquemas ECC actuales no fueron diseñados como una medida de seguridad y, por lo tanto, son incapaces de detectar errores de manera fiable.
Phoenix: Un nuevo ataque que burla las defensas DDR5
En un artículo de investigación titulado "Phoenix", investigadores de ETH Zurich, en colaboración con Google, demuestran cómo han logrado eludir las defensas TRR mejoradas en la memoria DDR5. Han desarrollado una nueva técnica de ataque de sincronización de refresco auto-correctiva que les permitió realizar el primer exploit de escalada de privilegios Rowhammer en un sistema de escritorio estándar con memoria DDR5.
Google impulsa soluciones y comparte sus hallazgos
Google está tomando medidas para abordar la vulnerabilidad Rowhammer en DDR5. Entre sus esfuerzos se incluyen:
- Colaboración con JEDEC para definir PRAC (Per-Row Activation Count), un nuevo estándar que detecta Rowhammer de forma determinista.
- Desarrollo de plataformas de prueba de código abierto basadas en FPGA para analizar la memoria DDR5.
- Investigación y mejora de otras contramedidas para garantizar la resistencia de sus cargas de trabajo contra Rowhammer.
- Compartir sus hallazgos con la comunidad para mejorar la seguridad de los sistemas en general.
El futuro de la seguridad de la memoria
La lucha contra Rowhammer está lejos de terminar. Se necesita más investigación y desarrollo para crear soluciones de mitigación más robustas y efectivas. Google aboga por un enfoque de defensa en profundidad, que combine diferentes técnicas para dificultar al máximo la explotación de esta vulnerabilidad.
Aunque la encriptación de la memoria es una posible solución, los investigadores han determinado que sin integridad criptográfica, no ofrece una defensa valiosa contra Rowhammer.
La buena noticia es que la industria está tomando en serio esta amenaza. La colaboración entre empresas como Google, investigadores académicos y organizaciones de estándares como JEDEC es fundamental para proteger nuestros sistemas contra futuros ataques Rowhammer.