SPOILER: un nuevo ataque de ejecución especulativa en procesadores Intel

intel-vulnerability-spoiler

Un grupo de investigadores del Instituto Politécnico de Worcester (EE. UU.) y la Universidad de Lübeck (Alemania) revelaron los detalles del nuevo ataque “SPOILER” al mecanismo de las operaciones especulativas en los procesadores.

El ataque es específico de los procesadores Intel y no se manifiesta en las CPU AMD y ARM. La técnica de ataque propuesta permite determinar el reflejo de las direcciones virtuales en la memoria física, lo que permite aumentar significativamente la efectividad de la realización de ataques conocidos de bajo nivel que manipulan el diseño de las páginas en la memoria física.

¿En qué consiste SPOILER?

Como el búfer de escritura puede afectar los datos cargados en el búfer de lectura (por ejemplo, cuando una operación de escritura incompleta puede afectar los datos de lectura especulativa), antes de confirmar la operación de lectura, se analiza la dependencia de las operaciones de escritura anteriores.

En el caso de las intersecciones, la operación de lectura especulativa se descarta y los contenidos de la celda del búfer se actualizan con los datos relevantes.

El problema es que es posible evaluar completamente la dependencia de la operación de escritura solo después de recibir información sobre la dirección física completa, por lo que en el momento de la lectura anticipada solo se realiza una verificación parcial basada en información incompleta sobre la dirección.

Una manipulación de este tipo provoca un retraso en el caso de un conflicto de acceso a direcciones físicas, cuya apariencia puede rastrearse.

Usando las instrucciones rdtscp y mfence, puede asegurarse de que el búfer de escritura esté lleno de direcciones con el mismo desplazamiento, pero en diferentes páginas de memoria virtual.

spoiler

Además, al analizar los retrasos en el acceso a las áreas de memoria con las mismas compensaciones pero en diferentes páginas de memoria, un atacante puede detectar fallas en la determinación de dependencias en el búfer de acceso a la memoria ordenada y determinar el diseño de las páginas de memoria física.

SPOILER también beneficia a otros ataques

Según los investigadores, la técnica SPOILER permite que el ataque Prime + Probe acelere un ataque para determinar el contenido de la memoria mediante el análisis del estado de la memoria caché del procesador 4096 veces.

El método también es aplicable para determinar las páginas de memoria asignadas una tras otra, lo que permite aumentar la efectividad del ataque RowHammer, utilizado para cambiar selectivamente el contenido de la memoria de otros procesos, al 100%.

Esto incluye la posibilidad de implementar tales ataques desde máquinas virtuales, por ejemplo, utilizando el código JavaScript que se ejecuta en el navegador, a pesar de las medidas tomadas anteriormente en los navegadores para limitar la precisión del temporizador.

Las medidas de protección desarrolladas para Spectre no bloquean el ataque de SPOILER. Los ataques de clase Specter manipulan la ejecución especulativa de instrucciones individuales, cuyos resultados son descartados por el procesador después de determinar una predicción fallida, pero los rastros de ejecución se depositan en el caché común.

La técnica SPOILER implica el mecanismo de precarga del contenido de la memoria en los registros del procesador.

Para interactuar con la memoria en el procesador, el búfer es un acceso de memoria ordenado (MOB, Memory Order Buffer), que implementa dos búferes cíclicos, uno para escribir datos de los registros a la memoria y el otro para leer de la memoria a los registros.

El búfer de escritura siempre se analiza en el orden de las instrucciones, y el búfer de lectura permite la carga proactiva de datos en el caché, sin esperar la sincronización con el búfer de escritura y solo comprobando parcialmente la dependencia.

El problema ha sido evidente desde la primera generación de procesadores Intel Core.
Los procesadores AMD y ARM utilizan una lógica diferente para procesar el búfer de acceso ordenado a la memoria, por lo que el problema no los afecta.

Intel fue notificada de la vulnerabilidad hace 3 meses, pero aún no se han propuesto soluciones.

Fuente: arxiv.org


2 comentarios, deja el tuyo

  1.   Andreale Dicam dijo

    Hay que observar el desarrollo de la noticia en estos días… en alguna época lo mencioné por algún foro, el desaforado afán de la industria por producir hardware (incluye periféricos y electrodomésticos, por ejemplo, ya se están haciendo TV’s 5K cuando la mayoría de la industria productora de contenidos a duras penas llega a HD y es muy poco el 4K) para satisfacer necesidades inexistentes sólo por llenarse los bolsillos, está generando muchos errores de diseño. Están comercializando muchos productos a la loca. El caso de Spectre y Meltdown es sólo la punta de la montaña, deben de haber muchos problemas más en la arquitectura que ni sabemos, y hacer chulos con los dedos que otros por ahí no los hayan descubierto todavía. Y estos son los involuntarios, habrá por ver los hechos adrede, Intel también debe de tener los suyos bien tapados para meterse en nuestras vidas

  2.   anonimo dijo

    Amén al comentario de arriba.
    Para mi es adrede, el nivel de diseño y nivel intelectual necesario para desarrollar las arquitecturas del los microprocesadores, me indica que no pueden ser ingenieros improvisados….todo lo contrario…para mi señores, no son errores de diseños, mas bien caracteristicas de diseño.
    No puede explicarse porque solo intel se ve afectada en su gran mayoria y las demás empresas no…salvo, como no, que estas otras empresas sean mas inteligentes aún y tengan mecanismos menos evidentes de espionaje.
    El ser humano es asi, esto nos demuestra como realmente es el ser humano en su gran mayoría.

Deja tu comentario

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

*

*

  1. Responsable de los datos: Miguel Ángel Gatón
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.