9 Años de procesadores AMD vulnerables a 2 Nuevos ataques de canal lateral

vulnerabilidad del procesador amd

Los procesadores AMD desde 2011 hasta 2019 tienen vulnerabilidades previamente no reveladas que los abren a dos nuevos ataques de canal lateral diferentes, según una investigación recientemente publicada.

Conocidos como “Take A Way”, los nuevos vectores de ataque potenciales aprovechan el predictor de forma de caché de datos L1 (L1D) en la microarquitectura Bulldozer de AMD para filtrar datos confidenciales de los procesadores y comprometer la seguridad al recuperar la clave secreta utilizada durante el cifrado.

La investigación fue publicada por un grupo de académicos del Instituto de Investigación de Sistemas Informáticos y Aleatorios de la Universidad de Tecnología y Tecnología de Graz (IRISA) de Graz, quienes revelaron responsablemente las vulnerabilidades de AMD en agosto de 2019.

“Somos conscientes de un nuevo documento técnico que afirma posibles vulnerabilidades de seguridad en las CPU de AMD, mediante el cual un actor malintencionado podría manipular una función relacionada con la memoria caché para transmitir potencialmente datos de usuario de forma no intencionada”, dijo AMD en un aviso publicado en su sitio web durante el fin de semana.

“Los investigadores luego emparejan esta ruta de datos con software conocido y mitigado o vulnerabilidades de canal lateral de ejecución especulativa. AMD cree que estos no son nuevos ataques basados ​​en la especulación”.

Si bien la notificación no entra en detalles sobre la mitigación del ataque, Vedad Hadžić, uno de los investigadores clave en el documento, dijo que la vulnerabilidad aún está abierta a la explotación activa.

Con Intel bajo escrutinio por una serie de fallas en sus CPU, desde Meltdown, Spectre, ZombieLoad hasta la reciente falla de firmware CSME no reparable, la investigación es un recordatorio de que ninguna arquitectura de procesador es completamente segura.

Vale la pena señalar que algunos de los coautores enumerados en el estudio también estuvieron detrás de descubrir las vulnerabilidades Meltdown, Spectre y ZombieLoad.

Choque + sonda y carga + recarga de ataques

Al igual que el ataque de Intel Spectre, el par de exploits, apodado Collide + Probe y Cargar + Recargar – manipule el predictor de caché L1D mencionado anteriormente para acceder a datos que de otro modo deberían ser seguros e inaccesibles.

“Con Collide + Probe, un atacante puede monitorear los accesos a la memoria de la víctima sin conocer las direcciones físicas o la memoria compartida cuando comparte el tiempo un núcleo lógico”, señalaron los investigadores. “Con Load + Reload, explotamos la forma del predictor para obtener rastros de víctimas de acceso a la memoria de alta precisión en el mismo núcleo físico”.

El predictor de modo de caché L1D es un mecanismo de optimización que tiene como objetivo reducir el consumo de energía asociado con el acceso a los datos en caché en la memoria:

“El predictor calcula un μTag utilizando una función hash indocumentada en la dirección virtual. Este μTag se utiliza para buscar la forma de caché L1D en una tabla de predicción. Por lo tanto, la CPU tiene que comparar la etiqueta de caché de una sola manera en lugar de todas las posibles maneras, reduciendo el consumo de energía “.

Los ataques de caché recientemente descubiertos funcionan mediante ingeniería inversa de esta función de hash para rastrear los accesos a la memoria desde un caché L1D. Mientras Collide + Probe explota las colisiones μTag en el predictor de modo caché L1D de AMD, Load + Reload aprovecha la forma en que el predictor maneja las direcciones con alias en la memoria.

En otras palabras, las dos técnicas de ataque pueden emplearse para extraer datos sensibles de otro proceso, compartiendo la misma memoria que el atacante o un proceso que se ejecuta en un núcleo lógico diferente de la CPU.

Para demostrar el impacto de los ataques de canal lateral, los investigadores establecieron un canal encubierto basado en caché que extrajo datos de un proceso que se ejecuta en la CPU AMD a otro proceso sigiloso, logrando una velocidad de transmisión máxima de 588.9kB / s usando 80 canales en paralelo en el procesador AMD Ryzen Threadripper 1920X.

Con los procesadores EPYC de AMD adoptados por plataformas populares en la nube como Amazon, Google y Microsoft, el hecho de que estos ataques se puedan llevar a cabo en una configuración en la nube plantea preocupaciones importantes.

Además, los investigadores de seguridad pudieron organizar con éxito un ataque Collide + Probe en algunos navegadores comunes, a saber, Chrome y Firefox, evitando la asignación aleatoria del diseño del espacio de direcciones (ASLR) en los navegadores, reduciendo así la entropía y recuperando la información de la dirección.

ASLR es una implementación de seguridad que se utiliza para aleatorizar y enmascarar las ubicaciones exactas del código y las áreas de datos clave dentro de la memoria de la CPU. Dicho de otra manera, impide que un atacante potencial adivine las direcciones de destino y salte a secciones específicas en la memoria.

“En Firefox, podemos reducir la entropía en 15 bits con una tasa de éxito del 98% y un tiempo de ejecución promedio de 2.33 s (σ =0.03s, n = 1000) “, anotaron los investigadores.” Con Chrome, podemos reducir correctamente los bits con una tasa de éxito de 86.1% y un tiempo de ejecución promedio de 2.90s (σ =0.25s, n = 1000) “.

Posteriormente, los investigadores utilizaron el mismo ataque Collide + Probe para filtrar datos de la memoria del núcleo e incluso recuperar la clave de cifrado de una implementación de tabla T que almacena resultados intermedios de operaciones criptográficas utilizando el cifrado AES.

Mitigando el ataque

La buena noticia es que los ataques gemelos pueden mitigarse a través de una variedad de cambios solo de hardware, hardware y software, y soluciones solo de software, incluido el diseño del procesador de una manera que permita inhabilitar dinámicamente el predictor de forma temporal y borrar el estado del modo predictor cuando se cambia entre el modo kernel y el modo usuario.

Esta no es la primera vez que se descubre que los procesadores AMD son vulnerables a los ataques de la CPU, incluido Specter, lo que obliga a la compañía a lanzar una serie de parches.

Queda por ver si AMD corregirá las fallas destacadas en la nueva investigación. Nos pusimos en contacto con AMD para obtener comentarios y actualizaremos la historia si recibimos respuesta.