22 de junio de 2018

FP Lazy State Restore. Nueva vulnerabilidad en los procesadores Intel Core

Intel ha publicado una nueva vulnerabilidad que afecta a sus procesadores la cual aprovecha debilidades en la ejecución especulativa, al igual que Meltdown y Spectre.
Era de esperar: una vez que los investigadores han puesto el ojo sobre los microprocesadores, era solo cuestión de tiempo que fueran descubriéndose más vulnerabilidades y con mayor frecuencia. Desde el descubrimiento de Spectre y Meltdown, hemos asistido a un desfile de fallos de seguridad relacionados con la ejecución especulativa. Hoy tratamos FP Lazy State Restore.
Aunque no se han dado muchos detalles técnicos de la vulnerabilidad, a la que se ha asignado el identificador CVE-2018-3665, se ha publicado que el error está relacionado con la forma de guardar y restaurar los registros de estado de la unidad de coma flotante (Floating Point Unit, FPU, y de ahí el nombre de la vulnerabilidad: ‘Floating Point Lazy State Restore’).
¿Y por qué el "lazy"? La FPU guarda el estado de las operaciones que está realizando. Cuando se da un cambio de contexto en el procesador, este puede indicar a la FPU que este estado sea guardado automáticamente o de forma "vaga". En este último caso, el estado no se guarda hasta que el nuevo proceso ejecute una operación de punto flotante que requiera salvar datos en los registros de la unidad. Es decir, en esta modalidad la FPU no realiza salvado ni recuperación de estados a no ser que realmente se necesite, ahorrando varios ciclos de computación.
Al igual que las dos vulnerabilidades antes mencionadas, el error está efectivamente relacionado con la ejecución especulativa, pero en este caso es el software el que puede elegir entre el guardado inmediato o "vago" de contexto, por lo que los fabricantes de sistemas operativos podrán corregir esta vulnerabilidad a través de una actualización de software.
Aunque no existen muchos detalles más allá de estos, parece ser similar a la variante 3A de Spectre (Rogue System Register Read). Este error podría permitir la obtención de información sensible almacenada por distintas aplicaciones, incluyendo claves de cifrado, lo que la convierte en una vulnerabilidad con un fuerte impacto.
Actualmente la vulnerabilidad no afecta a los procesadores AMD, tampoco a las últimas versiones de OpenBSD, DragonflyBSD, Linux con kernel 4.9 o las versiones de Windows más modernas, aunque Microsoft no ha dado muchos detalles al respecto más allá de confirmar un parche en julio.
También se sabe que Intel está trabajando con el equipo de Red Hat para dar solución a este problema con la máxima celeridad.
Más información:
·         New 'Lazy FP State Restore' Vulnerability Found in All Modern Intel CPUs: https://thehackernews.com/2018/06/intel-processor-vulnerability.html
·         Una-al-día. Meltdown y Spectre: Graves vulnerabilidades en los procesadores de los principales fabricantes: https://unaaldia.hispasec.com/2018/01/meltdown-y-spectre-graves.html
·         RedHat. Lazy FPU Save/Restore  https://access.redhat.com/solutions/3485131
Fuente: Hispasec.com