Los investigadores de seguridad han descubierto otra vulnerabilidad que afecta a numerosos microprocesadores AMD e Intel más antiguos que podrían eludir las defensas actuales y dar lugar a ataques de ejecución especulativa basados en Spectre. Apodados Retbleed por los investigadores de ETH Zurich Johannes Wikner y Kaveh Razavi, los problemas se rastrean como CVE-2022-29900 (AMD) y CVE-2022-29901 (Intel), y los fabricantes de chips lanzan mitigaciones de software como parte de un proceso de divulgación coordinado.
Impacto de la vulnerabilidad
Retbleed también es la última incorporación a una clase de ataques de Spectre conocidos como Spectre-BTI (CVE-2017-5715 o Spectre-V2), que explotan los efectos secundarios de una técnica de optimización llamada ejecución especulativa por medio de un canal lateral de sincronización para engañar un programa para acceder a ubicaciones arbitrarias en su espacio de memoria y filtrar información privada.
La Speculative execution intenta llenar la canalización de instrucciones de un programa al predecir qué instrucción se ejecutará a continuación para obtener un aumento de rendimiento, mientras que también deshace los resultados de la ejecución si la suposición resulta ser incorrecta.
Spectre
Los ataques como Spectre se aprovechan del hecho de que estas instrucciones ejecutadas erróneamente, como resultado de la predicción errónea, están destinadas a dejar rastros de la ejecución en el caché, lo que da como resultado un escenario en el que un programa no autorizado puede engañar al procesador para que ejecute rutas de código incorrectas y inferir datos secretos pertenecientes a la víctima.
Productos afectados
Desktop
- AMD Athlon™ X4 processor
- AMD Ryzen™ Threadripper™ PRO processor
- 2nd Gen AMD Ryzen™ Threadripper™ processors
- 3rd Gen AMD Ryzen™ Threadripper™ processors
- 7th Generation AMD A-Series APUs
- AMD Ryzen™ 2000 Series Desktop processors
- AMD Ryzen™ 3000 Series Desktop processors
- AMD Ryzen™ 4000 Series Desktop processors with Radeon™ graphics
Mobile
- AMD Ryzen™ 2000 Series Mobile processor
- AMD Athlon™ 3000 Series Mobile processors with Radeo
Graphics
- AMD Ryzen™ 3000 Series Mobile processors or 2nd Gen AMD Ryzen™ Mobile processors with Radeon™ graphics
- AMD Ryzen™ 4000 Series Mobile processors with Radeon™ graphics
- AMD Ryzen™ 5000 Series Mobile processors with Radeon™ graphics
Chromebook
- AMD Athlon™ Mobile processors with Radeon™ graphics
Server
- 1st Gen AMD EPYC™ processors
- 2nd Gen AMD EPYC™ processors
Mitigación
Los desarrolladores de kernel e hipervisor han desarrollado mitigaciones en coordinación con Intel y AMD. Mitigar Retbleed en el kernel de Linux requirió un esfuerzo sustancial, que involucró cambios en 68 archivos, 1783 líneas nuevas y 387 líneas eliminadas. Las evaluaciónes de rendimiento muestran que, lamentablemente, mitigar Retbleed ha resultado costoso: se ha medido entre un 14 % y un 39 % de sobrecarga con los parches de AMD e Intel, respectivamente. La mitigación de los JMP fantasma con un vaciado genérico de la unidad predictora de rama en las transiciones del kernel impone una sobrecarga de rendimiento de hasta un 209 %.
Para mayor información se debe dirigir a la pagina oficial.
Recomendaciones
- Aplicar las mitigaciones correspondientes a los productos afectados.
Para mayor información
- https://thehackernews.com/2022/07/new-retbleed-speculative-execution.html
- https://www.amd.com/en/corporate/product-security/bulletin/amd-sb-1037
- https://comsec.ethz.ch/research/microarch/retbleed/
- https://www.intel.com/content/www/us/en/developer/articles/technical/software-security-guidance/advisory-guidance/return-stack-buffer-underflow.html