Imagen: Eclepsio

Hoy se publicaron detalles sobre una nueva vulnerabilidad en un componente central del proceso de arranque seguro.

La vulnerabilidad, con nombre en clave agujero de arranquepermite a los atacantes alterar el proceso de carga de arranque que precede al inicio del sistema operativo (SO) real.

Este proceso se basa en componentes conocidos como cargadores de arranque que son responsables de cargar el firmware de todos los componentes de hardware de la computadora en los que se ejecuta el sistema operativo real.

BootHole es una vulnerabilidad en GRUB2, uno de los componentes del gestor de arranque más populares en la actualidad. Actualmente, GRUB2 se utiliza como cargador de arranque principal para todas las principales distribuciones de Linux, pero también puede arrancar y, en ocasiones, también se utiliza para sistemas basados ​​en Windows, macOS y BSD.

Cómo funciona BootHole

La vulnerabilidad BootHole fue descubierta a principios de este año por investigadores de seguridad de Eclypsium. Los detalles técnicos completos sobre el error se publicaron hoy en el blog de Eclypsium.

Los investigadores dicen que BootHole permite a los atacantes alterar el componente GRUB2 para insertar y ejecutar código malicioso durante el proceso de carga de arranque, lo que permite efectivamente a los atacantes plantar código que tiene control total del sistema operativo, iniciado en un momento posterior.

Este tipo de malware suele conocerse como kit de arranque porque vive dentro de los cargadores de arranque, en la memoria física de la placa base, en ubicaciones separadas del sistema operativo real, lo que le permite sobrevivir a las reinstalaciones del sistema operativo.

Según Eclypsium, la vulnerabilidad BootHole real se encuentra dentro de grub.cfg, un archivo de configuración separado del componente GRUB2 real, desde donde el gestor de arranque extrae configuraciones específicas del sistema. Eclypsium dice que los atacantes pueden modificar los valores de este archivo para provocar un desbordamiento del búfer dentro del componente GRUB2 cuando lee el archivo en cada inicio del sistema operativo.

La siguiente imagen muestra una explicación simplificada del ataque BootHole, donde los atacantes pueden aprovechar el código “desbordante” de una o más opciones de grub.cfg para ejecutar comandos maliciosos dentro del componente GRUB2.

Eclypsium dice que BootHole se puede (ab)usar para alterar el gestor de arranque o incluso reemplazarlo con una versión maliciosa o vulnerable.

Para empeorar las cosas, Eclypsium dice que un ataque BootHole también funciona incluso cuando los servidores o estaciones de trabajo tienen habilitado el arranque seguro.

El arranque seguro es un proceso en el que el servidor/computadora utiliza comprobaciones criptográficas para asegurarse de que el proceso de arranque cargue solo componentes de firmware firmados criptográficamente.

El ataque BootHole funciona incluso con el arranque seguro habilitado porque, para algunos dispositivos o configuraciones de sistema operativo, el proceso de arranque seguro no verifica criptográficamente el archivo grub.cfg, lo que permite a los atacantes alterar su contenido.

También existen algunas limitaciones a este ataque. Eclypsium dice que el atacante necesita acceso de administrador para poder alterar el archivo grub.cfg. Esto parece una limitación, pero en realidad no lo es. Los sistemas operativos y sus componentes están plagados de errores de “elevación de privilegios” que podrían explotarse como parte de una cadena de ataque BootHole para permitir que el malware obtenga acceso de administrador y modifique grub.cfg.

Además, el proceso de arranque seguro se creó específicamente para evitar que incluso las cuentas de administrador con altos privilegios comprometan el proceso de arranque, lo que significa que BootHole es un agujero de seguridad importante en una de las operaciones más seguras del ecosistema de TI.

Los parches llegarán más tarde hoy

Durante los últimos meses, Eclypsium dice que ha estado notificando a todo el ecosistema de hardware y software sobre BootHole (CVE-2020-10713).

La empresa estima que cada distribución de Linux se ve afectado por esta vulnerabilidad, ya que todos usan cargadores de arranque GRUB2 que leen comandos de un archivo grub.cfg externo.

“Hasta la fecha, se sabe que más de 80 cuñas están afectadas”, dijo Eclypsium. Las cuñas son componentes que permiten que el código de firmware específico del proveedor/OEM interactúe con GRUB2.

“Además de los sistemas Linux, cualquier sistema que utilice Secure Boot con el estándar Microsoft UEFI CA es vulnerable a este problema”, añadió el equipo de investigación, hablando del posible impacto de GRUB2 en otros sistemas operativos que utilizan GRUB2 en un proceso de arranque seguro.

“Como resultado, creemos que la mayoría de los sistemas modernos que se utilizan hoy en día, incluidos servidores y estaciones de trabajo, portátiles y de escritorio, y un gran número de sistemas OT e IoT basados ​​en Linux, se ven potencialmente afectados por estas vulnerabilidades”.

Eclypsium dice que a partir de hoy y durante los próximos días y semanas, se espera que todo tipo de empresas de TI lancen parches para abordar BootHole en sus productos.

El proveedor de seguridad dijo que esperaba alertas y parches de seguridad de:

MicrosoftUEFI Security Response Team (USRT)OracleRed Hat (Fedora y RHEL)Canonical (Ubuntu)SuSE (SLES y openSUSE)DebianCitrixHP
VMwareOEMProveedores de software, incluido software de seguridad

Eclypsium dijo que espera que la aplicación de parches lleve mucho tiempo, ya que corregir los errores del gestor de arranque suele ser un proceso complejo debido a la multitud de componentes y la criptografía avanzada involucrada en el proceso. De todos modos, busque parches CVE-2020-10713 en futuros registros de cambios.

Todas las principales vulnerabilidades de Intel