Se ha revelado una nueva vulnerabilidad en los chips de la serie M de Apple que permite a los atacantes extraer claves de encriptación secretas de las Macs durante la ejecución de operaciones criptográficas ampliamente utilizadas. Esta vulnerabilidad, conocida como una "vulnerabilidad de canal lateral", no puede ser parcheada directamente debido a que es inherente al diseño microarquitectónico del chip mismo. En lugar de eso, solo puede ser mitigada mediante la implementación de defensas en el software criptográfico de terceros, lo que podría afectar significativamente el rendimiento de los chips M-series al ejecutar operaciones criptográficas.
¿Qué es una vulnerabilidad de canal lateral?
Una vulnerabilidad de canal lateral es una brecha de seguridad que permite a un atacante obtener información confidencial a través de canales no intencionados. En el caso de la vulnerabilidad descubierta en los chips de Apple, el canal lateral reside en el prefetcher dependiente de la memoria de los chips. Este prefetcher es una optimización de hardware que predice las direcciones de memoria de los datos a los que el código en ejecución probablemente accederá en el futuro cercano. Al cargar el contenido en la caché de la CPU antes de que sea realmente necesario, el prefetcher reduce la latencia entre la memoria principal y la CPU, lo cual es un cuello de botella común en la computación moderna. Sin embargo, los prefetchers también pueden abrir un canal lateral que los procesos maliciosos pueden aprovechar para obtener material de clave secreta de operaciones criptográficas.
El problema con los prefetchers en los chips de Apple
Los expertos en seguridad han conocido desde hace tiempo que los prefetchers clásicos abren un canal lateral que los procesos maliciosos pueden sondar para obtener material de clave secreta de operaciones criptográficas. Sin embargo, la vulnerabilidad descubierta en los chips de Apple se debe a que los prefetchers hacen predicciones basadas en patrones de acceso anteriores, lo que puede provocar cambios en el estado que los atacantes pueden explotar para filtrar información. En el caso de los chips M de Apple, los prefetchers a veces confunden el contenido de la memoria, como material de clave, con el valor del puntero que se utiliza para cargar otros datos. Como resultado, el prefetcher a menudo lee los datos y trata de tratarlos como una dirección para acceder a la memoria. Esta "desreferenciación" de "punteros" -es decir, la lectura de datos y su filtración a través de un canal lateral- es una clara violación del paradigma de tiempo constante.
Impacto en el rendimiento de los chips M-series
La vulnerabilidad descubierta en los chips M-series de Apple plantea un desafío significativo para mitigarla sin afectar gravemente el rendimiento de estos chips. Debido a que la vulnerabilidad está arraigada en el diseño microarquitectónico del silicio, no se puede solucionar directamente a través de un parche. En cambio, se requiere la implementación de defensas en el software criptográfico de terceros, lo que podría degradar drásticamente el rendimiento de los chips M-series al ejecutar operaciones criptográficas, especialmente en las generaciones anteriores M1 y M2.
Investigación académica y equipo de investigadores
La vulnerabilidad en los chips de Apple fue descubierta y revelada por un equipo de investigadores académicos de varias universidades e instituciones de renombre. El equipo de investigadores incluye a Boru Chen de la Universidad de Illinois Urbana-Champaign, Yingchen Wang de la Universidad de Texas en Austin, Pradyumna Shome del Instituto de Tecnología de Georgia, Christopher W. Fletcher de la Universidad de California en Berkeley, David Kohlbrenner de la Universidad de Washington, Riccardo Paccagnella de la Universidad Carnegie Mellon y Daniel Genkin del Instituto de Tecnología de Georgia.
En su investigación, el equipo de investigadores explicó que los prefetchers en los chips de Apple no solo examinan las direcciones de los datos accedidos, sino que también utilizan los valores de los datos para hacer predicciones. Esto significa que si un valor de datos se parece a un puntero, se tratará como una "dirección" y los datos de esta "dirección" se cargarán en la caché. La llegada de esta dirección a la caché es visible, lo que permite filtrar información a través de canales laterales. El ataque aprovecha esta característica para manipular datos intermedios dentro del algoritmo de encriptación y hacer que parezcan punteros a través de un ataque de entrada elegida. El prefetcher luego detecta que el valor de datos se parece a una dirección y trae los datos de esta "dirección" a la caché, lo que filtra la "dirección". Aunque no se pueden filtrar directamente las claves de encriptación, la filtración de la "dirección" es suficiente para revelar la clave secreta con el tiempo.
Medidas de mitigación y consecuencias
Dado que la vulnerabilidad en los chips de Apple no puede ser parcheada directamente, las medidas de mitigación se centran en la implementación de defensas en el software criptográfico de terceros. Sin embargo, estas defensas podrían degradar significativamente el rendimiento de los chips M-series al ejecutar operaciones criptográficas, especialmente en las generaciones anteriores M1 y M2. Esto plantea un desafío para los usuarios y desarrolladores de software que dependen de la seguridad y el rendimiento de los chips de Apple. Por lo tanto, es crucial que se tomen medidas adicionales para proteger la privacidad y la seguridad de los datos en los dispositivos Mac.