Cuidado si tienes un procesador Intel en tu PC o portátil: un nuevo agujero de seguridad permite extraer datos secretos
La Universidad de Tsinghua y la de Maryland han descubierto un nuevo un nuevo ataque de canal lateral que afecta a varias generaciones de CPU Intel, lo que permite filtrar datos a través del registro. En esencia, podría ser considerado como el resurgir del fallo de seguridad Meltdown, cuando parecía que estaba bajo control desde 2018.
Si tienes un PC o portátil con procesador Intel, tu equipo podría estar en riesgo de vulnerabilidad. Este nuevo ataque aprovecha una falla en la ejecución transitoria que hace posible extraer datos secretos del espacio de la memoria del usuario a través del análisis de tiempo.
¿El sucesor de Meltdown?
El ataque funciona como un canal secundario para Meltdown, un fallo de seguridad crítico descubierto en 2018 que afecta a muchos microprocesadores basados en la arquitectura o conjunto de instrucciones x86.
Meltdown explota una función de optimización del rendimiento llamada «ejecución especulativa» para permitir a los atacantes eludir los mecanismos de aislamiento de la memoria para acceder a los secretos almacenados en la memoria del núcleo, como contraseñas, claves de cifrado y otros datos privados.
Desde entonces, este exploit se ha mitigado en gran medida mediante parches de software, actualizaciones de microcódigos y rediseños de hardware. Sin embargo, ninguna solución ha abordado el problema al 100%, y el método de ataque más reciente podría funcionar incluso en sistemas con parches completos, según las configuraciones de hardware, software y parches.
Tu procesador Intel está en riesgo
Tal y como se puede leer en la publicación de este estudio de ciberseguridad, el nuevo ataque de canal lateral aprovecha un fallo en el cambio del registro EFLAGS en ejecución transitoria, que afecta el tiempo de las instrucciones JCC (código de condición de salto).
El registro EFLAGS es un registro de la CPU que contiene varios indicadores relacionados con el estado del procesador, mientras que la instrucción JCC es una instrucción de la CPU que permite la bifurcación condicional basada en el contenido del registro EFLAGS.
El ataque se lleva a cabo en dos fases, la primera es activar la ejecución transitoria y codificar datos secretos a través del registro EFLAGS, y la segunda es medir el tiempo de ejecución de la instrucción JCC para decodificar los datos. El experimento se realizó en Intel i7-6700 e Intel i7-7700, consiguiendo el 100% de fuga de datos.
También se probó esta fórmula de ataque en la nueva CPU Intel i9-10980XE. En este caso, tuvo un éxito relativo. Los investigadores señalan que este ataque de sincronización no es tan confiable como los métodos de canal lateral de estado de caché y para obtener mejores resultados en chips recientes, el ataque tendría que repetirse miles de veces.
“En nuestro experimento, encontramos que la influencia del registro EFLAGS en el tiempo de ejecución de la instrucción JCC no es tan persistente como el estado del caché. Durante unos 6-9 ciclos después de la ejecución transitoria, el tiempo de ejecución de JCC no estará a punto de construir un canal lateral. Empíricamente, el ataque necesita repetirse miles de veces para una mayor precisión”.
Los investigadores admiten que las causas fundamentales del ataque siguen siendo esquivas y plantean la hipótesis de que hay un búfer en la unidad de ejecución de la CPU de Intel, que necesita tiempo para revertirse si se debe retirar la ejecución. Este proceso que provoca un bloqueo si la instrucción subsiguiente depende en el objetivo del búfer. Seguirán explorando el fallo, intentando que no llegue a ser el nuevo Meltdown.