Hertzbleed es una nueva familia de ataques de canal lateral que afectan a las CPU modernas

Un equipo de investigadores de la Universidad de Texas, la Universidad de Illinois y la Universidad de Washington han revelado información sobre una nueva familia de ataques de canal lateral (CVE-2022-23823, CVE-2022-24436), con nombre en código Hertzbleed. El método de ataque propuesto se basa en las características del control dinámico de frecuencia de los procesadores modernos y afecta a todas las CPU Intel y AMD actuales. Potencialmente, el problema también puede manifestarse en procesadores de otros fabricantes que admiten cambios dinámicos de frecuencia, por ejemplo, en sistemas ARM, pero el estudio se limitó a probar chips Intel y AMD. Los textos fuente con la implementación del método de ataque están publicados en GitHub (la implementación se probó en una computadora con una CPU Intel i7-9700).

Para optimizar el consumo de energía y evitar el sobrecalentamiento, los procesadores cambian dinámicamente la frecuencia según la carga, lo que provoca cambios 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 de reloj por segundo). Durante el estudio, se encontró que bajo ciertas condiciones en los procesadores AMD e Intel, el cambio en la frecuencia se correlaciona directamente con los datos que se procesan, lo que, por ejemplo, lleva al hecho de que el tiempo de cálculo de las operaciones “2022 + 23823” y “2022 + 24436” serán diferentes. A partir del 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 estimando el tiempo de ejecución de las solicitudes.

Si el ataque tiene éxito, los problemas identificados permitirán determinar claves privadas a partir de un análisis del tiempo de cómputo en bibliotecas criptográficas que utilizan algoritmos en los que los cálculos matemáticos se realizan siempre en tiempo constante, independientemente de la naturaleza de los datos procesados. . Estas bibliotecas se consideraban protegidas contra ataques de canales laterales, 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 la viabilidad de utilizar el método propuesto, se demostró un ataque a la implementación del mecanismo de encapsulación de claves SIKE (Supersingular Isogeny Key Encapsulation), que se incluyó en la final del concurso de criptosistemas poscuánticos celebrado en EE. UU. Instituto Nacional de Estándares y Tecnología (NIST) y está posicionado como protegido contra ataques de canales laterales. Durante el experimento, utilizando una nueva variante del ataque basado en texto cifrado seleccionado (selección gradual basada en la manipulación del texto cifrado y la obtención de su descifrado), fue posible recuperar completamente la clave utilizada para el cifrado tomando medidas desde un sistema remoto, a pesar de el uso de una implementación SIKE con tiempo de cálculo constante. Determinar una clave de 364 bits utilizando la implementación CIRCL tomó 36 horas y PQCrypto-SIDH tomó 89 horas.

Intel y AMD han reconocido la vulnerabilidad de sus procesadores al problema, pero no planean bloquear la vulnerabilidad mediante una actualización de microcódigo, ya que no será posible eliminar la vulnerabilidad en el hardware sin un impacto significativo en el rendimiento del hardware. 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 han agregado una protección similar a sus implementaciones SIKE, lo que ha resultado en un impacto de rendimiento del 5 % para CIRCL y un impacto de rendimiento del 11 % para PQCrypto-SIDH. Otra solución para bloquear la vulnerabilidad es desactivar los modos Turbo Boost, Turbo Core o Precision Boost en el BIOS o el controlador, pero este cambio resultará en 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 la divulgación pública del problema se retrasó hasta el 14 de junio de 2022 a petición de Intel. La presencia del problema se ha confirmado en procesadores de escritorio y portátiles basados ​​​​en la microarquitectura Intel Core de 8 a 11 generaciones, así como en varios procesadores de escritorio, móviles y de servidor AMD Ryzen, Athlon, A-Series y EPYC (los investigadores demostraron el método en CPU Ryzen con microarquitectura Zen 2 y Zen 3).

Fuente: opennet.ru

Añadir un comentario