
La compañía de semiconductores AMD advierte sobre un nuevo conjunto de vulnerabilidades que afectan una amplia gama de chipsets que podrían conducir a la divulgación de información.
Un defecto, conocido colectivamente como ataques de programador transitorio (TSA), se manifiesta en forma de un canal lateral especulativo de una CPU que aprovecha el momento de la ejecución de instrucciones en condiciones específicas de microarquitectura.
«En algunos casos, los atacantes pueden usar esta información de tiempo para inferir datos de otros contextos, lo que puede conducir a una fuga de información», dijo AMD en su asesoramiento.
La compañía dijo que el problema fue revelado como parte de un estudio publicado por investigadores de Microsoft y ETH Zurich sobre la prueba de estrés, la separación entre dominios de seguridad, como máquinas virtuales, núcleos y procesos, para probar las CPU modernas contra ataques de ejecución especulativos, como crisis y predicciones.
Después de la divulgación responsable en junio de 2024, el problema se asigna a los siguientes identificadores de CVE –
CVE-2024-36350 (puntaje CVSS: 5.6): una vulnerabilidad de ejecución temporal en algunos procesadores AMD permite a un atacante inferir datos de tiendas anteriores, potencialmente potencialmente en la información privilegiada por cVe-2024-36357 (puntaje CVSS: 5.6) e podría inferir una vulnerabilidad de la AMD de la AMD. Fugas de información confidencial a través de los límites privilegiados CVE-2024-36348 (puntaje CVSS: 3.8): las vulnerabilidades de ejecución transitoria en algunos procesadores AMD pueden hacer que los procesos del usuario se infieran eléctricamente incluso cuando la funcionalidad UMIP (3) está habilitada. Algunas vulnerabilidades del procesador AMD permiten que los procesos de usuario infieran TSC_AUX, incluso si tales lecturas están deshabilitadas, lo que podría conducir a una fuga de información

AMD describe la TSA como una «nueva clase de canales laterales especulativos» que afecta a la CPU, diciendo que ha liberado actualizaciones de microcódigos para los procesadores afectados.
Procesador AMD EPYC de tercera generación de 4ta generación EPYC EPYC AMD Instinct MI300A AMD Ryzen 5000 Serie Processor de escritorio AMD Ryzen 5000 Serie de escritorio Procesador Ryzen 7000 Procesador de escritorio de escritorio AMD Ryzen 8000 Procesador de procesador 6000 Procesador con Radzen Ryzen 7035 Procesor RadeMen Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Rade Graphic 5000 Series Processor Radeon Graphics 7000 Series Processor Radeon Graphics 7040 Series Processor Embedded 7003 AMD EPYC Embedded 8004 AMD EPYC Embedded 9004 AMD EPYC Embedded 97×4 AMD RYZEN EMBEDDED 5000 AMD RYZEN EMBEDDED 7000 AMD Ryzen Embedded V3000
La compañía también señaló que las instrucciones que leen datos de la memoria pueden experimentar lo que se llama «mal cumplimiento». Esto ocurre cuando el hardware de la CPU espera que la instrucción de carga se complete rápidamente, pero existen condiciones para evitar que suceda –
En este caso, la operación dependiente se puede programar para realizarse antes de detectar la finalización falsa. Los datos relacionados con esa carga se consideran inválidos porque la carga no se completó realmente. El paquete se volverá a completar con éxito más tarde, y las operaciones dependientes vuelven a hacer datos válidos cuando están listos.
A diferencia de otros comportamientos especulativos, como las tiendas de pronóstico de reenvío, experimentar finalizaciones falsas no da como resultado el flash final de la tubería. Los datos no válidos asociados con una finalización incorrecta pueden transferirse a las operaciones que dependen de las operaciones que consumen estos datos, pero que no intentarán recuperar datos o actualizar la caché o el estado TLB. Por lo tanto, este valor de datos no válido no se puede inferir utilizando métodos de canal lateral transitorio estándar.
Sin embargo, en los procesadores afectados por la TSA, los datos no válidos pueden afectar el momento de otras instrucciones ejecutadas por la CPU de una manera que un atacante puede detectar.
Chipmaker dijo que ha identificado dos variantes, TSA, TSA-L1 y TSA-SQ, basada en la memoria caché de datos L1 o la cola de almacenes CPU, basada en la fuente de datos no válidos asociados con la finalización incorrecta.

En el peor de los casos, los ataques exitosos realizados con fallas TSA-L1 o TSA-SQ pueden conducir a aplicaciones de usuario desde el núcleo del sistema operativo, a máquinas virtuales invitadas del hipervisor o a la fuga de información entre dos aplicaciones de usuario.
TSA-L1 es causado por un error en cómo el caché L1 usa microtags para la búsqueda de caché de datos, pero una vulnerabilidad de TSA-SQ surge cuando los datos que requieren una instrucción de carga se recuperan incorrectamente de la cola de almacén de CPU cuando los datos aún no están disponibles. En cualquier caso, un atacante puede inferir los datos utilizados por la tienda anterior, incluso si reside en el caché L1, o si la tienda anterior funciona en un contexto diferente.
Dicho esto, para explotar estos defectos, un atacante debe tener la capacidad de obtener acceso malicioso a la máquina y ejecutar código arbitrario. No es explotable a través de sitios web maliciosos.
«Las condiciones requeridas para explotar la TSA suelen ser temporales, ya que tanto las colas de microtag como de la tienda se actualizan después de que la CPU detecta una finalización incorrecta», dijo AMD.
«Como resultado, para garantizar la eliminación de datos, un atacante normalmente necesitaría poder llamar a la víctima varias veces y crear condiciones para su finalización falsa repetidamente. Esto es posible si el atacante y la víctima tienen rutas de comunicación existentes, como la aplicación y el kernel del sistema operativo».
Source link
