Microsoft descubre vulnerabilidades en bootloaders open-source con ayuda de IA

Microsoft ha descubierto vulnerabilidades en GRUB2, U-boot y Barebox utilizando Security Copilot. Estos fallos podrían permitir la ejecución de código arbitrario.

Cristian Do Carmo Rodríguez
1 de abr. de 2025
4 min de lectura
SeguridadPrivacidadNuevas tecnologíasInteligencia ArtificialMicrosoft

El equipo de Microsoft Threat Intelligence ha revelado el hallazgo de varias vulnerabilidades críticas en bootloaders de código abierto, incluyendo GRUB2, U-boot y Barebox. Lo más destacable es que este descubrimiento se aceleró significativamente gracias al uso de Microsoft Security Copilot, una herramienta de inteligencia artificial.

¿Qué son los bootloaders?

Un bootloader, o gestor de arranque, es el primer software que se ejecuta cuando enciendes tu ordenador o dispositivo. Su función principal es cargar el sistema operativo. Si un atacante logra comprometer el bootloader, puede obtener control total sobre el dispositivo, incluso antes de que el sistema operativo se inicie.

a computer keyboard sitting on top of a desk

En el caso de GRUB2, utilizado comúnmente en sistemas Linux, las vulnerabilidades podrían permitir a los atacantes saltarse el Secure Boot e instalar bootkits sigilosos, o incluso eludir otras medidas de seguridad como BitLocker. Imagina las consecuencias: un malware persistente que sobrevive incluso a la reinstalación del sistema operativo o al reemplazo del disco duro.

El papel de la IA en la detección de vulnerabilidades

Microsoft Security Copilot permitió al equipo de seguridad identificar problemas potenciales en las funcionalidades del bootloader, especialmente en los sistemas de archivos. Este enfoque les ahorró aproximadamente una semana de trabajo manual. La IA ayudó a identificar y refinar problemas de seguridad, descubriendo una vulnerabilidad de desbordamiento de enteros explotable.

text

Según Microsoft, esta investigación es un ejemplo de cómo las soluciones de IA pueden mejorar la eficiencia, optimizar los flujos de trabajo y mejorar las capacidades de los defensores, investigadores de seguridad y analistas de SOC.

Vulnerabilidades descubiertas y su impacto

Las vulnerabilidades descubiertas incluyen:

  • Desbordamientos de búfer en varios sistemas de archivos (UFS, Squash4, ReiserFS, JFS, RomFS, UDF, HFS) debido a desbordamientos de enteros.
  • Ataques de canal lateral criptográfico debido a comparaciones de memoria no constantes.
  • Desbordamientos de enteros en comandos de lectura.
  • La posibilidad de leer direcciones de memoria arbitrarias.

Si bien la explotación de las vulnerabilidades en U-boot y Barebox probablemente requeriría acceso físico al dispositivo, las vulnerabilidades en GRUB2 son más preocupantes ya que podrían explotarse de forma remota.

¿Qué es Secure Boot?

Antes de 2006, los ordenadores con procesadores Intel iniciaban el código del firmware de inicio conocido como BIOS (Basic Input/Output System), que se encargaba de la inicialización del hardware y la configuración de los servicios comunes para que luego los utilizara un gestor de arranque. En última instancia, la BIOS transferiría el control a un gestor de arranque codificado en modo real, que normalmente cargaría un sistema operativo (SO).

microsoft surface black laptop computer turned on beside green plant

Con el tiempo, los atacantes se dieron cuenta de que no existía una verificación de la raíz de confianza de los gestores de arranque por parte del firmware, lo que dio comienzo a la era de los bootkits, que son rootkits basados en gestores de arranque. Para estandarizar el proceso de arranque, en 2006 se introdujo un esquema de firmware unificado para sustituir la BIOS, que actualmente se conoce como Unified Extensible Firmware Interface (UEFI).

UEFI también ayudó a combatir los bootkits, ya que ofrece servicios que validan los gestores de arranque y sus propios módulos extensibles mediante firmas digitales. Ese protocolo se conoce como Arranque Seguro y es esencial para establecer una raíz de confianza para el proceso de arranque, en el que el firmware verifica los controladores UEFI y los módulos del SO con una clave de plataforma o una clave de intercambio de claves, y los gestores de arranque verifican el sistema operativo cargado.

La confianza se consigue entonces con la ayuda de los fabricantes de equipos, que pueden firmar el código de confianza de Arranque Seguro, mediante las Autoridades de Certificación (CA). Esencialmente, los fabricantes firman el código con su clave privada, y su clave pública se firma con una CA raíz, normalmente la CA UEFI de Microsoft. Esto también es esencial para dar soporte a gestores de arranque que no son de Windows, como GRUB2 (que normalmente arranca Linux) y permitir que los sistemas operativos de terceros se beneficien de Arranque Seguro.

person using macbook pro on white table

Dado que GRUB2 es totalmente de código abierto, los proveedores instalan un pequeño programa llamado shim, que está firmado por la CA UEFI de Microsoft y es responsable de validar la integridad de GRUB2. El shim puede consultar además un mecanismo llamado Secure Boot Advanced Targeting (SBAT) para obtener más opciones de revocación y gestión, ya que SBAT es utilizado por el shim para proporcionar una forma de rastrear y revocar componentes de software individuales basándose en metadatos en lugar de sólo firmas criptográficas.

Medidas a tomar

Los responsables de GRUB2, U-boot y Barebox ya han lanzado actualizaciones de seguridad para abordar estas vulnerabilidades. Microsoft recomienda encarecidamente a los usuarios que se aseguren de que sus sistemas estén actualizados con las últimas versiones.

Además, Microsoft subraya la importancia de la divulgación responsable de vulnerabilidades y la colaboración entre la comunidad de seguridad para proteger a los usuarios contra amenazas actuales y futuras.

Conclusión

Este hallazgo subraya la importancia de la seguridad en los bootloaders y cómo la IA puede acelerar la detección de vulnerabilidades. Mantener los sistemas actualizados y fomentar la colaboración en la comunidad de seguridad son pasos clave para protegerse contra posibles ataques.