cargador de arranque

Arranque seguro Linux

Arranque seguro Linux

Linux: ¿Qué es el arranque seguro??

Al principio, una computadora ejecuta un programa específico para detectar e inicializar sus componentes de hardware. Tradicionalmente, las PC compatibles con IBM utilizan el sistema básico de entrada y salida (BIOS). En contraste, las Mac usan OpenFirmware, Android solo tiene un cargador de arranque, y una Raspberry Pi comienza a partir de un firmware guardado en el Sistema en un chip (SoC). Este paso inicial incluye verificaciones de hardware, así como la búsqueda de sistemas operativos disponibles en medios de almacenamiento que son parte de la computadora como un disco duro, CDROM / DVD o una tarjeta SD, o conectados a ella a través de la red (Network File System (NFS)). , Arranque PXE).

El orden de búsqueda real depende de la configuración del BIOS de la computadora. La Figura 2 muestra una lista de dispositivos disponibles para arrancar.

Al final, se muestra una lista de los sistemas operativos disponibles con parámetros específicos (llamados "opciones de arranque disponibles") en un menú en el que puede elegir el sistema operativo que desea iniciar.

Desde 2012 Secure Boot está en uso. Este artículo explicará qué es, cuál es la intención detrás de él y cómo funciona. Además, responderemos a la pregunta de si se necesita Secure Boot para máquinas basadas solo en Linux y cómo las distribuciones de Linux manejan este caso.


¿Qué es el arranque seguro??

El arranque seguro se trata de confianza. La idea general detrás de esto es iniciar la máquina de una manera segura para evitar que la computadora se ejecute con malware desde el principio. En general, un comienzo limpio con un sistema confiable es un enfoque que debe apoyarse firmemente.

El arranque seguro es parte de la interfaz de firmware extensible unificada (UEFI), una interfaz central entre el firmware, los componentes individuales de la computadora y el sistema operativo [3]. Durante un período de aproximadamente cinco años fue desarrollado por Intel y Microsoft como reemplazo del BIOS. En 2012, versión 2.3.1 de UEFI se introdujo con Microsoft Windows 8. Microsoft hizo obligatorio que los fabricantes de computadoras implementaran UEFI si querían obtener una certificación de Windows 8 para sus máquinas de nueva construcción [15].

Pero, ¿por qué el arranque seguro se llama arranque seguro?? Qué lo convierte en una opción de arranque segura? El arranque seguro solo permite el arranque desde cargadores de arranque asignados previamente y, por lo tanto, está destinado a evitar que se inicien malware u otros programas no deseados. Un BIOS tradicional arrancaría cualquier software. Incluso permitiría que el malware, como un rootkit, reemplace su cargador de arranque. El rootkit podría cargar su sistema operativo y permanecer completamente invisible e indetectable en su sistema. Mientras que con el arranque seguro, el firmware del sistema comprueba primero si el cargador de arranque del sistema está firmado con una clave criptográfica. La clave criptográfica es una clave que ha sido autorizada por una base de datos contenida en el firmware. Solo si se reconoce la clave, permitirá que el sistema se inicie. Dicha firma válida debe seguir una especificación de la Autoridad de certificación (CA) UEFI de Microsoft.


Perspectivas diferentes

A primera vista esto suena bastante bien, pero siempre hay dos caras de una moneda. Como de costumbre conviven ventajas y desventajas. Las reseñas de prensa elogian o demonizan el arranque seguro según quién esté escribiendo la reseña.

Primero, tenga en cuenta que la autoridad sobre las claves criptográficas está en manos de un único actor global: Microsoft. Dar energía a millones de máquinas a una sola empresa nunca es una buena idea. De esa forma, Microsoft se asegura el control total de su máquina. Con una sola decisión, Microsoft puede bloquear todo el mercado de un solo golpe y excluir tanto a sus competidores como a usted como cliente. mi.gramo. Si desea instalar hardware de un fabricante diferente en una etapa posterior, deberá asegurarse de que la clave del nuevo componente se haya almacenado en el sistema de base de datos. Dejándolo con flexibilidad y opciones restringidas, especialmente si es un desarrollador.

