Para los que anden perdidos, un ataque de rowhammer se produce cuando una aplicación, generalmente un malware, accede repetidas veces a la misma fila de transistores en el chip de memoria en una pequeña fracción de segundo, realizando un proceso llamado “hammering” (martilleo). Como resultado, el hammering sobre una zona concreta de la memoria puede perturbar la fila adyacente, causando una filtración de electricidad en la siguiente fila que eventualmente causa un error en la memoria que puede cambiar el valor de un bit (bit flipping). Sabiendo que los bits almacenan los datos, este pequeño cambio puede modificar los datos, creando así una vía para obtener el control sobre el dispositivo.

Aunque no es la primera vez que se tiene constancia de rowhammer, sí es el primer caso conocido aplicado sobre smartphones Android, lo que supone un riesgo para los cientos de millones de dispositivos que usan ese sistema operativo.

¿Cuál es el nivel de vulnerabilidad de Android ante este ataque de rowhammer?

Para probar el ataque de rowhammer sobre los dispositivos móviles, los investigadores han creado una nueva prueba de concepto del exploit llamado Drammer, hallando que este altera bits cruciales de datos de manera que puede obtener acceso como root en dispositivos de Samsung, OnePlus, LG, Motorola y muy posiblemente otros muchos fabricantes. Siendo más concretos, estos son los dispositivos probados y sobre los cuales el ataque ha resultado exitoso: Google Nexus 4, Google Nexus 5, LG G4, Samsung Galaxy S4, Samsung Galaxy S5, Moto G generaciones de 2013 y 2014, además de OnePlus One.

Además de los cientos de millones de dispositivos Android que funcionan con arquitectura ARM, los investigadores avisan que también puede afectar a otras arquitecturas como x86, que es la empleada por Intel y AMD.

¿Cómo realiza Drammer el ataque?

Los investigadores han creado una aplicación que contiene un exploit que “rootea” el dispositivo, no necesitando de privilegios especiales para realizar dicha acción. Lo único que necesita el atacante es que su víctima instale la aplicación para ejecutar el ataque de rowhammer.

Después de eso, han conseguido aprovecharse de un mecanismo de Android llamado asignador de memoria ION para obtener acceso directo a la DRAM. Además de eso, ION también se encarga de permitir la identificación de las filas adyacentes en la DRAM, lo que es muy importante para provocar el bit flipping.

Los investigadores han publicado el código que han utilizado para provocar el ataque en GitHub.

Un error que no se corregirá con rapidez

Los investigadores enviaron sus descubrimientos de forma privada a Google el pasado mes de julio. El gigante de Mountain View ha clasificado el fallo como “crítico”, premiando a los investigadores con 4.000 dólares a través de su programa de recompensas.

Google dice que ya ha informado a los fabricantes socios sobre el problema a principios de octubre y que ha desarrollado una mitigación que será incluida en el boletín de seguridad de noviembre y hará mucho más difícil la ejecución de Drammer.

Sin embargo, el hecho de que Drammer explote características de software que son fundamentales en cualquier sistema operativo lo hace muy difícil de eliminar para las próximas generaciones de smartphones Android.

¿Cómo funciona Drammer?

Los investigadores han publicado dos vídeos de pruebas de concepto sobre el uso de Drammer. El primero se trata de una ejecución del malware sobre un LG Nexus 5 con Android 6.0.1 y los parches de seguridad publicados por Google el 5 octubre, mientras que el segundo muestra el mismo ataque combinado con Stagefright, que es un malware que se aprovecha de un fallo en el procesamiento de vídeos recibidos a través de un servicio de mensajería multimedia, permitiendo al atacante introducir código malicioso en un vídeo falso y poder hasta controlar de forma remota el terminal.

Como se puede apreciar en el segundo vídeo, Stagefright da a los investigadores acceso a una shell avanzada y, a través de la utilización de Drammer, consiguen que la shell obtenga acceso a root, que es el administrador de Linux. Por otro lado, dicen que han abarcado solo Android porque están especializados en este sistema operativo, pero no descartan que se pueda ejecutar también sobre iOS.

 

Fuente: The Hacker News | muyseguridad