Mantenerse a la vanguardia de la vulnerabilidad de AMD conocida como "Zenbleed"

Cómo Cloudflare se adelanta a la vulnerabilidad AMD Zen conocida como < /figure

El equipo de seguridad de la información de Google reveló hoy una nueva falla en los procesadores Zen 2 de AMD en una publicación de blog. La falla 'Zenbleed' afecta a toda la pila de productos Zen 2, desde los procesadores del centro de datos EPYC de AMD hasta los procesadores Ryzen 3000, y puede explotarse para robar datos confidenciales procesados ​​en el procesador, incluido el cifrado de claves y las credenciales de inicio de sesión. Actualmente, el ataque solo puede ser ejecutado por un atacante capaz de ejecutar código nativo en la máquina afectada. Aunque puede existir la posibilidad de ejecutar este ataque a través del navegador en la máquina remota, esto aún no se ha demostrado.

La red de Cloudflare incluye servidores que utilizan la línea de procesadores Zen de AMD. Estamos parcheando toda nuestra flota de servidores potencialmente afectados con microcódigo AMD para mitigar esta posible vulnerabilidad. Aunque nuestra red pronto será segura, continuaremos monitoreando cualquier señal de intento de explotar la vulnerabilidad e informaremos cualquier intento que descubramos en la naturaleza. Para comprender mejor la vulnerabilidad de Zenbleed, siga leyendo.

Fondo

Comprender cómo un procesador ejecuta programas es crucial para comprender cómo funciona el ataque. La CPU trabaja con una unidad de procesamiento aritmético llamada ALU. La ALU se utiliza para realizar tareas matemáticas. Las operaciones como la suma, la multiplicación y los cálculos de coma flotante entran en esta categoría. La señal del reloj del procesador controla los circuitos digitales específicos de la aplicación que utiliza la ALU para realizar estas funciones.

Para que los datos lleguen a la ALU, deben pasar por una serie de sistemas de almacenamiento. Estos incluyen la memoria secundaria, la memoria principal, la memoria caché y los registros del procesador. Dado que los registros de la CPU son el objetivo de este ataque, profundizaremos un poco más. Dependiendo del diseño de la computadora, los registros del procesador pueden almacenar 32 o 64 bits de información. La ALU puede acceder a los datos de estos registros y completar la operación.

A medida que aumenta la demanda de procesadores, surge la necesidad de medios más rápidos para realizar cálculos. Advanced Vector Extensions (o AVX) se desarrollaron para acelerar el procesamiento de grandes conjuntos de datos por parte de las aplicaciones. AVX son extensiones de la arquitectura del conjunto de instrucciones x86, que son relevantes para los procesadores x86 de Intel y AMD. Con la ayuda de software compatible y el conjunto de instrucciones adicionales, los procesadores compatibles podrían manejar tareas más complejas. La principal motivación para desarrollar este conjunto de instrucciones fue acelerar las operaciones asociadas con la compresión de datos, el procesamiento de imágenes y los cálculos criptográficos.

Los datos vectoriales utilizados por las instrucciones AVX se almacenan en 16 registros YMM, cada uno de los cuales tiene un tamaño de 256 bits. El registro Y del conjunto de registros XMM es donde se almacenan los valores de 128 bits, de ahí el nombre. Todas las instrucciones de las familias de aritmética, lógica y trigonometría del estándar AVX utilizan los registros YMM. También se pueden usar para contener máscaras: datos que se usan para filtrar ciertos componentes del vector.

Las operaciones vectorizadas se pueden realizar con gran eficiencia usando registros YMM. Las aplicaciones que procesan grandes cantidades de datos tienen mucho que ganar, pero se encuentran cada vez más en el centro de la actividad maliciosa.

Por ejemplo, la biblioteca glibc usa instrucciones AVX para acelerar las operaciones de funciones de cadena como strlen, memcpy o memcmp. Estas instrucciones se utilizan a menudo para procesar datos confidenciales, como contraseñas.

El ataque

Los procesadores modernos optimizan en gran medida el tiempo de ejecución al ejecutar microoperaciones fuera de servicio. Para mejorar el tiempo de ejecución de la resolución de las instrucciones de bifurcación, la unidad de predicción de bifurcación predice el resultado de las bifurcaciones. Según la predicción, las instrucciones se ejecutarán especulativamente (sin embargo, se retiran para garantizar la precisión). En caso de que la predicción fuera incorrecta, se cancelan las instrucciones y se ejecuta la otra rama. Sin embargo, las huellas que quedan en los componentes microarquitectónicos, p. en el caché, todavía están visibles y se pueden recuperar, por ejemplo, a través de un ataque de canal lateral del caché.

Debido a su uso potencial para almacenar información privada, los registros AVX son particularmente susceptibles a este tipo de ataque...

