馃槑 60% Descuento:  Curso de Hacking Redes Inal谩mbricas >> Ver M谩s

Las CPUs Intel son vulnerables a un nuevo ataque de canal lateral

Investigadores han descubierto un nuevo ataque de canal lateral que afecta a varias generaciones de CPUs Intel, lo que permite filtrar datos a trav茅s del registro EFLAGS.

El nuevo ataque fue descubierto por investigadores de la Universidad de Tsinghua, la Universidad de Maryland y un laboratorio de computaci贸n (BUPT) administrado por el Ministerio de Educaci贸n de China y es diferente a la mayor铆a de los otros ataques de canal lateral.

En lugar de confiar en el sistema de cach茅 como muchos otros ataques de canal lateral, este nuevo ataque aprovecha una vulnerabilidad en la ejecuci贸n transitoria. En otras palabras, esto hace posible extraer datos secretos del espacio de la memoria del usuario a trav茅s del an谩lisis de tiempo.

El ataque funciona como un canal secundario para Meltdown, una vulnerabilidad de seguridad cr铆tica descubierta en 2018, que  afecta a muchos microprocesadores basados 鈥嬧媏n 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. Esto para acceder a los secretos almacenados en la memoria del n煤cleo, como contrase帽as, claves de cifrado y otros datos privados.

Meltdown 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. Esto seg煤n las configuraciones de hardware, software y parches.

Ataque de temporizaci贸n de ejecuci贸n transitoria

El nuevo ataque de canal lateral presentado en un  documento t茅cnico publicado en Arxiv.org describe una falla en el cambio del registro EFLAGS en ejecuci贸n transitoria, que afecta el tiempo de las instrucciones JCC (jump on condition code).

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 KCC para decodificar los datos.

Resumen de ataques

Los datos experimentales mostraron que el ataque logr贸 el 100 % de recuperaci贸n de datos (fuga) para Intel i7-6700 e Intel i7-7700 y tuvo cierto 茅xito contra la nueva CPU Intel i9-10980XE. El experimento se realiz贸 en Ubuntu 22.04 jammy con kernel de Linux versi贸n 5.15.0.

Pseudoc贸digo para cronometrar el ataque de ejecuci贸n transitoria

Sin embargo, 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茅. Asimismo, para obtener mejores resultados en chips recientes, el ataque tendr铆a que repetirse miles de veces.

Mitigaciones

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. Este necesita tiempo para revertirse si se debe retirar la ejecuci贸n, un proceso que provoca un bloqueo si la instrucci贸n subsiguiente depende en el objetivo del b煤fer.

Sin embargo, a煤n proponen algunas mitigaciones no triviales, como cambiar la implementaci贸n de la instrucci贸n JCC para hacer imposible la medici贸n de la ejecuci贸n contradictoria bajo cualquier condici贸n, o reescribir el EFLAGS despu茅s de la ejecuci贸n transitoria para reducir su influencia sobre la instrucci贸n JCC.

Deja un comentario

Adquiere tu Membres铆a Anual Wiser

Adquiere tu Membres铆a Anual Wiser y adquiere grandes beneficios

M谩s informaci贸n