Hace pocos días, los investigadores de Binarly dieron a conocer, mediante una publicación de blog, una serie de vulnerabilidades en el código de análisis de imágenes utilizado en el firmware UEFI que afectan a los sistemas Windows y Linux, tanto en dispositivos basados en x86 como en ARM. Las vulnerabilidades se denominan colectivamente LogoFAIL porque existen en analizadores de imágenes UEFI que muestran el logotipo del fabricante cuando se inicia el sistema.
La vulnerabilidad surge de la inyección de archivos de imagen en la partición del sistema EFI (ESP), un componente crítico del proceso de arranque. Si bien las vulnerabilidades no afectan directamente la integridad del tiempo de ejecución, abren la puerta a ataques persistentes al permitir que el malware se almacene dentro del sistema.
Sobre LogoFAIL
Los investigadores de Binarly mencionan que las vulnerabilidades se identificaron durante el análisis del firmware de Lenovo construido en plataformas de Insyde, AMI y Phoenix, pero también se mencionaron firmware de Intel y Acer como potencialmente vulnerables.
El problema de la vulnerabilidad se debe al hecho de que la mayoría de los fabricantes de PC utilizan UEFI desarrolladas por un puñado de empresas conocidas como proveedores de BIOS independientes (IBV) los cuales permiten a los fabricantes de computadoras personalizar el firmware, ya sea para mostrar su propio logotipo y otros elementos de marca en la pantalla de la computadora durante la fase inicial de arranque.
El firmware UEFI moderno contiene analizadores de imágenes para imágenes en varios formatos diferentes (BMP, GIF, JPEG, PCX y TGA), lo que amplía significativamente el vector de ataque y, por lo tanto, la posibilidad de que se escape una vulnerabilidad. De hecho, el equipo de Binarly encontró 29 problemas en los analizadores de imágenes utilizados en el firmware Insyde, AMI y Phoenix, de los cuales 15 eran explotables para la ejecución de código arbitrario
«Este vector de ataque puede darle al atacante una ventaja al eludir la mayoría de las soluciones de seguridad de terminales y entregar un kit de arranque de firmware sigiloso que persistirá en una partición ESP o cápsula de firmware con una imagen de logotipo modificada»,
La vulnerabilidad surge de la inyección de archivos de imagen especialmente diseñados, los cuales pueden brindar el acceso privilegiado local a la partición ESP para deshabilitar las funciones de seguridad UEFI, modificar el orden de arranque UEFI y por ende que un atacante acceda remotamente al sistema o de que un atacante obtenga acceso físico de un objetivo.
Como tal, estas vulnerabilidades pueden comprometer la seguridad de todo el sistema, haciendo que las medidas de seguridad «inferiores al sistema operativo», como cualquier tipo de arranque seguro, sean ineficaces, incluido Intel Boot Guard. Este nivel de compromiso significa que los atacantes pueden obtener un control profundo sobre los sistemas afectados.
«En algunos casos, el atacante puede utilizar la interfaz de personalización del logotipo proporcionada por el proveedor para cargar estas imágenes maliciosas».
Este nuevo riesgo plantea una preocupación importante para los usuarios y las organizaciones que dependen de dispositivos de los principales fabricantes, como Intel, Acer, Lenovo y proveedores de firmware UEFI como AMI, Insyde y Phoenix.
Hasta ahora, es difícil determinar la gravedad, ya que no se ha publicado ningún exploit público y algunas de las vulnerabilidades ahora públicas han sido calificadas de manera diferente por los investigadores de Binarly que descubrieron las vulnerabilidades LogoFAIL.
La divulgación marca la primera demostración pública de superficies de ataque relacionadas con analizadores de imágenes gráficas integrados en el firmware del sistema UEFI desde 2009, cuando los investigadores Rafal Wojtczuk y Alexander Tereshkin presentaron cómo un error del analizador de imágenes BMP podría explotarse para la persistencia del malware.
A diferencia de BlackLotus o BootHole, vale la pena señalar que LogoFAIL no rompe la integridad del tiempo de ejecución modificando el cargador de arranque o el componente de firmware.
Finalmente, si estás interesado en poder conocer más al respecto, puedes consultar los detalles en el siguiente enlace.