Una nueva vulnerabilidad ha aparecido en el mundo de la informática y su nombre es Zenbleed, un fallo que, de momento, solo afecta a ciertos procesadores o CPUs (Unidad Central de Procesamiento) de la marca AMD. Específicamente afecta a los procesadores de la empresa basados en la arquitectura Zen2, la segunda generación de sus núcleos Zen.
En dicha arquitectura existen algunas de las versiones más conocidas y exitosas de AMD, como es el caso de los procesadores Ryzen 5 3600, Ryzen 7 3700 y Ryzen 9 3900X, comercializados en todo el mundo. Su éxito en ventas y el peligro de la vulnerabilidad Zenbleed los convierte en una amenaza para la seguridad de quienes tienen un procesador de estas características sin los parches de seguridad necesarios en su computador.
Zenbleed, o como sacar secretos de una CPU
Para empezar, vamos a explicar un poco qué es Zenbleed. Se trata de una vulnerabilidad descubierta por Tavis Ormandy, un ingeniero que trabaja en Google Information Security. Fue él, junto a la ayuda de tres amigos, Eduardo Vela Nava, Alexandra Sandulescu y el analista Josh Eads, quienes hicieron posible la explotación del fallo.
La vulnerabilidad explota un error de los núcleos Zen2 de AMD durante el manejo de registros de información del procesador o CPU. Recordemos que los CPUs son el “cerebro” de nuestros computadores, ya que toda la información pasa por ellos. Procesan la información gracias a una serie de registros e instrucciones que llevan grabadas. Pues bien, los ingenieros de AMD han cometido un error en dichas instrucciones y registros que permite a los atacantes obtener información delicada directamente de los CPUs. Todo ello, sin que el usuario se entere de ello.
¿Qué clase de información privada puede conseguirse por este método? Desde todo lo que ejecutas en tu PC (documentos de Office y demás), hasta las claves privadas de tu navegador (ej: si tienes claves guardadas de sesión), sistemas (la clave administrativa de tu computador Windows o Linux) y, por supuesto, las criptomonedas que tengas en el computador vulnerable. Estos son los motivos por los que Zenbleed ha sido clasificado como fallo grave. Ello ha llevado a AMD a responder rápidamente, generando las actualizaciones pertinentes.
Deep-dive por la vulnerabilidad
Para lograrlo, Zenbleed explota un fallo en el manejo de registros AVX (Advanced Vector Extensions o Extensiones Avanzadas de Vectores). Se trata de unos registros e instrucciones especiales que permiten a los procesadores trabajar con registros de vectores de gran tamaño. La utilidad de estas extensiones es enorme, porque permiten que los CPUs puedan calcular de forma muy rápida grandes números, como los que se necesitan en criptografía, la base de las criptomonedas y las comunicaciones seguras en Internet.
Elon Musk tiene todo a favor para hacer de X la 1ª superapp de Occidente
En el manejo de estas instrucciones, el espacio de los registros debería limpiarse a cero para que la información sea borrada y anulada. Generalmente, esto sucede cuando no se usa todo el espacio del registro o las instrucciones ya están en otro estado de ejecución. Sin embargo, en ciertas condiciones, esta limpieza a cero no sucede, lo que significa que la información sensible sigue allí disponible. Como resultado, cualquiera que conozca cómo acceder a ella puede disparar el fallo, leer la información y obtenerla para sí.
Según Ormandy, Zenbleed es el resultado de:
Si eliminas la primera palabra de la cadena «hola mundo», ¿cuál debería ser el resultado? Esta es la historia de cómo descubrimos que la respuesta podría ser tu contraseña root (la contraseña de tu sistema).
Es decir, un fallo que permite leer información realmente delicada de nuestros procesadores. Y es delicada porque AV, se utiliza de forma muy activa en software de criptografía. Por ejemplo, desarrollos como OpenSSL y LibreSSL usan AVX para sus funciones criptográficas de forma intensiva.
Afecta a los proyectos de cripto
¿Qué otros desarrollos o programas pueden verse afectados? Por ejemplo, si usas Nostr en tu navegador Web (ejemplo, con el servicio Iris), con Zenbleed un atacante puede obtener la clave privada de tu cuenta. Esto sería posible porque tu navegador usa AVX para procesar operaciones de criptografía y al ser este set de instrucciones el más afectado, abre las puertas para el ataque. Esto no es un fallo de Nostr, de la aplicación Iris o del navegador que utilices, es un fallo del procesador. Por tanto, es difícil de evitar si no tienes los parches y actualizaciones de seguridad necesarios. Lo mejor en este caso es evitar este tipo de aplicaciones, especialmente si tienes y usas un PC con procesador AMD basado en Zen2.
Primer ministro japonés: Web3 es parte del nuevo capitalismo
Otro proyecto que se ve afectado de forma indirecta es Bitcoin Core. Esto se debe a que Bitcoin Core usa AVX para muchas operaciones criptográficas, como la generación de la clave que protege a tu nodo. Incluso, la clave privada que permite controlar el monedero. Por ejemplo, bastaría con abrir tu Bitcoin Core, ingresar la clave y operar con el nodo, para que un atacante que haya infectado tu computador pueda obtener estos datos privados. Nuevamente, este fallo no está directamente en Bitcoin Core, sino en el procesador que usas y que está afectado por Zenbleed.
Más grande, más peligro
Llevándolo a otro nivel, Zenbleed podría ocasionar un verdadero caos en plataforma como un exchange. Imagina un computador que maneja de forma continua a cientos de usuarios, claves criptográficas secretas y más. Todo ello usando AVX, porque es una necesidad ineludible para obtener buen rendimiento de cara a los usuarios. Si un exchange o plataforma cripto tiene sus servidores sobre núcleos Zen2, significa que está en el fuego y que debe tomar contramedidas para evitar ser vulnerable.
En esencia, cualquier software que use AVX y esté ejecutándose en un procesador AMD con núcleos Zen2 es vulnerable. Bien sea de forma directa o indirecta, ya que el exploit puede realizarse desde prácticamente cualquier medio: con malware instalándose en tu computador o incluso con un código JavaScript oculto en una Web que realice el ataque de forma silenciosa.
No todo está protegido
Si bien el fallo es grave, AMD ya está trabajando para solucionar el problema. Sin embargo, aquí hay que hacer algunas notas al margen. Si bien, AMD ya ha empezado a liberar parches para sus procesadores, no todos recibirán las actualizaciones al mismo tiempo, lo que significa que distintas versiones de Zen2 serán vulnerables por más o menos tiempo. El boletín de seguridad de AMD indica que los CPUs vulnerables serán atendidos por etapas desde julio hasta diciembre de 2023.
De momento, la única plataforma totalmente parcheada de forma oficial es AMD EPYC basada en Zen2. El resto se mantiene vulnerable a nivel de firmware (un código que se ejecuta en las CPU y que soluciona este fallo). Esto significa que existirán personas y empresas con la vulnerabilidad y con el potencial de daños muchos más tiempo que otras.
Esto ha llevado a gigantes como Google, Amazon, Cloudflare y Microsoft a tomar medidas de seguridad internas en sus productos para proteger sus infraestructuras vulnerables. En Cloudflare, por ejemplo, ofrecen un completo post hablando de la vulnerabilidad y tranquilizando a sus usuarios y clientes sobre la seguridad de la plataforma. En Amazon, donde muchas de sus instancias usan procesadores Zen2 de AMD, también han calmado las aguas indicando que están monitoreando sus servicios y colocando contramedidas para evitar la explotación del fallo.
Protecciones en el mundo del software libre
En GNU/Linux, los desarrolladores han enviado un parche y una serie de actualizaciones de firmware para evitar el problema. Sin embargo, esto solo protege a ciertos modelos de Zen2, por lo que la vulnerabilidad sigue abierta en ese sentido para muchas personas y empresas. La misma situación se repite en Windows y en sistemas como FreeBSD, donde los parches dependen en gran medida de la liberación que hará AMD. Si eres de los afectados por el fallo, deberás estar atento a estas actualizaciones de seguridad.
De momento, el único sistema operativo que ha salido mejor parado del problema es OpenBSD. Theo de Raadt, su creador ha aclarado que el sistema se construye en base optimizaciones y principios distintos, por lo que el problema de seguridad es menor, en comparación con Linux o Windows. Sin embargo, el equipo también ha habilitado una serie de mejoras para actualizar el firmware de los computadores que usen procesador AMD, como medida adicional de seguridad para evitar otros problemas futuros.
Con todo esto, seguiremos escuchando acerca de Zenbleed durante mucho tiempo. Especialmente, porque la comunidad se ha avocado a probar si este fallo también está presente en otros CPUs, como los de Intel y los derivados ARM. De detectar el fallo, o parecidos, dentro del resto de CPUs, estaríamos frente a una de las vulnerabilidades más grandes grandes de la informática. Al nivel de vulnerabilidades como Spectre y Meltdown, que llevan años entre nosotros y que todavía no han sido totalmente solucionadas.
También puedes seguirnos en nuestros canales de Telegram y Twitter
- Así es Llama 3.2, la nueva versión IA de Meta que entiende gráficos e imágenes - 3 octubre, 2024
- Por qué importantes países se oponen al uso de CBDCs - 2 octubre, 2024
- Kolokium lanza KOLFinance, una plataforma para tokenización de activos - 1 octubre, 2024