Microordenadores - Desarrollos modernos para sistemas retro

Coreboot, el reemplazo rápido, libre y seguro para el firmware de tu ordenador
24 de Julio de 2017

Coreboot es una plataforma de desarrollo de un firmware libre bajo licencia GPL con el que puedes reemplazar el firmware propietario de tu equipo y usar BIOS alternativas y libres como Seabios o GNU Grub. Además de un arranque mucho más rápido, es más seguro ya que usa mucho menos código y éste es totalmente abierto, por lo que puedes estudiarlo y mejorarlo, así como adaptarlo a placas base aún no soportadas.

Si eres administrador de sistemas o simplemente gestionas servidores para tus sitios redes, la seguridad de tu hardware debe preocuparte. Y no es para menos, dados los múltiples problemas de seguridad en la arquitectura x86. Los procesadores AMD tampoco se salvan, ya que incluyen funcionalidades similares como TrustZone o PSP.

El procedimiento normal es flashear un chip de la placa base usando placas de desarrollo como Raspberry Pi 3 o BeagleBone Black, entre otras, y el software Flashrom, siguiendo las instrucciones determinadas para cada placa tal y como se explica en el wiki de Coreboot. El firmware se compila y se flashea desde Linux, y una vez que se comprueba que el proceso es correcto se apaga y se enciende el ordenador.

En las últimas versiones ya no es necesario usar los archivos rom originales de la máquina ya que ofrecen la opción Native Graphics Initilization. Esta, junto a la BIOS SeaBIOS, es la opción que tienes que elegir si quieres tener consola en modo texto o usar sistemas operativos *BSD, ya que aunque también funcionan con GNU Grub, hay algunos problemas y es posible que en un futuro no lo haga debido a cambios en el bootloader.

Libreboot: la versión de Coreboot sin blobs

Los blobs son drivers binarios que se ejecutan en tu ordenador y que, al no ofrecer el código fuente, no se pueden estudiar ni modificar, por lo que reducen la seguridad del sistema. Libreboot, a diferencia de Coreboot, no permite instalar los blobs de VGA originales, y tampoco ofrece las actualizaciones de microcódigo de la CPU. Para mi esto es una desventaja, ya que partiendo de que el hardware no es fiable, y de que no es un driver que funciona dentro del sistema operativo, no usar estas actualizaciones puede dar problemas tales como corrupción de datos, como ocurre en las actualizaciones para Core 2 Duo.

No obstante, Libreboot no solo elimina blobs de Coreboot, sino que también aporta innovaciones que luego son aceptadas en Coreboot, como por ejemplo el método para desactivar la funcionalidad Intel AMT/ME que es un agujero de seguridad.

¿Existe alguna alternativa limpia y segura?

De momento, desgraciadamente, la respuesta es no, aunque está en desarrollo una plataforma de hardware libre llamada lowRISC, con un set de instrucciones RISC-V de 64 bits totalmente libre. En un mundo digital donde cada vez hay más amenazas, poder saber cómo funciona el hardware que usamos debe ser un requisito.

Mientras tanto, yo propongo comprar solamente hardware de segunda mano y evitar fabricantes especialmente hostiles con el software libre como Nvidia, usar y apoyar Coreboot o Libreboot siempre que sea posible y liberar los equipos del firmware tóxico con el que vienen de serie.

Enlaces


Contenido relacionado: