Cómo la memoria RAM DDR3 y DDR4 de tu ordenador puede ser hackeada

hackear la memoria RAM

Hackear la memoria RAM del sistema puede ser más fácil de lo que parecía, pese a los esfuerzos de la industria por evitarlo.

¿Cómo puede un hacker entrar en nuestro sistema usando la memoria RAM de nuestro ordenador o dispositivo? Suena extraño, pero es posible y es uno de los campos en los que los hackers están centrando sus esfuerzos en los últimos meses.

La clave está en un fenómeno conocido como “Bit-flipping”, o cambios de bits, que ocurre cuando un bit cambia el valor que debería tener por otro, sin que lo haya hecho el sistema; es decir, que si tiene un valor de 0, puede cambiar a 1 y viceversa, aunque realmente no debería hacerlo.

Martilleando bits hasta que cambien de valor

Cambiar el valor de un bit arbitrariamente puede tener consecuencias catastróficas en un sistema, y por eso los atacantes buscan conseguirlos con los recursos que obtienen cuando logran que ejecutemos código malicioso; por ejemplo, cuando nuestro navegador ejecuta código Javascript cuando abre una página web.

Uno de los métodos más efectivos se llama “rowhammer”, que consiste en “martillear” un bit constantemente con un valor; en este momento hay que recordar que en un módulo de memoria RAM cualquiera las celdas de los bits están situadas una al lado de la otra, en varias hileras una encima de la otra.

memoria ddr4 3

Aunque cada bit es una celda individual, no están en un contenedor completamente aislado del resto, así que los cambios que sufre un bit también pueden alterar al resto por su campo electromagnético. Por ejemplo, en el esquema, si nos centramos en escribir una y otra vez en la hilera de bits en morado, podemos llegar a afectar al valor de las hileras de bits en amarillo.

Normalmente los bits en los que se guarden datos importantes estarán protegidos por el sistema y el atacante no podrá escribir encima de ellos; pero si en vez de eso decide escribir una y otra vez sobre las hileras de bits a ambos lados, puede acabar afectando al bit en cuestión y modificarlo con el valor que el atacante quiere.

Qué puede hacer un atacante al hackear la memoria RAM

Este método se ha demostrado muy efectivo en aplicaciones reales; por ejemplo, unos investigadores de Google demostraron que era posible usar un ataque rowhammer para afectar a los bits que determinan qué permisos puede tener una aplicación.

Con el método rowhammer sería posible crear malware que atacase esos bits ganando acceso a todo el sistema. También sería posible saltarse los sistemas “sandbox” que tienen algunos sistemas operativos y que limitan el espacio de memoria que puede usar una aplicación por motivos de seguridad.

memoria ram

Esto no es algo nuevo, es un problema que se conoce desde los años 70 con las primeras memorias DRAM, pero es en los últimos años cuando realmente se ha descubierto como un vector de ataque potencial para los hackers.

En concreto, las memorias DDR3 parecían especialmente susceptibles a sufrir ataques “rowhammer”, y los principales fabricantes de la industria prometieron mejorar, implementando protecciones en memorias DDR3 existentes, y mejorando el estándar DDR4 incluyendo medidas que eviten este tipo de ataques.

memoria ddr4 5

Samsung fue el fabricante que más presumió de memorias DDR4 seguras, gracias a una tecnología llamada TRR (targeted row refresh, refresco dirigido a una hilera), que permite a una hilera de bits soportar mejor un gran número de accesos malignos a hileras contiguas; otras compañías como Micron también adoptaron estas tecnologías.

Los fabricantes subestiman el peligro del hackeo de RAM

Sin embargo, un reciente estudio de una empresa estadounidenese, presentado en la conferencia Semicon China, ha revelado que estas protecciones son inútiles frente a métodos alternativos de “rowhammer”.

memoria ddr4 1

En el estudio los investigadores probaron 12 módulos de memoria DDR4 de diferentes fabricantes, y comprobaron que la mayoría sufrió bit-flipping casi inmediatamente. El primer modelo en caer fue uno de Crucial con chips desarrollados por Micron, pero pronto le acompañaron modelos de otras marcas como Geil; de los 12 módulos, en 8 de ellos pudieron cambiar el valor de un bit arbitrario. Sólo los modelos de G.Skill pudieron pasar las pruebas.

Es cierto que los nuevos modelos de memorias DDR4 son capaces de soportar ataques rowhammer tradicionales que se centran en una hilera, pero los investigadores usaron una versión propia en la que enviaban patrones aleatorios de datos a la memoria, en vez de mandar los mismos datos una y otra vez a la hilera que querían afectar.

memoria ddr4 2

Además de los módulos DDR4, los módulos DDR3 probados también cayeron ante este tipo de ataques, incluso los que contaban con protecciones como ECC.

Los investigadores esperan que este estudio sirva para que los fabricantes sigan mejorando la protección de sus chips de memoria, de cara a futuros estándares.

Te puede interesar
  • Manuel

    Sorprendente artículo, que casualidad que tenga unas gskill…

  • fabian rocha

    Si. Bueno. Pero los que no saben que memoria ram tienen? Quedan indefensos hasta que cambien de equipo (es obvio que jamás se les ocurrira renovar solo sus memorias ram)
    supongo que la mayoría pensará ¿pero que podrían querer de mi? Sin recordar toda la información que guardan y es valiosa