🔥Adquiere tu membresía:  acceso a todos los cursos, videos eliminados, contenidos protegidos, manuales y más. >> Ver Más

Nuevas vulnerabilidades en las CPU´s de Intel y AMD afectan a millones de computadoras

Spectre, un tipo de vulnerabilidades críticas que afectan a los procesadores modernos se reveló públicamente en enero de 2018. En aquel momento, los investigadores detrás del descubrimiento dijeron que no era fácil de solucionar y que nos perseguiría durante bastante tiempo. Ellos trataban de explicar la razón detrás del nombre asignado.

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

Un equipo de académicos de la Universidad de Virginia y la Universidad de California en San Diego ha descubierto una nueva línea de ataque. Este ataque evade todas las protecciones actuales de Spectre integradas en los chips. La vulnerabilidad expone potencialmente casi todos los sistemas: computadoras de escritorio, computadoras portátiles, servidores en la nube y teléfonos inteligentes. Están tan expuestos una vez más 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 se han apresurado continuamente para incorporar defensas para aliviar las vulnerabilidades. Estos ataques permiten que el código malintencionado lea contraseñas, claves de cifrado y otra información valiosa directamente desde la memoria del núcleo de una computadora.

Spectre

Spectre, un ataque de canal lateral de sincronización en su núcleo, rompe el aislamiento entre diferentes aplicaciones. Y, aprovecha un método de optimización llamado ejecución especulativa en implementaciones de hardware de CPU. Esto 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 recupera y completa correctamente su tarea, los ciberdelincuentes 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 microoperaciones o μops). Es decir, 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. Se han integrado cachés de microoperaciones en máquinas basadas en Intel fabricadas desde 2011.

“La defensa sugerida por Intel contra Spectr se llama LFENCE. LFENCE coloca el código confidencial en un área de espera hasta que se ejecutan los controles de seguridad. Y, solo entonces se permite la ejecución del código confidencial.   Pero resulta que las paredes de esta área 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”.

Ashish Venkat – profesor asistente de la Universidad de Virginia y coautor del estudio

En las microarquitecturas AMD Zen, la primitiva divulgación de microoperaciones se puede explotar para lograr un canal de transmisión de datos encubierto. Esto con un ancho de banda de 250 Kbps con una tasa de error de 5.59% o 168.58 Kbps con corrección de errores.

Intel

Intel, en sus pautas para contrarrestar los ataques de tiempo contra las implementaciones criptográficas, recomienda adherirse a los principios de programación en tiempo constante. Esta es una práctica que es más fácil de decir que de hacer. Es decir, requiere que los cambios de software por sí solos puedan mitigar 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. También implica una sobrecarga de alto rendimiento y desafíos de implementación significativos relacionados con la aplicación de parches a todo el software sensible”. “El porcentaje de código que se escribe utilizando los principios de tiempo constante es, de hecho, bastante pequeño. Depender de esto sería peligroso. Es por eso que todavía necesitamos asegurar el hardware”.

Venkat

Contramedidas

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

“La memoria caché de microoperaciones como canal lateral tiene varias implicaciones peligrosas”, dijeron los investigadores. “En primer lugar, omite todas las técnicas que mitigan las cachés como canales laterales. En segundo lugar, estos ataques no son detectados por ningún perfil de malware o ataque existente. Finalmente, en tercer lugar existe una complicación debido a que la caché de microoperaciones se encuentra en la parte delantera de la canalización, mucho antes de la ejecución. Por ello, ciertas defensas que mitigan Spectre y otros ataques de ejecución transitoria no funcionan. Las defensas que restringen las actualizaciones de caché especulativas siguen siendo vulnerables a los ataques de caché de microoperaciones”.

Deja un comentario

Adquiere tu Membresía Anual Wiser

Adquiere tu Membresía Anual Wiser y adquiere grandes beneficios

Más información