Conecta con nosotros

Noticias

Se puede romper la protección ASLR sobre 22 modelos de CPU solo con JavaScript

Publicado el

Se puede romper la protección ASLR de 22 modelos de CPU solo con JavaScript

Se puede romper la protección ASLR de 22 modelos de CPU solo con JavaScript

Cinco investigadores de Vrije University, situada en Países Bajos, han conseguido romper la protección ASLR sobre 22 modelos de CPU realizando ataques mediante código JavaScript. Entre las marcas afectadas por este fallo de seguridad nos encontramos a Intel, AMD, ARM, Allwinner y NVIDIA, entre otros muchos.

El ataque, que ha recibido el nombre de ASLR^Cache o AnC, se enfoca en la Unidad de Gestión de Memoria (MMU), un componente no muy conocido incluido en muchas microarquitecturas de CPU y que se encarga de mejorar el rendimiento de las operaciones de gestión de la caché. Lo que han descubierto los investigadores es que este componente comparte porciones de su caché con aplicaciones no confiables, incluyendo navegadores web. Esto significa que han podido enviar código JavaScript malicioso teniendo como objetivo dicho espacio de memoria compartido para leer su contenido.

Los investigadores cuentan que su ataque sobre una arquitectura x86_64 “puede encontrar desplazamientos (dentro de una arquitectura de datos) que son accedidos por la MMU en cada una de las cuatro páginas de la tabla de paginación. El desplazamiento dentro de cada página rompe los nueve bits de entropía, por lo que incluso una implementación perfecta con 36 bits de entropía no resulta segura”. Explicando esto de forma más sencilla y entendible, significa que el ataque AnC puede romper la protección ASLR y podría permitir a un atacante leer porciones de memoria en una computadora. Esto podría abrir la puerta al aprovechamiento de exploits más complejos y escalar hasta acceder al sistema operativo completo.

ASRL es un mecanismo de protección implementado en la mayoría de los sistemas operativos, que se dedica a hacer aleatoria la localización en la cual un código es ejecutado en memoria. Rompiendo ASRL, un atacante podría conocer dónde se ejecuta un código y preparar un ataque que iría dirigido a la misma sección de memoria, pudiendo robar información sensible almacenada en la memoria del PC.

Los investigadores han conseguido llevar a cabo el ataque AnC con Firefox y Chrome sobre 22 modelos de CPU diferentes para saltar o romper protecciones incluidas en los propios navegadores, como los temporizadores de JavaScript. Pero esto no es lo peor, sino que además este ataque puede ser utilizado para “resucitar” problemas de seguridad que fueron corregidos hace una década.

Ante esta situación, los investigadores recomiendan utilizar algún complemento para navegadores que no permita la ejecución de JavaScript no confiable, como NoScript. Por otro lado, el equipo tras este descubrimiento tiene experiencia en ataques de rowhamming sobre la memoria RAM, usando esta técnica para comprometer software como Microsoft Edge, máquinas virtuales Linux y dispositivos Android.

Modelos de CPU sobre los cuales la protección ASLR ha sido comprometida a través del ataque AnC

Modelo de CPU Microarquitectura Año de lanzamiento
Intel Xeon E3-1240 v5 Skylake 2015
Intel Core i7-6700K Skylake 2015
Intel Celeron N2840 Silvermont 2014
Intel Xeon E5-2658 v2 Ivy Bridge EP 2013
Intel Atom C2750 Silvermont 2013
Intel Core i7-4500U Haswell 2013
Intel Core i7-3632QM Ivy Bridge 2012
Intel Core i7-2620QM Sandy Bridge 2011
Intel Core i5 M480 Westmere 2010
Intel Core i7 920 Nehalem 2008
AMD FX-8350 8-Core Piledriver 2012
AMD FX-8320 8-Core Piledriver 2012
AMD FX-8120 8-Core Bulldozer 2011
AMD Athlon II 640 X4 K10 2010
AMD E-350 Bobcat 2010
AMD Phenom 9550 4-Core K10 2008
Allwinner A64 ARM Cortex A53 2016
Samsung Exynos 5800 ARM Cortex A15 2014
Samsung Exynos 5800 ARM Cortex A7 2014
Nvidia Tegra K1 CD580M-A1 ARM Cortex A15 2014
Nvidia Tegra K1 CD570M-A1 ARM Cortex A15; LPAE  2014

Vídeos demostrativos

Fuente | BleepingComputer
Más información | Vrije University (1 y 2)

Lo más leído