Hertzbleed, una nueva forma de ataques de canal lateral que afectan tanto a AMD como a Intel
Hace poco, un equipo de investigadores de la Universidad de Texas, Illinois y la Universidad de Washington dieron a conocer los detalles de una nueva familia de ataques de canal lateral (ya catalogados bajo CVE-2022-23823, CVE-2022-24436), cuyo nombre en código es Hertzbleed.
Hertzbleed, es un método de ataque propuesto, que se basa en las características del control dinámico de frecuencia en los procesadores modernos y afecta a todas las CPU Intel y AMD actuales. Potencialmente, el problema puede manifestarse en procesadores de otros fabricantes que admitan cambios de frecuencia dinámicos, como los sistemas ARM, pero el estudio se limitó a probar chips Intel y AMD.
Para optimizar el consumo de energía y evitar el sobrecalentamiento, los procesadores cambian dinámicamente la frecuencia dependiendo de la carga, lo que genera un cambio en el rendimiento y afecta el tiempo de ejecución de las operaciones (un cambio en la frecuencia de 1 Hz conduce a un cambio en el rendimiento de 1 ciclo por ciclo segundo).
En el curso del estudio, se encontró que bajo ciertas condiciones en los procesadores AMD e Intel, el cambio de frecuencia se correlaciona directamente con los datos que se procesan.
Con base en el análisis de diferencias en el tiempo de ejecución de operaciones con diferentes datos, es posible restaurar indirectamente la información utilizada en los cálculos. Al mismo tiempo, en redes de alta velocidad con retrasos constantes predecibles, se puede realizar un ataque de forma remota,
Si el ataque tiene éxito, los problemas identificados permiten determinar claves privadas a partir del análisis del tiempo de cómputo en bibliotecas criptográficas mediante algoritmos en los que los cálculos matemáticos se realizan siempre en tiempo constante, independientemente de la naturaleza de los datos que se procesan. Dichas bibliotecas se consideraban protegidas contra ataques a través de canales de terceros, pero resultó que el tiempo de cálculo está determinado no solo por el algoritmo, sino también por las características del procesador.
Como ejemplo práctico que muestra el realismo de la aplicación del método propuesto:
Se demostró un ataque a la implementación del mecanismo de encapsulación de claves SIKE (Supersingular Isogeny Key Encapsulation), que entró en la final de la competencia de criptosistemas poscuánticos realizada por EE.UU. Instituto Nacional de Estándares y Tecnología (NIST), y se posiciona como protegido contra ataques de terceros.
Durante el experimento, usando una nueva variante del ataque basada en el texto cifrado seleccionado(selección gradual basada en manipular el texto cifrado y obtener su descifrado) logró recuperar completamente la clave utilizada para el cifrado tomando medidas desde un sistema remoto, a pesar del uso de una implementación SIKE con tiempo de cómputo constante.
Se necesitaron 36 horas para determinar la clave de 364 bits mediante la implementación de CIRCL y 89 horas para PQCrypto-SIDH.
Intel y AMD han reconocido la vulnerabilidad de sus procesadores ante el problema, pero no planean bloquear la vulnerabilidad a través de una actualización de microcódigo, ya que no será posible reparar la vulnerabilidad en el hardware sin un impacto significativo en el rendimiento
En cambio, los desarrolladores de bibliotecas criptográficas reciben recomendaciones sobre cómo bloquear mediante programación la fuga de información al realizar cálculos confidenciales.
Cloudflare y Microsoft ya agregaron esta protección a sus implementaciones de SIKE, lo que resultó en una ralentización del 5 % en el rendimiento de CIRCL y PQCrypto-SIDH.en un 11%. Como otra solución para bloquear la vulnerabilidad en el BIOS o en el controlador, puede desactivar los modos «Turbo Boost», «Turbo Core» o «Precision Boost», pero este cambio provocará una disminución drástica del rendimiento.
Intel, Cloudflare y Microsoft fueron notificados del problema en el tercer trimestre de 2021 y AMD en el primer trimestre de 2022, pero a pedido de Intel, la divulgación pública del problema se retrasó hasta el 14 de junio de 2022.
El problema se ha confirmado en los procesadores de escritorio y portátiles basados en la microarquitectura Intel Core de 8.ª a 11.ª generación, así como en una variedad de procesadores de servidor, móviles y de escritorio AMD Ryzen, Athlon, A-Series y EPYC (los investigadores demostraron el método en Ryzen CPUs con microarquitectura Zen).2 y Zen 3).
Finalmente para quienes estén interesados en poder conocer más al respecto, pueden consultar los detalles en el siguiente enlace.