Ocho años después de que Spectre pusiese patas arriba la seguridad de los procesadores modernos, Intel y AMD vuelven a tener delante un problema que nace exactamente del mismo sitio: la ejecución especulativa y las predicciones que hacen sus CPU para ganar rendimiento. Investigadores del MIT CSAIL han presentado TONTOU, una nueva clase de ataques que demuestra que varias mitigaciones actuales contra Spectre v2 pueden volver a ser atravesadas, y lo curioso es que no necesitan romperlas directamente, sino colarse en el diminuto intervalo que existe entre que la CPU limpia el predictor de saltos y vuelve a utilizarlo.
La técnica se llama INTERRUPT INJECTION, de ahí el nombre, y el concepto es bastante sencillo. Un programa sin privilegios puede programar interrupciones mediante temporizadores y, afinando muchísimo cuándo se producen, hacer que una de ellas caiga justo dentro de esa ventana.
Spectre V2 vuelve a golpear a Intel y AMD con TONTOU: una nueva forma de reventar la seguridad con ejecución especulativa en CPU

Lo importante es entender que para que esto se produzca la CPU tiene que saltar al manejador de interrupciones tras esa limpieza del predictor y ese pequeño desvío puede volver a contaminar, precisamente, a dicho predictor que acababa de ser limpiado, dejando abierta otra vez la puerta a una predicción (valga la redundancia) manipulada por el atacante.
El MIT lo ha probado sobre cuatro procesadores: un AMD Ryzen 7 4700G (Zen 2), un EPYC 9124 (Zen 4), un Intel Xeon Gold 5220R (Cascade Lake Refresh) y un Core Ultra 9 285H (Arrow Lake). En Intel consiguieron provocar predicciones erróneas pese a las protecciones SW loop y BHI_DIS_S, mientras que en AMD rompieron Safe RET sobre Zen 2, una mitigación que deja una ventana de apenas dos instrucciones. Hablamos de decenas de nanosegundos, y aun así consiguieron acertar.
Donde el asunto deja de ser una demostración puramente académica es en Zen 2. Los investigadores construyeron un exploit completo capaz de leer memoria arbitraria del kernel a 5,47 bytes por segundo y con un 91,97% de precisión, rompieron KASLR en las diez pruebas realizadas y llegaron a localizar /etc/shadow, donde Linux almacena los hashes de las contraseñas, en cinco de diez intentos y unos 18 minutos de media.
Ninguna mitigación actual sirve, ni en Intel ni en AMD, vuelve el fantasma de la pérdida de rendimiento
No es un ataque remoto, y esa es la buena noticia, pero igualmente debe ser parcheada aunque requiere poder ejecutar código local sin privilegios, pero en servidores compartidos y entornos cloud la situación es bastante más delicada.
Y aquí vuelve el fantasma que acompañó a Spectre desde 2018: el rendimiento. AMD reconoce Zen 1 hasta Zen 4 como afectados por el problema de Safe RET, aunque matiza que la demostración directa se realizó sobre Zen 1 y Zen 2, y ha optado por una corrección en Linux. Intel reconoce el comportamiento observado, pero considera que su explotación práctica depende de muchos factores y que sus recomendaciones actuales ya cubren esta clase de ataques. (AMD)
El problema es que algunas soluciones más agresivas planteadas por los investigadores, como sustituir Safe RET por IBPB o impedir interrupciones durante estas ventanas, sí pueden tener un coste importante. Por ahora no hay motivos para afirmar que vayamos a repetir las pérdidas de rendimiento de los primeros parches contra Spectre, pero TONTOU vuelve a poner exactamente la misma pregunta encima de la mesa.
En el momento actual con la IA destrozando la ciberseguridad, basta que alguien tenga acceso a un gran centro de datos, lance un ataque con TONTOU y rompa la seguridad de los datos con total impunidad para que cunda el pánico, y eso ni AMD ni Intel se lo pueden permitir.
La entrada Intel y AMD vuelven a caer ante Spectre con TONTOU: una interrupción permite saltarse sus mitigaciones actuales, ¿volverán las CPU a perder rendimiento? aparece primero en El Chapuzas Informático.






