Los piratas informáticos pueden extraer claves de cifrado secretas de los chips Mac de Apple

Los piratas informáticos pueden extraer claves de cifrado secretas de los chips Mac de Apple
El chip M1 de Apple.
Agrandar / El chip M1 de Apple.

Fotógrafo: Daniel Acker/Bloomberg vía Getty Images

Una vulnerabilidad recientemente descubierta incorporada en la serie M de chips de Apple permite a los atacantes extraer claves secretas de las Mac cuando realizan operaciones criptográficas ampliamente utilizadas, revelaron investigadores académicos en un artículo publicado el jueves.

El defecto—un canal lateral permitir extracciones de claves de un extremo a otro cuando los chips de Apple ejecutan implementaciones de protocolos criptográficos ampliamente utilizados no se puede parchear directamente porque surge del diseño microarquitectónico del propio silicio. En cambio, solo puede mitigarse mediante la creación de defensas en software criptográfico de terceros que podrían degradar drásticamente el rendimiento de la serie M al ejecutar operaciones criptográficas, particularmente en las generaciones anteriores M1 y M2. La vulnerabilidad puede explotarse cuando la operación criptográfica objetivo y la aplicación maliciosa con privilegios de sistema de usuario normales se ejecutan en el mismo clúster de CPU.

Cuidado con las optimizaciones de hardware

La amenaza reside en el captador previo dependiente de la memoria de datos de los chips, una optimización de hardware que predice las direcciones de memoria de los datos a los que es probable que acceda el código en ejecución en un futuro próximo. Al cargar el contenido en la memoria caché de la CPU antes de que sea realmente necesario, el DMP, como se abrevia la característica, reduce la latencia entre la memoria principal y la CPU, un cuello de botella común en la informática moderna. Los DMP son un fenómeno relativamente nuevo que se encuentra sólo en los chips de la serie M y en la microarquitectura Raptor Lake de 13.ª generación de Intel, aunque las formas más antiguas de captadores previos han sido comunes durante años.

Los expertos en seguridad saben desde hace mucho tiempo que los captadores previos clásicos abren un canal lateral que los procesos maliciosos pueden sondear para obtener material de clave secreta de operaciones criptográficas. Esta vulnerabilidad es el resultado de que los captadores previos hagan predicciones basadas en patrones de acceso anteriores, lo que puede crear cambios en el estado que los atacantes pueden aprovechar para filtrar información. En respuesta, los ingenieros criptográficos han ideado la programación en tiempo constante, un enfoque que garantiza que todas las operaciones tarden la misma cantidad de tiempo en completarse, independientemente de su operandos

. Para ello, mantiene el código libre de estructuras o accesos a la memoria dependientes de secretos.

El avance de la nueva investigación es que expone un comportamiento previamente pasado por alto de los DMP en el silicio de Apple: a veces confunden el contenido de la memoria, como el material clave, con el valor del puntero que se utiliza para cargar otros datos. Como resultado, el DMP a menudo lee los datos e intenta tratarlos como una dirección para realizar el acceso a la memoria. Esta “desreferenciación” de “indicadores” –es decir, la lectura de datos y su filtración a través de un canal lateral– es una violación flagrante del paradigma del tiempo constante.

El equipo de investigadores está formado por:

  • Boru Chen, Universidad de Illinois Urbana-Champaign
  • Yingchen Wang, Universidad de Texas en Austin
  • Pradyumna Shome, Instituto de Tecnología de Georgia
  • Christopher W. Fletcher, Universidad de California, Berkeley
  • David Kohlbrenner, Universidad de Washington
  • Riccardo Paccagnella, Universidad Carnegie Mellon
  • Daniel Genkin, Instituto de Tecnología de Georgia

En un correo electrónico, explicaron:

Los captadores previos suelen mirar las direcciones de los datos a los que se accede (ignorando los valores de los datos a los que se accede) e intentan adivinar direcciones futuras que podrían ser útiles. El DMP es diferente en este sentido, ya que además de las direcciones, también utiliza los valores de los datos para hacer predicciones (predecir las direcciones a las que ir y buscar previamente). En particular, si un valor de datos “parece” un puntero, será tratado como una “dirección” (¡donde en realidad no lo es!) y los datos de esta “dirección” se llevarán al caché. La llegada de esta dirección al caché es visible y se filtra a través de los canales laterales del caché.

Nuestro ataque explota este hecho. No podemos filtrar claves de cifrado directamente, pero lo que podemos hacer es manipular datos intermedios dentro del algoritmo de cifrado para que parezcan un puntero a través de un ataque de entrada elegido. Luego, el DMP ve que el valor de los datos “parece” una dirección y trae los datos de esta “dirección” al caché, lo que filtra la “dirección”. No nos importa que el valor de los datos se obtenga previamente, pero el hecho de que los datos intermedios parezcan una dirección es visible a través de un canal de caché y es suficiente para revelar la clave secreta con el tiempo.

En el periódico del jueves, el equipo lo explicó de manera ligeramente diferente:

Nuestra idea clave es que, si bien el DMP solo desreferencia punteros, un atacante puede diseñar entradas de programa de modo que cuando esas entradas se mezclen con secretos criptográficos, el estado intermedio resultante pueda diseñarse para que parezca un puntero si y sólo si el secreto satisface al atacante. predicado elegido. Por ejemplo, imagine que un programa tiene un secreto s, toma x como entrada, calcula y luego almacena y = s ⊕ x en la memoria de su programa. El atacante puede crear x diferentes e inferir información parcial (o incluso completa) sobre s observando si el DMP puede desreferenciar y. Primero utilizamos esta observación para romper las garantías de una primitiva de intercambio de tiempo constante estándar recomendada para su uso en implementaciones criptográficas. Luego mostramos cómo romper implementaciones criptográficas completas diseñadas para ser seguras contra ataques de entrada elegida.

Leave a Reply

Your email address will not be published. Required fields are marked *