
CVE-2026-25250 — Actualizado!
Análisis y exploit para CVE-2026-25250, una omisión de Secure Boot en Horizon DataSys Reboot Restore donde shdloader.efi carga Shield.efi sin verificación.
🕷️ CVE-2026-25250: Validación Incorrecta de la Cadena de Carga de Arranque Confiable
Un cargador de arranque de terceros firmado por Microsoft que carga un binario EFI secundario sin verificación de firma ni integridad, colapsando la cadena de confianza de Secure Boot desde dentro.
📑 Tabla de Contenidos
- Contexto de la Investigación
- Referencias Oficiales
- Reprodúcelo Tú Mismo
- Cadena de Arranque Vulnerable
- Resumen de la Vulnerabilidad
🧠 Contexto de la Investigación
Este repositorio documenta la investigación sobre CVE-2026-25250, una vulnerabilidad de omisión de Secure Boot divulgada a Microsoft y asignada con un CVE en abril de 2026. Rápidamente destacó como uno de los problemas de seguridad de firmware más significativos del año, precisamente porque el componente vulnerable está firmado por Microsoft y, por lo tanto, es confiable de forma incondicional en la gran mayoría de los sistemas Windows con UEFI habilitado.
La vulnerabilidad fue descubierta por Mickey Shkatov y Stanislav Lyakhov en Eclypsium, uno de los equipos de investigación de seguridad de firmware y cadena de suministro más destacados de la industria. Mickey Shkatov es una figura de larga trayectoria en la investigación ofensiva de UEFI, autor de BootHole (CVE-2020-10713, una omisión crítica de Secure Boot en GRUB2 que afectó prácticamente a todas las distribuciones de Linux y configuraciones de arranque dual con Windows), y presentador de "One Bootloader to Load Them All" en DEF CON 30 junto a Jesse Michael, una charla que catalogó sistemáticamente cómo los cargadores de arranque de terceros firmados por Microsoft representan una debilidad a nivel de clase en el ecosistema de Secure Boot.
CVE-2026-25250 se ubica directamente en esa clase.
Lo que lo hace particularmente instructivo es su simplicidad: sin corrupción de memoria, sin fallo criptográfico en el firmware en sí, solo un binario confiable tomando una decisión insegura sobre qué carga a continuación. Un solo eslabón débil es suficiente para colapsar todo el modelo de Secure Boot en un sistema objetivo.
📌 Referencias Oficiales
CVE-2026-25250 fue descubierto durante el análisis de componentes de arranque UEFI de terceros implementados en entornos empresariales de recuperación. El producto afectado es la solución Reboot Restore de Horizon DataSys.
La vulnerabilidad fue asignada por MITRE en lugar de Microsoft, porque el fallo reside en firmware de terceros (shdloader.efi), no en Windows ni en ningún código creado por Microsoft.
Referencias oficiales:
-
Centro de Respuesta de Seguridad de Microsoft - Patch Tuesday de abril de 2026
Boletín mensual de actualizaciones de seguridad.
-
Entrada oficial del CVE. CVSS 6.0 - AV:L/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:N. CWE-325: Falta de Paso Criptográfico Requerido.
-
Divulgación Técnica de Eclypsium
Divulgación de investigación original del equipo descubridor, incluida la publicación en LinkedIn que llevó esta vulnerabilidad por primera vez a la atención pública.
🔬 Reprodúcelo Tú Mismo
La divulgación de Eclypsium, publicada en LinkedIn por el equipo descubridor, proporciona suficiente contexto para identificar el software afectado y descargarlo directamente desde el sitio web del proveedor.
El instalador de Horizon DataSys Reboot Restore está disponible públicamente, e instalarlo en un sistema de prueba coloca tanto shdloader.efi como Shield.efi en la Partición del Sistema EFI, donde pueden examinarse estáticamente u observarse en tiempo de ejecución.
Configuración de laboratorio recomendada:
VM de Windows 10/11 (QEMU o VMware)
├── Secure Boot: Habilitado
├── Horizon DataSys Reboot Restore: Instalado
├── ESP accesible mediante: mountvol X: /S
└── Objetivos:
HorizonDataSys
X:\EFI\shdloader.efi ← firmado, confiable, carga la siguiente etapa
X:\EFI\Shield.efi ← cargado sin ninguna verificación
Una vez instalado, se puede confirmar que shdloader.efi está firmado con Microsoft CA 2011 mediante sigcheck.exe (Sysinternals) o pesign. La ausencia de cualquier llamada a LoadImage / StartImage en la ruta de carga de Shield.efi es visible de inmediato en el análisis estático.
🐜 Cadena de Arranque Vulnerable
Esta vulnerabilidad afecta a una cadena de arranque de múltiples etapas, no a un solo binario.
🧨 Etapa 1 - Cargador de Arranque Confiable
- shdloader.efi
- Firmado digitalmente con Microsoft UEFI CA 2011
- Confiable de forma incondicional según la política de firmware de Secure Boot
- Instalado en la ESP por el software de Horizon DataSys
⚠️ Etapa 2 - Carga Útil No Verificada
- Shield.efi
- Cargado dinámicamente por shdloader.efi en el momento del arranque
- ❌ Sin verificación de firma
- ❌ Sin comprobación de integridad
- ❌ Sin uso de las API UEFI LoadImage / StartImage
- ✅ Libremente reemplazable por cualquier Administrador local
📌 Observación Clave
La vulnerabilidad no reside en el firmware. Reside en la lógica de un cargador de arranque confiable, un binario que el firmware ya aprobó, que elige cargar un binario secundario a través de una ruta de código que omite todas las comprobaciones de seguridad.
Firmware
└── verifica shdloader.efi ✅ Microsoft CA 2011, confiable
└── ManualPEParse(Shield.efi) ❌ sin LoadImage, sin comprobación de firma
└── EntryPoint() 💥 código controlado por el atacante, pre-OS
El perímetro de Secure Boot solo es tan fuerte como el binario menos cuidadoso que confía en él.
🧪 Resumen de la Vulnerabilidad
CVE-2026-25250 es una omisión de Secure Boot causada por una validación incorrecta de un binario EFI secundario cargado durante el proceso de arranque. El cargador de arranque afectado (shdloader.efi) está firmado y es confiable para Secure Boot, pero carga Shield.efi mediante una rutina manual de análisis de PE sin ningún tipo de verificación criptográfica.
Es un fallo de diseño y del modelo de confianza: un componente confiable toma una decisión insegura que anula todas las protecciones posteriores.
🔐 Secure Boot y Modelo de Confianza
Secure Boot impone una cadena de confianza en la que cada componente ejecutado durante la secuencia de arranque debe verificarse antes de transferir el control. El modelo solo se mantiene si cada binario confiable en la cadena respeta ese contrato:
Firmware → verifica el cargador de arranque → el cargador de arranque ejecuta solo código verificado
CVE-2026-25250 rompe el segundo eslabón:
Firmware → verifica shdloader.efi (✅ confiable)
↓
shdloader.efi → carga Shield.efi (❌ no verificado)
↓
Código arbitrario sin firmar se ejecuta antes del arranque
La aplicación de Secure Boot a nivel de firmware se vuelve irrelevante una vez que un binario confiable introduce una ruta de ejecución no verificada.
🧬 Análisis de Causa Raíz
Clasificado como:
- CWE-325: Falta de Paso Criptográfico Requerido
Se realiza una operación sensible a la seguridad sin un paso de verificación criptográfica requerido, lo que permite a un atacante omitir la protección que ese paso habría aplicado.
| Paso | Realizado | Notas |
|---|---|---|
| Localizar Shield.efi en la ESP | ✅ | Acceso estándar al sistema de archivos |
| Leer el archivo en memoria | ✅ | - |
| Analizar los encabezados PE manualmente | ✅ | Implementación personalizada |
| Verificar la firma | ❌ | No realizado |
| Comprobar contra db / dbx | ❌ | No realizado |
| Llamar a LoadImage / StartImage | ❌ | Omitido por completo |
| Transferir la ejecución al punto de entrada | ✅ | Llamada directa |
La ausencia de LoadImage / StartImage es la causa raíz. Esos Servicios de Arranque UEFI son el punto de integración para la aplicación de la política de Secure Boot; omitirlos significa omitirlo todo.
💥 Proceso de Explotación
La explotación requiere acceso de Administrador local y un solo reinicio.
- Montar la Partición del Sistema EFI
- Reemplazar Shield.efi con un binario EFI arbitrario sin firmar
- Reiniciar
En el siguiente arranque, shdloader.efi se ejecuta (confiable para el firmware), carga el binario controlado por el atacante y transfiere la ejecución, pre-OS, pre-EDR, antes de que se aplique cualquier política de arranque medida, sin ninguna objeción de Secure Boot.
Permite:
- Bootkits UEFI persistentes que sobreviven a reinstalaciones del sistema operativo y borrados completos del disco.
- Implantes en etapas tempranas invisibles para cualquier herramienta de seguridad a nivel de sistema operativo.
- Evasión completa de las protecciones a nivel de kernel (EDR, PatchGuard, VBS/HVCI).
📚 Recursos
-
Eclypsium - Divulgación de CVE-2026-25250
Investigación original de Mickey Shkatov y Stanislav Lyakhov. La publicación de Eclypsium en LinkedIn que anuncia el descubrimiento enlaza al software de Horizon DataSys, lo que permite un análisis independiente.
-
Microsoft MSRC - Patch Tuesday de abril de 2026
Boletín de seguridad de Microsoft.
-
Entrada oficial del CVE. Asignado por MITRE porque la vulnerabilidad reside en firmware de terceros, no en código de Microsoft.
-
Eclypsium - BootHole (CVE-2020-10713)
Mickey Shkatov y Jesse Michael - omisión crítica de Secure Boot en GRUB2 que afecta prácticamente a todas las distribuciones de Linux y sistemas de arranque dual con Windows.
-
DEF CON 30 - "One Bootloader to Load Them All"
Mickey Shkatov y Jesse Michael - análisis sistemático de los cargadores de arranque de terceros firmados por Microsoft como una superficie de ataque de Secure Boot a nivel de clase. CVE-2026-25250 es un caso directo de este modelo de amenaza.
-
CWE-325: Falta de Paso Criptográfico Requerido
Clasificación de la causa raíz para la verificación ausente en la ruta de carga de
shdloader.efi. -
Especificación UEFI - Servicios de Arranque: LoadImage / StartImage
Los Servicios de Arranque UEFI que aplican la política de Secure Boot - omitidos por completo por el cargador PE manual de
shdloader.efi.
🤝 Investigación y Colaboración
¿Trabajas en algo similar? ¿Investigas sobre UEFI, seguridad de kernel, explotación u otro tema de seguridad interesante? Si necesitas ayuda para desarrollar un exploit, explorar una técnica o simplemente quieres intercambiar ideas, no dudes en contactarme. Siempre estoy abierto a discutir investigaciones, ayudar donde pueda y colaborar en proyectos interesantes. No dudes en contactarme en LinkedIn.