En segundo lugar, no solo sus opciones de hardware están restringidas, sino que también las opciones de su sistema operativo deben estar limitadas debido a la tecnología UEFI introducida por Windows. Esto significa que le está dificultando la vida a la comunidad Linux. Antes de su uso en hardware basado en UEFI, los cargadores de arranque de Linux como GRUB deben estar certificados primero y, por lo tanto, ralentiza los desarrollos bastante rápidos, ya que la comunidad de código abierto es conocida. Nadie sabe qué sucede si el validador central comete un error durante la validación o bloquea el lanzamiento de un software actualizado.

En tercer lugar, ¿qué significa el término malware hoy y mañana?? ¿Incluye sistemas operativos de la competencia [5] o están excluidos?? El proceso de validación se ejecuta detrás de las cortinas y nadie puede probarlo.

Cuarto, existen reservas con respecto a la seguridad. Según los desarrollos actuales, la longitud de las claves criptográficas es relativamente corta. El arranque seguro solo permite certificados X509 y claves RSA con una longitud fija de 2048 bits [16]. En un futuro próximo, con el uso de la paralelización masiva y una mayor potencia informática basada en la virtualización, se espera que se rompa este nivel de seguridad. Hoy en día, se recomiendan claves criptográficas con una longitud de 4096 bits.

En quinto lugar, parece que el software, ofrecido por un gran proveedor y certificado, es seguro y sin errores. Como muestra la historia, todos sabemos que esto no es cierto, el software siempre contiene errores. Una certificación simplemente lo adormece con una falsa sensación de seguridad.


Soluciones para código abierto

Pero donde hay un problema, también hay una solución. Microsoft ofrece generosamente la oportunidad para que los distribuidores de Linux accedan a su portal Microsoft Sysdev para que se firmen sus cargadores de arranque [17]. Sin embargo, este servicio viene con una etiqueta de precio.

Las distribuciones de Linux solo tienen un "shim" [11] firmado en el portal de Microsoft. El shim es un pequeño cargador de arranque que arranca el cargador de arranque GRUB principal de las distribuciones de Linux. Microsoft solo verifica la corrección firmada y, a partir de entonces, su distribución de Linux se inicia normalmente. Esto ayuda a mantener el sistema Linux como de costumbre.

Como se informó de varias fuentes, (U) EFI funciona bien con Fedora / RedHat, Ubuntu, Arch Linux y Linux Mint. Para Debian GNU / Linux no hay soporte oficial con respecto al Arranque seguro [9]. De todos modos, hay una publicación de blog interesante sobre cómo configurar esto [18], así como una descripción en Debian Wiki [14].

Alternativas a UEFI

UEFI no es el único sucesor del BIOS de la PC; existen alternativas. Puede echar un vistazo más de cerca a OpenBIOS [4], libreboot [7], Open Firmware [8,9] y coreboot [10]. Para este artículo no los probamos, pero es útil saber que existen implementaciones alternativas y que funcionan sin problemas.


Conclusión

Como se mencionó anteriormente, la pregunta clave es la confianza. Con respecto a las computadoras, pregúntese en qué partes de su sistema confía: los componentes de hardware (firmware, chips, TPM) y / o los componentes de software (cargador de arranque, sistema operativo, software que está en uso). No se puede depurar todo el sistema. Puede resultarle útil saber que su sistema operativo no va en contra de sus intereses y que realiza las cosas para las que compró el sistema, de una manera segura sin estar controlado por un monopolista.


Enlaces y referencias

Agradecimientos

Frank Hofmann y Mandy Neumeyer son coautores del artículo.  Los autores desean agradecer a Justin Kelly por su ayuda y comentarios críticos al escribir este artículo.

Cómo instalar y jugar a Doom en Linux
Introducción a Doom La serie Doom se originó en los años 90 después del lanzamiento del Doom original. Fue un éxito instantáneo y, desde ese momento e...
Vulkan para usuarios de Linux
Con cada nueva generación de tarjetas gráficas, vemos que los desarrolladores de juegos superan los límites de la fidelidad gráfica y se acercan un pa...
OpenTTD frente a Simutrans
Crear su propia simulación de transporte puede ser divertido, relajante y extremadamente atractivo. Es por eso que debes asegurarte de probar tantos j...