Mirar bajo el capó de la placa base sin linterna: CERT lanza un parser para quienes no se conforman con solo actualizar el BIOS

Mirar bajo el capó de la placa base sin linterna: CERT lanza un parser para quienes no se conforman con solo actualizar el BIOS

Expertos reconstruyeron los formatos de BIOS a partir de «huellas digitales» y datos abiertos.

image

Analizar BIOS y UEFI actualizaciones suele hacerse casi a ciegas. Dentro de esos archivos se mezclan firmware, controladores, contenedores, imágenes y módulos ejecutables, y hay pocas herramientas que ofrezcan una visión clara del contenido. El equipo CERT del Carnegie Mellon SEI decidió simplificar esta tarea y lanzó CERT UEFI Parser, una herramienta en Python para inspeccionar imágenes ROM de firmware, instaladores y otros archivos relacionados con UEFI.

CERT UEFI Parser está escrito para Python 3 y se basa en el framework Construct, que se usa para describir estructuras binarias. Los desarrolladores subrayan que su analizador es más flexible que la implementación de referencia EDK2 y es más fácil de ampliar si se necesita soportar formatos propietarios o experimentales. El objetivo del proyecto es aprender a entender todos los tipos de datos que suelen aparecer dentro de la ROM UEFI, incluyendo archivos PE y estructuras de imágenes.

La herramienta se basa no solo en los datos de las especificaciones UEFI, sino también en resultados de investigaciones independientes de firmware. Como ejemplo se mencionan los trabajos de Igor Skochinsky sobre Intel ME. Los autores añaden que el proyecto no está vinculado a acuerdos de confidencialidad ni a otras restricciones, y que todos los formatos propietarios se reconstruyeron a partir de fuentes abiertas y de su propio análisis.

Para funcionar, el analizador necesita el paquete cert-uefi-support, que reúne utilidades de bajo nivel para desempaquetar y trabajar con datos binarios. Ambos paquetes están disponibles en PyPI y se instalan en un entorno virtual. La interfaz gráfica es opcional y se activa a través de PySide6, que no se instala por defecto debido al gran tamaño de sus dependencias.

CERT UEFI Parser se puede ejecutar en cuatro modos. Son: la interfaz gráfica (GUI), salida de texto en el terminal con coloración ANSI, JSON completo y un JSON 'ligero' con campos adecuados para generar SBOM. Como muestras de prueba, los autores proponen tomar actualizaciones de BIOS o UEFI desde el sitio del fabricante del dispositivo. No se garantiza la compatibilidad total con todos los modelos, pero muchos formatos comunes de los proveedores ya se analizan con éxito, y estudiar esas actualizaciones ayuda a comprender rápidamente las capacidades de la herramienta.