Mantenerse a la vanguardia de la vulnerabilidad de AMD conocida como "Zenbleed"
Cómo Cloudflare se adelanta a la vulnerabilidad AMD Zen conocida como < /figure

El equipo de seguridad de la información de Google reveló hoy una nueva falla en los procesadores Zen 2 de AMD en una publicación de blog. La falla 'Zenbleed' afecta a toda la pila de productos Zen 2, desde los procesadores del centro de datos EPYC de AMD hasta los procesadores Ryzen 3000, y puede explotarse para robar datos confidenciales procesados ​​en el procesador, incluido el cifrado de claves y las credenciales de inicio de sesión. Actualmente, el ataque solo puede ser ejecutado por un atacante capaz de ejecutar código nativo en la máquina afectada. Aunque puede existir la posibilidad de ejecutar este ataque a través del navegador en la máquina remota, esto aún no se ha demostrado.

La red de Cloudflare incluye servidores que utilizan la línea de procesadores Zen de AMD. Estamos parcheando toda nuestra flota de servidores potencialmente afectados con microcódigo AMD para mitigar esta posible vulnerabilidad. Aunque nuestra red pronto será segura, continuaremos monitoreando cualquier señal de intento de explotar la vulnerabilidad e informaremos cualquier intento que descubramos en la naturaleza. Para comprender mejor la vulnerabilidad de Zenbleed, siga leyendo.

Fondo

Comprender cómo un procesador ejecuta programas es crucial para comprender cómo funciona el ataque. La CPU trabaja con una unidad de procesamiento aritmético llamada ALU. La ALU se utiliza para realizar tareas matemáticas. Las operaciones como la suma, la multiplicación y los cálculos de coma flotante entran en esta categoría. La señal del reloj del procesador controla los circuitos digitales específicos de la aplicación que utiliza la ALU para realizar estas funciones.

Para que los datos lleguen a la ALU, deben pasar por una serie de sistemas de almacenamiento. Estos incluyen la memoria secundaria, la memoria principal, la memoria caché y los registros del procesador. Dado que los registros de la CPU son el objetivo de este ataque, profundizaremos un poco más. Dependiendo del diseño de la computadora, los registros del procesador pueden almacenar 32 o 64 bits de información. La ALU puede acceder a los datos de estos registros y completar la operación.

A medida que aumenta la demanda de procesadores, surge la necesidad de medios más rápidos para realizar cálculos. Advanced Vector Extensions (o AVX) se desarrollaron para acelerar el procesamiento de grandes conjuntos de datos por parte de las aplicaciones. AVX son extensiones de la arquitectura del conjunto de instrucciones x86, que son relevantes para los procesadores x86 de Intel y AMD. Con la ayuda de software compatible y el conjunto de instrucciones adicionales, los procesadores compatibles podrían manejar tareas más complejas. La principal motivación para desarrollar este conjunto de instrucciones fue acelerar las operaciones asociadas con la compresión de datos, el procesamiento de imágenes y los cálculos criptográficos.

Los datos vectoriales utilizados por las instrucciones AVX se almacenan en 16 registros YMM, cada uno de los cuales tiene un tamaño de 256 bits. El registro Y del conjunto de registros XMM es donde se almacenan los valores de 128 bits, de ahí el nombre. Todas las instrucciones de las familias de aritmética, lógica y trigonometría del estándar AVX utilizan los registros YMM. También se pueden usar para contener máscaras: datos que se usan para filtrar ciertos componentes del vector.

Las operaciones vectorizadas se pueden realizar con gran eficiencia usando registros YMM. Las aplicaciones que procesan grandes cantidades de datos tienen mucho que ganar, pero se encuentran cada vez más en el centro de la actividad maliciosa.

Por ejemplo, la biblioteca glibc usa instrucciones AVX para acelerar las operaciones de funciones de cadena como strlen, memcpy o memcmp. Estas instrucciones se utilizan a menudo para procesar datos confidenciales, como contraseñas.

El ataque

Los procesadores modernos optimizan en gran medida el tiempo de ejecución al ejecutar microoperaciones fuera de servicio. Para mejorar el tiempo de ejecución de la resolución de las instrucciones de bifurcación, la unidad de predicción de bifurcación predice el resultado de las bifurcaciones. Según la predicción, las instrucciones se ejecutarán especulativamente (sin embargo, se retiran para garantizar la precisión). En caso de que la predicción fuera incorrecta, se cancelan las instrucciones y se ejecuta la otra rama. Sin embargo, las huellas que quedan en los componentes microarquitectónicos, p. en el caché, todavía están visibles y se pueden recuperar, por ejemplo, a través de un ataque de canal lateral del caché.

Debido a su uso potencial para almacenar información privada, los registros AVX son particularmente susceptibles a este tipo de ataque...

What's Your Reaction?

like

dislike

love

funny

angry

sad

wow