Procesador AMD Ryzen Threadripper, uno de los afectados

Procesador AMD Ryzen Threadripper, uno de los afectados

Hardware

Tu ordenador es inseguro si tiene un procesador AMD y lo compraste a partir de 2011

Investigadores han descubierto dos nuevas vulnerabilidades en los procesadores de AMD vendidos desde 2011, y lo peor es que no tienen solución.

9 marzo, 2020 16:04

Noticias relacionadas

No es sólo Intel. Desde el descubrimiento de Meltdown y Spectrre, nuestros procesadores se han convertido en el nuevo objetivo de hackers e investigadores de seguridad de todo el mundo.

Estas vulnerabilidades de hardware tienen el gran inconveniente de que no se puede arreglar por software; no basta con instalar un parche o una actualización, la única manera de huir del problema es conseguir un procesador nuevo que no lo tenga.

Después de que la semana pasada hablásemos de una nueva vulnerabilidad en procesadores Intel, ahora le toca el turno a AMD; sin embargo, en este caso todo apunta a que es menos catastrófico de lo habitual.

Vulnerabilidad en procesadores AMD

La vulnerabilidad ha recibido el nombre de "Take a Way" (coge un camino), y afecta a la mayoría de procesadores AMD vendidos a partir de 2011, cuando el fabricante estrenó la plataforma Bulldozer. Eso es porque con aquellos procesadores AMD estrenó una nueva funcionalidad para mejorar el rendimiento: un pronosticador de memoria caché de nivel 1.

La memoria caché es la que está integrada en la propia CPU, y donde se almacenan los datos que el procesador usará a continuación. Por lo tanto, es necesario leer y escribir en ella constantemente, lo que implica crear un "cuello de botella", con el que el procesador está esperando a que los datos lleguen.

Para acelerar el proceso, y consumir menos energía, AMD implementó una funcionalidad que crea una "tabla de predicción", con la que puede predecir qué dato será necesario a continuación y acceder directamente a él; para ello, el sistema asigna "etiquetas", generadas criptográficamente, y las guarda en la tabla.

Procesador AMD Ryzen, uno de los afectados

Procesador AMD Ryzen, uno de los afectados

El logro de los investigadores está en descubrir cómo se genera esa tabla, pese a que AMD nunca lo reveló públicamente; afirman que, una vez que se sabe esto, es posible realizar ataques para obtener datos que no deberían poder obtener.

En ese sentido, es muy parecido a Meltdown y Spectre, que también se basaban en la capacidad del procesador de "predecir" los datos que va a necesitar; los ataques aprovechaban esto para obtener los datos saltándose la seguridad.

En el caso de "Take a Way", los investigadores han conseguido desarrollar dos tipos de ataques. Con "Collide+Probe" (colisionar+sondear) es posible monitorizar el acceso a la memoria de datos que comparten el mismo núcleo, y con "Load+Reload" (Cargar+recargar) es posible obtener los datos incluso si usan núcleos diferentes.

No tan peligroso

Por lo tanto, un atacante que aproveche esta vulnerabilidad podría usar malware para obtener datos de otros programas. Los investigadores lo han conseguido desarrollando código en Javascript y usando servicios en la nube.

Sin embargo, la verdadera duda es si realmente esto supone un peligro mayor del que ya teníamos. La respuesta de AMD a la publicación de la vulnerabilidad ha sido algo polémica, porque ha decidido no desarrollar un parche, pese a ser informada el pasado agosto de 2019.

El motivo, según AMD, es que este tipo de ataque no se diferencia de otros basados en ejecución especulativa, como Spectre. Por lo tanto, las medidas tomadas entonces deberían seguir valiendo.

Los investigadores han rechazado esa explicación, afirmando que AMD nunca contactó con ellos después de avisar de la vulnerabilidad, y que los ataques que crearon siguen funcionando.

Al mismo tiempo, algunos de los investigadores han reconocido que los ataques no son tan graves como Meltdown, por ejemplo, que permiten obtener todos los datos de cualquier programa que ejecutemos. En el caso de la vulnerabilidad de AMD, la cantidad de información que se podría extraer es mucho menor y para la mayoría de usuarios, sería probablemente irrelevante.