Lazy FPU: La nueva vulnerabilidad que afecta a todos los procesadores Intel

Qué año tan horrible en seguridad para Intel. Primero tuvimos las vulnerabilidades de Meltdown y Spectre que nunca parecen desaparecer. Ahora, Intel ha anunciado una nueva vulnerabilidad de canal lateral de ejecución especulativa que implica la "restauración de estado FP Lazy" que podría permitir que un programa malicioso lea datos que están siendo utilizados por otros procesos.

Según Intel, esta nueva vulnerabilidad afecta a todos los microprocesadores basados en Intel Intel Core y es un error en la CPU real, por lo que no importa qué sistema operativo esté ejecutando el usuario. Podría ser Windows, Linux, BSD o cualquier otra operación que ejecute una CPU basada en Intel Core y que use "conmutación de contexto de FPU diferida".

La "conmutación de contexto de FPU diferida" es una función de optimización del rendimiento utilizada por los sistemas operativos que solo guarda y restaura los registros de la FPU (Unidad de punto flotante), que son ubicaciones en la CPU que se usan para almacenar números de punto flotante cuando es necesario. Un error en las CPU Intel permite que otro proceso acceda a estos registros y a los datos que contienen.

El problema es que estos números se utilizan para una variedad de tareas, incluidas las ecuaciones criptográficas. Esto podría permitir que un atacante detecte los números que hacen que sea más fácil descifrar una clave de cifrado.

Afortunadamente, los investigadores señalaron que esta vulnerabilidad sería difícil de ejecutar a través de un navegador web, por lo que su impacto es menor que las vulnerabilidades de ejecución especulativa anteriores, como Meltdown. Puede leer más acerca de los aspectos técnicos de esta vulnerabilidad en este hilo de Twitter de Colin Percival.

Intel ha dicho que esta vulnerabilidad ha sido abordada por los sistemas operativos y por el software de hipervisor durante muchos años.

"Este problema, conocido como restablecimiento de estado de Lazy FP, es similar a la variante 3a. Ya se ha abordado durante muchos años por el sistema operativo y el software de hipervisor utilizados en muchos clientes y centros de datos. Nuestros socios de la industria están trabajando en actualizaciones de software para abordar este problema para los entornos afectados restantes y esperamos que estas actualizaciones estén disponibles en las próximas semanas. Seguimos creyendo en la divulgación coordinada y estamos agradecidos a Julian Stecklina de Amazon Alemania, Thomas Prescher de Cyberus Technology GmbH, Zdenek Sojka de SYSGO AG, y Colin Percival por informarnos de este problema. Alentamos encarecidamente a otros en la industria a adherirse a la divulgación coordinada también ".

Los vendedores se apresuran a lanzar advertencias de seguridad

Los rumores sobre este error han estado circulando desde que OpenBSD y DragonflyBSDDragonflyBSD publicaron avisos sobre parches que corrigieron las vulnerabilidades de Intel. Estos avisos indicaban que había un supuesto problema de hardware relacionado con los registros FPU en las CPU de Intel y decidieron aplicar un parche proactivo a sus sistemas operativos.

La buena noticia es que esta vulnerabilidad no requiere nuevos microcódigos de la CPU de Intel, pero se puede arreglar con las actualizaciones del sistema operativo. Desde que se publicó el aviso de Intel, varias distribuciones de Linux y Microsoft publicaron avisos relacionados con esta nueva vulnerabilidad.

A continuación hay una lista de enlaces a avisos o información actual.

  • Redhat: esto se resolverá mediante futuras actualizaciones para los procesadores más nuevos. Redhat también ha incluido información sobre cómo habilitar el modo de restauración Eager FPU, que no se ve afectado.
  • DragonFlyBSD
  • OpenBSD
  • Linux: parece que se habilitó la restauración de estado EAR de FPU en todas las CPU en 2016. Por lo tanto, si está utilizando un Kernel más nuevo, está a salvo de esta vulnerabilidad. Este parche también se está transfiriendo a versiones anteriores compatibles.
  • Xen Hypervisor
  • Microsoft ADV180016: esto se resolverá con las próximas actualizaciones.