Los chips M1 de Apple tienen una vulnerabilidad de hardware «no parcheable» que podría permitir a los atacantes romper su última línea de defensas de seguridad, según han descubierto investigadores del MIT.
La vulnerabilidad radica en un mecanismo de seguridad a nivel de hardware utilizado en los chips M1 de Apple denominado códigos de autenticación de puntero, o PAC. Esta característica hace que sea mucho más difícil para un atacante inyectar código malicioso en la memoria de un dispositivo y proporciona un nivel de defensa contra los exploits de desbordamiento de búfer, un tipo de ataque que obliga a la memoria a desbordarse a otros lugares del chip.
Sin embargo, los investigadores del Laboratorio de Ciencias de la Computación e Inteligencia Artificial del MIT han creado un novedoso ataque por hardware que combina la corrupción de memoria y los ataques de ejecución especulativa para eludir la función de seguridad. El ataque demuestra que la autenticación por puntero puede ser derrotada sin dejar rastro, y como utiliza un mecanismo de hardware, ningún parche de software puede solucionarlo.
El ataque, llamado apropiadamente «Pacman», funciona «adivinando» un código de autenticación de puntero (PAC), una firma criptográfica que confirma que una aplicación no ha sido alterada de forma maliciosa. Para ello se utiliza la ejecución especulativa -una técnica utilizada por los procesadores informáticos modernos para acelerar el rendimiento mediante la adivinación especulativa de varias líneas de cálculo- para filtrar los resultados de la verificación del PAC, mientras que un canal lateral de hardware revela si la adivinación fue correcta o no.
Además, como sólo hay un número determinado de valores posibles para el PAC, los investigadores descubrieron que es posible probarlos todos para encontrar el correcto.
En una prueba de concepto, los investigadores demostraron que el ataque funciona incluso contra el kernel -el núcleo de software del sistema operativo de un dispositivo-, lo que tiene «enormes implicaciones para el futuro trabajo de seguridad en todos los sistemas ARM con la autenticación por puntero activada», dice Joseph Ravichandran, estudiante de doctorado en el MIT CSAIL y coautor del artículo de investigación.
Apple ha implementado la autenticación por puntero en todo su silicio personalizado basado en ARM hasta ahora, incluidos los M1, M1 Pro y M1 Max, y varios otros fabricantes de chips, incluidos Qualcomm y Samsung, han anunciado o se espera que lancen nuevos procesadores compatibles con la función de seguridad a nivel de hardware. El MIT dijo que aún no ha probado el ataque en el chip M2 de Apple, que aún no ha sido lanzado, y que también soporta la autenticación por puntero.
Los investigadores -que presentaron sus conclusiones a Apple- señalaron que el ataque Pacman no es un «bypass mágico» para toda la seguridad del chip M1, y que sólo puede aprovechar un fallo existente contra el que protege la autenticación por puntero.
En mayo de 2021, un desarrollador descubrió un fallo no corregible en el chip M1 de Apple que crea un canal encubierto que dos o más aplicaciones maliciosas ya instaladas podrían utilizar para transmitirse información entre sí. Pero el fallo se consideró finalmente «inofensivo», ya que los programas maliciosos no pueden utilizarlo para robar o interferir en los datos que se encuentran en un Mac.