Nuevas fallas de espectro en las CPU Intel y AMD afectan a miles de millones de computadoras

Cuando Spectre, una clase de vulnerabilidades críticas que afectan a los procesadores modernos, se reveló públicamente en enero de 2018, los investigadores detrás del descubrimiento dijeron: «Como no es fácil de solucionar, nos perseguirá durante bastante tiempo», explicando la inspiración detrás de la denominación. los ataques de ejecución especulativa.

De hecho, han pasado más de tres años y no se vislumbra el final de Spectre.

Un equipo de académicos de la Universidad de Virginia y la Universidad de California, San Diego, descubrió una nueva línea de ataque que pasa por alto todas las protecciones actuales de Spectre integradas en los chips, lo que podría afectar a casi todos los sistemas: computadoras de escritorio, portátiles, servidores en la nube y teléfonos inteligentes. – una vez más en riesgo tal como lo estaban hace tres años.

La divulgación de Spectre y Meltdown abrió una especie de compuerta, con infinitas variantes de los ataques que salieron a la luz en los años intermedios, incluso cuando los fabricantes de chips como Intel, ARM y AMD han luchado continuamente para incorporar defensas para aliviar las vulnerabilidades que permiten ataques maliciosos. código para leer contraseñas, claves de cifrado y otra información valiosa directamente desde la memoria del núcleo de una computadora.

Un ataque de sincronización de canal lateral en su núcleo, Spectre rompe el aislamiento entre diferentes aplicaciones y aprovecha un método de optimización llamado ejecución especulativa en implementaciones de hardware de CPU para engañar a los programas para que accedan a ubicaciones arbitrarias en la memoria y así filtrar sus secretos.

«Un ataque de Spectre engaña al procesador para que ejecute instrucciones por el camino equivocado», dijeron los investigadores. «Aunque el procesador se recupere y complete correctamente su tarea, los piratas informáticos pueden acceder a datos confidenciales mientras el procesador se dirige por el camino equivocado».

El nuevo método de ataque explota lo que se llama caché de microoperaciones (también conocido como micro-ops o μops), un componente en el chip que descompone las instrucciones de la máquina en comandos más simples y acelera la computación, como un canal lateral para divulgar información secreta. Los cachés de microoperaciones se han integrado en máquinas basadas en Intel fabricadas desde 2011.

«La defensa sugerida por Intel contra Spectre, que se llama LFENCE, coloca el código confidencial en un área de espera hasta que se ejecutan los controles de seguridad, y solo entonces se permite que se ejecute el código confidencial», Ashish Venkat, profesor asistente en la Universidad de Virginia y dijo un coautor del estudio. «Pero resulta que las paredes de esta sala de espera tienen oídos, que nuestro ataque explota. Mostramos cómo un atacante puede contrabandear secretos a través del caché de microoperaciones usándolo como un canal encubierto».

En las microarquitecturas AMD Zen, la primitiva de divulgación de microoperaciones se puede explotar para lograr un canal de transmisión de datos encubierto con un ancho de banda de 250 Kbps con una tasa de error del 5,59 % o 168,58 Kbps con corrección de errores, detallaron los investigadores.

Intel, en sus pautas para contrarrestar los ataques de tiempo contra implementaciones criptográficas, recomienda adherirse a los principios de programación de tiempo constante, una práctica que es más fácil decirlo que hacerlo, ya que requiere que los cambios de software por sí solos no mitiguen adecuadamente las amenazas que surgen de la ejecución especulativa.

«La programación en tiempo constante no solo es difícil en términos del esfuerzo real del programador, sino que también implica una sobrecarga de alto rendimiento y desafíos de implementación significativos relacionados con parchear todo el software sensible», dijo Venkat en un comunicado compartido con The Hacker News. «El porcentaje de código que se escribe utilizando los principios de tiempo constante es, de hecho, bastante pequeño. Confiar en esto sería peligroso. Es por eso que todavía necesitamos asegurar el hardware».

El lado positivo aquí es que explotar las vulnerabilidades de Spectre es difícil. Para protegerse del nuevo ataque, los investigadores proponen vaciar la memoria caché de microoperaciones, una técnica que compensa los beneficios de rendimiento obtenidos al usar la memoria caché en primer lugar, aprovechar los contadores de rendimiento para detectar anomalías en la memoria caché de microoperaciones y dividirla. en función del nivel de privilegio asignado al código y evitar que el código no autorizado obtenga mayores privilegios.

«El caché de microoperaciones como canal lateral tiene varias implicaciones peligrosas», dijeron los investigadores. «Primero, pasa por alto todas las técnicas que mitigan los cachés como canales secundarios. Segundo, estos ataques no son detectados por ningún perfil de ataque o malware existente. Tercero, debido a que el caché micro-op se encuentra al frente de la canalización, mucho antes de la ejecución, ciertos Las defensas que mitigan Spectre y otros ataques de ejecución transitoria al restringir las actualizaciones de caché especulativas siguen siendo vulnerables a los ataques de caché de microoperaciones.

Continua leyendo

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Newsletter Signup

Suscríbete a nuestra lista si te interesa recibir turcos exclusivos sobre hacking y seguridad informática