El nuevo ataque resistente al ruido en las CPU Intel y AMD hace que los ataques basados ​​en descarga sean efectivos

Los procesadores Intel y AMD modernos son susceptibles a una nueva forma de ataque de canal lateral que hace que los ataques de caché basados ​​en descarga sean resistentes al ruido del sistema, según reveló una investigación recientemente publicada compartida con The Hacker News.

Los hallazgos provienen de un artículo «DABANGG: Time for Fearless Flush based Cache Attacks» publicado por un par de investigadores, Biswabandan Panda y Anish Saxena, del Instituto Indio de Tecnología (IIT) Kanpur a principios de esta semana.

Apodado «Dabangg» (que significa intrépido), el enfoque se basa en los ataques Flush + Reload y Flush + Flush, que otros investigadores han explotado anteriormente para filtrar datos de las CPU de Intel.

Sin embargo, la nueva variante tiene como objetivo mejorar la precisión de estos ataques incluso en un sistema multinúcleo ruidoso. También funciona a la perfección contra sistemas operativos que no son Linux, como macOS.

«Al igual que cualquier otro ataque de caché, los ataques de caché basados ​​en el vaciado se basan en la calibración de la latencia del caché», dijo Biswabandan Panda, profesor asistente en IIT Kanpur, a The Hacker News. «Los ataques de temporización de caché de última generación no son efectivos en el mundo real, ya que la mayoría de ellos funcionan en un entorno altamente controlado».

«Con DABANGG, defendemos los ataques de caché que pueden tener éxito en el mundo real, son resistentes al ruido del sistema y funcionan perfectamente incluso en un entorno muy ruidoso», agregó.

Los ataques Flush + Reload y Flush + Flush funcionan al vaciar la línea de memoria (usando la instrucción «clflush»), luego esperar a que el proceso de la víctima acceda a la línea de memoria y volver a cargar (o vaciar) la línea de memoria, midiendo el tiempo. necesario para cargarlo.

DABANGG se parece mucho a los ataques Flush + Reload y Flush + Flush en el sentido de que es un ataque basado en el vaciado, que depende de la diferencia de tiempo de ejecución entre los accesos a memoria en caché y no en caché. Pero a diferencia de los dos últimos, DABANGG hace que los umbrales se utilicen para diferenciar un acierto de caché de una falla dinámica.

Las técnicas de administración de energía, como el escalado dinámico de voltaje y frecuencia (DVFS) en los procesadores modernos, permiten cambios de frecuencia basados ​​en la utilización general de la CPU, con núcleos que ejecutan procesos de cómputo intensivo que operan a una frecuencia más alta que aquellos que no lo hacen.

https://www.youtube.com/watch?v=nhAvs7ZzyGU

https://www.youtube.com/watch?v=8DxmB_Tb9zk

https://www.youtube.com/watch?v=sa0ekwRDkiI

Esta diferencia de frecuencia en el núcleo da como resultado una latencia de ejecución variable para las instrucciones y hace que los umbrales elegidos para distinguir un acierto de caché de una falla sean inútiles, afirmaron los investigadores.

«Hacemos que estos umbrales sean dinámicos en función de la frecuencia del procesador (que se acelera hacia arriba y hacia abajo en función de los controladores DVFS), lo que a su vez hace que los ataques basados ​​​​en descarga sean resistentes al ruido del sistema», dijo el Prof. dijo Panda.

DABANGG refina las deficiencias capturando la distribución de frecuencia del procesador en la etapa previa al ataque y utilizando un código de cómputo pesado para estabilizar la frecuencia, antes de proceder con un ataque Flush + Reload o Flush + Flush para calcular la latencia y verificar si hay un golpe de caché.

La consecuencia de estos ataques de canal lateral es una forma confiable de espiar la entrada del usuario, extraer la clave privada AES, filtrar datos a través de un canal encubierto entre un proceso malicioso y su víctima, y ​​llevar a cabo una ejecución especulativa similar a la de Spectre para acceder a la información almacenada en caché.

Dado que DABANGG también es un ataque basado en el vaciado, se puede mitigar usando las mismas técnicas correspondientes a Flush + Reload y Flush + Flush, es decir, modificando la instrucción clflush y monitoreando las fallas de caché, así como haciendo cambios de hardware para prevenir tales ataques.

«Los ataques basados ​​en descarga deben tener en cuenta la frecuencia del procesador para una mayor precisión», dijo el Prof. dijo Panda. «En términos generales, si un ataque no puede apuntar efectivamente al acceso de una víctima a menos que se controlen todas las condiciones, ese ataque no representa un riesgo real. Creemos que esto es solo el comienzo en términos de llevar los ataques de caché al mundo real. , y desencadenará mejores y más sólidos ataques de caché en el futuro».

Los investigadores publicarán el código fuente para la prueba de concepto en Github después del 15 de junio de 2020.

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