Nuevo exploit de JavaScript ahora puede llevar a cabo ataques DDR4 Rowhammer

Académicos de la Universidad de Vrije en Amsterdam y ETH Zurich han publicado un nuevo artículo de investigación que describe otra variación del ataque Rowhammer.

Apodada SMASH (martillado MAny-Sided sincronizado), la técnica se puede utilizar para desencadenar con éxito el ataque de JavaScript en las tarjetas RAM DDR4 modernas, a pesar de las amplias mitigaciones que han implementado los fabricantes durante los últimos siete años.

«A pesar de sus mitigaciones Target Row Refresh (TRR) en la DRAM, algunos de los módulos DDR4 más recientes siguen siendo vulnerables a los cambios de bits de Rowhammer de muchos lados», dijeron los investigadores.

«SMASH aprovecha el conocimiento de alto nivel de las políticas de reemplazo de caché para generar patrones de acceso óptimos para Rowhammer multifacético basado en el desalojo. Para evitar las mitigaciones TRR en DRAM, SMASH programa cuidadosamente los aciertos y errores de caché para activar con éxito el bit Rowhammer multifacético sincronizado. voltea».

Al sincronizar las solicitudes de memoria con los comandos de actualización de DRAM, los investigadores desarrollaron un exploit de JavaScript de extremo a extremo que puede comprometer completamente el navegador Firefox en 15 minutos en promedio, lo que demuestra que los usuarios de la web continúan estando en riesgo de tales ataques.

¿Qué es Rowhammer?

Primero, una introducción rápida sobre Rowhammer, un término general que se refiere a una clase de exploits que aprovechan una peculiaridad de diseño de hardware en los sistemas DDR4. Las tarjetas de memoria RAM guardan datos dentro de lo que se llama celdas de memoria (cada una de las cuales consta de un capacitor y un transistor) que están dispuestas en el chip de silicio de la RAM en forma de matriz.

Pero dada la tasa de descarga natural de los capacitores, las celdas de memoria tienden a perder su estado con el tiempo y, por lo tanto, requieren una lectura y reescritura periódicas de cada celda para restaurar la carga del capacitor a su nivel original. Por otro lado, las mayores densidades de los circuitos integrados DRAM han permitido mayores tasas de interacciones electromagnéticas entre las celdas de memoria y una mayor posibilidad de pérdida de datos.

En 2014, los investigadores descubrieron que al realizar repetidamente operaciones rápidas de lectura/escritura en una fila de memoria, una y otra vez, también conocido como «martilleo de fila», podían inducir una perturbación eléctrica que alteraría los datos almacenados en filas de memoria cercanas.

Desde entonces, se han ideado múltiples métodos, ampliando los métodos y escenarios de explotación de la investigación original de Rowhammer para eludir las protecciones implementadas (ECCploit), lanzar ataques a través de JavaScript (Rowhammer.js), paquetes de red (Throwhammer) y campo- tarjetas de matriz de puertas programables (FPGA) (JackHammer), e incluso leer datos de memoria confidenciales de otros procesos que se ejecutan en el mismo hardware (RAMBleed)

En respuesta a los hallazgos, las contramedidas de toda la industria como Target Row Refresh (TRR) se anunciaron como la «solución definitiva» para todas las versiones de ataque de Rowhammer antes mencionadas, hasta que los investigadores de VU demostraron en marzo de 2020 una herramienta de fuzzing llamada «TRRespass» que podría ser se utiliza para hacer que los ataques de Rowhammer funcionen en las tarjetas DDR4 protegidas por TRR.

De TRRespass a SMASH

Si bien TRRespass tiene como objetivo lograr una omisión de TRR utilizando código nativo, no había métodos disponibles para activarlos en el navegador desde JavaScript. Ahí es donde entra en juego SMASH, otorgando al atacante una primitiva de lectura y escritura arbitraria en el navegador.

Específicamente, la cadena de explotación se inicia cuando una víctima visita un sitio web malicioso bajo el control del adversario o un sitio web legítimo que contiene un anuncio malicioso, aprovechando los cambios de bits de Rowhammer activados desde el espacio aislado de JavaScript para obtener control sobre el navegador de la víctima.

«La versión actual de SMASH se basa en [transparent huge pages] para la construcción de patrones eficientes de autodesalojo «, dijeron los investigadores. Deshabilitar THP, al tiempo que introduce cierta sobrecarga de rendimiento, detendría la instancia actual de SMASH».

«Además, nuestro exploit se basa específicamente en corromper los punteros en el navegador para romper ASLR y pasar a un objeto falsificado. Proteger la integridad de los punteros en el software o en el hardware (por ejemplo, usando PAC [23]) detendría el exploit SMASH actual».

Continua leyendo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Newsletter Signup

Suscríbete a nuestra lista si te interesa recibir turcos exclusivos sobre hacking y seguridad informática