Detectada una vulnerabilidad en AMD que ataca a todas sus CPU desde 2011

Detectada una vulnerabilidad en AMD que ataca a todas sus CPU desde 2011

Javier López

Intel lleva más de un año y medio trabajando en paliar las vulnerabilidades que van saliendo en sus procesadores mediante diversas técnicas de ejecución especulativa. Hasta ahora, AMD se ha librado de prácticamente todas ellas debido a las diferencias de arquitectura, pero tal y como avisaron varios expertos, terminaría por caer en mayor o menor medida. El día ha llegado y hoy sabemos que todos sus procesadores desde 2011 están afectados por una nueva vulnerabilidad catalogada dentro de las Take a Way.

A diferencia de Intel, AMD se ha visto expuesta mediante una nueva vulnerabilidad que es posible explotar mediante dos tipos distintos de ataque, los cuales han sido descubiertos mediante ingeniería inversa y afectan a un área no documentada de la caché de datos L1.

Esto es importante, porque desde 2011 esta caché ha sufrido algunas mejoras, pero el fundamento de funcionamiento no ha variado demasiado, lo que permite a la vulnerabilidad acceder a datos sensibles en todos los procesadores desde 2011 hasta hoy, escritorio y servidor sin distinción.

Take a Way: la CPU queda expuesta ante ataques locales o desde la nube

amd-ryzen-5-3600-3600x

Aunque la vulnerabilidad parece no ser tan grave como otras encontradas en Intel, si es cierto que cuenta con la particularidad de que puede ser atacada incluso desde la nube, lo que hace mucho más fácil el posible robo de información sensible desde cualquier parte del mundo.

Según afirman los investigadores, el ataque puede ser llevado a cabo desde Firefox o Chrome sin ningún problema:

Realizamos ingeniería inversa del predictor de la caché L1D de AMD en micro arquitecturas de 2011 a 2019, lo que resultó en dos nuevas técnicas de ataque dentro de Take a Way.

La primera es Collide + Probe, el cual permite monitorear los accesos a la memoria en el núcleo lógico actual sin el conocimiento de direcciones físicas o memoria compartida. La segunda toma por nombre Load + Reload obtiene rastros precisos de acceso a la memoria de aplicaciones ubicadas en el mismo núcleo físico, donde ambas se basan en los ataques de Spectre.

Evaluamos nuestras nuevas técnicas de ataque en diferentes escenarios. Establecimos un canal secreto de alta velocidad y lo utilizamos en un ataque Spectre para filtrar datos secretos del núcleo. Además, redujimos la entropía de diferentes implementaciones de ASLR a partir de código nativo y JavaScript. Finalmente, recuperamos una clave de una implementación vulnerable de AES.

Los descubridores de dicha vulnerabilidad forman parte de la Universidad Tecnológica de Graz, donde varios alumnos han sido los descubridores de algunas vulnerabilidades en CPUs Intel, por lo cual la compañía los ha recompensado y ha proporcionado fondos de investigación.

De momento no hay parche o mitigación posible, pero tanto AMD como Microsoft están trabajando en ella.

AMD contesta, pero no habla sobre la vulnerabilidad en sí misma

AMD-Zen-2-Cache-Hierarchy

Hace menos de 24 horas AMD ha salido a la palestra para intentar aportar algo de luz a todo este asunto y sus declaraciones son bastante sorprendentes.

En ellas se afirma que son conscientes del documento técnico que asegura que un actor malintencionado podría manipular una función relacionada con la memoria caché para transmitir datos del usuario de forma no intencionada.

Los investigadores emparejan esta ruta de datos con softwares diversos, mitigados o vulnerabilidades de ejecución especulativa. AMD cree que estos no son nuevos ataques basados en la especulación.

Por lo tanto, la compañía recomienda las siguientes prácticas para ayudar a mitigar los problemas en canales secundarios:

  • Mantener actualizado su sistema operativo operando con las últimas versiones de revisiones de software y firmware de la plataforma, que incluyen mitigaciones existentes para vulnerabilidades basadas en especulaciones.
  • Seguir metodologías de codificación seguras.
  • Implementación de las últimas versiones parcheadas de bibliotecas críticas, incluidas las susceptibles a ataques de canal lateral.
  • Utilizar prácticas informáticas seguras y ejecutar software antivirus.

Como vemos, la respuesta ha sido tan ambigua como poco clarificadora: ni desmienten ni afirman ni ofrecen una solución real al problema en concreto, todo son medidas generales donde al parecer podría mantenerse el problema o no.

¿Por qué AMD no reconoce realmente el problema? ¿acaso no tiene solución paliativa por software? Los investigadores sugieren soluciones por hardware y software, donde esto podría implicar en una pérdida de rendimiento igual o similar a la que azotó a Intel en su debido momento.

De momento, lo único que podemos hacer es esperar las posibles soluciones que ofrezca la compañía.