Estoy planeando comprar una nueva computadora portátil en los próximos días, y estoy bastante impresionado con los nuevos y geniales Ultrabooks. Como usuario de GNU / Linux desde hace mucho tiempo, por supuesto, instalaré una distribución de mi elección en él.
Lo más probable es que tenga que comprar una computadora con Windows 8 preinstalado; y es probable que ejecute UEFI y tenga un "arranque seguro", en el que los núcleos no firmados no arrancarán.
UEFI es probablemente bueno, BIOS puede necesitar retirarse. Supongo que lo peludo es el arranque seguro .
Por lo que yo puedo entender, algunas de confianza certificados serán integrados en el firmware y así en el núcleo etc . Si el certificado del núcleo se puede rastrear a cualquiera de los firmware , el núcleo se iniciará, de lo contrario, UEFI me avisará y se negará a iniciar. Este proceso evitará el arranque de software no certificado. Esto puede tener beneficios, aunque no puedo verlos.
Me pregunto cómo puede un núcleo de código abierto obtener una de estas claves y aún así ser libre . He leído un hilo en la lista de correo de Linux donde un empleado de Red Hat le pide a Linus Torvalds que extraiga un conjunto de cambios que implemente la facilidad para analizar binarios PE y tomar un conjunto complejo de acciones para permitir que el kernel arranque en modo de arranque seguro (hasta donde puedo entender ) Quieren hacer esto porque Microsoft solo firma los binarios de PE. El Sr. Torvalds ha rechazado amablemente este conjunto de cambios, afirmando que el núcleo ya implementa el estándar, que no es PE . RedHat está tratando de llevar este código al kernel para que no tengan que bifurcarlo algún día.
Mira, esto es algo complicado. Déjame hacerte mis preguntas:
- ¿Qué beneficios obtendré con UEFI y Secure Boot, como usuario doméstico?
- ¿Cómo se hace esta firma ?
- ¿Quién puede obtener firmas / certificados? ¿Está pagado? ¿Puede ser público? (Debería estar disponible en el código fuente de Linux, ¿no?)
- ¿Es Microsoft la única autoridad para proporcionar firmas? ¿No debería haber una base independiente para proporcionarlos?
¿Cómo afectará esto a los núcleos de código abierto y gratuitos, a los desarrolladores de kernel aficionados / académicos, etc. ? Por ejemplo, ¿este arranque ( un código de sector de arranque muy básico ):
hang: jmp hang times 510-($-$$) db 0 db 0x55 db 0xAA
Una noticia en este sitio web fue la inspiración de esta pregunta. Un grupo de usuarios de Linux español llamado Hispalinux ha presentado una queja contra Microsoft sobre este tema ante Europan Comission.
¿Debería Preocuparme? Rechazo no utilizar software propietario ni software firmado por empresas de confianza . Lo he hecho hasta ahora y quiero continuar así. Gracias por adelantado.
UEFI
en sí no es un gran problema, pero puede ser un arranque seguro.Respuestas:
Tiene un nuevo mecanismo de seguridad para controlar qué puede y qué no puede arrancar desde su hardware. Una característica de seguridad. No sientes que lo necesitas hasta que sea demasiado tarde. Pero yo divago.
Los controladores, como el firmware de su GPU, deben estar firmados en línea con el Arranque seguro, de lo contrario, puede ser otro rootkit. El status quo es que esos controladores están firmados en formato PE. El núcleo puede arrancar sin esos de todos modos, pero el hardware no funcionará. Analizar el formato PE en el kernel es una opción técnicamente más simple para esto que pedirle a cada proveedor de hardware que firme sus blobs para cada distribución, o configurar un marco de espacio de usuario para hacerlo. Linus decide no chupar la polla de Microsoft. Ese no es un argumento técnico.
La característica más visible es el arranque rápido UEFI. Tengo en mis manos varios escritorios con el logotipo de Windows 8 y se inician tan rápido que a menudo echo de menos que aparezca el menú de inicio. Intel y los OEM tienen bastante ingeniería en esto.
Si eres del tipo de usuarios de Linux que odian la hinchazón y la duplicación de código con pasión, también puedes administrar el arranque múltiple a nivel de firmware y deshacerte de los cargadores de arranque por completo. UEFI proporciona un administrador de arranque con el que puede iniciar directamente en el kernel o elegir iniciar otros sistemas operativos con el menú de firmware. Aunque puede necesitar algunos retoques.
Además, gráficos más elegantes durante el tiempo de arranque y en el menú de firmware. Mayor seguridad durante el arranque (arranque seguro). Otras características (arranque de red IPv4 / 6, dispositivos de arranque de 2 TB +, etc.) están destinadas principalmente a usuarios empresariales.
De todos modos, como dijo Linus , se supone que BIOS / UEFI "simplemente carga el sistema operativo y salga de allí", y UEFI ciertamente lo parece para los usuarios domésticos con arranque rápido. Ciertamente hace más cosas que BIOS debajo del capó, pero si estamos hablando de usuarios domésticos, no les importará eso.
Teóricamente, un binario se cifra con una clave privada para generar una firma. Luego, la firma se puede verificar con la clave pública para demostrar que el binario está firmado por el propietario de la clave privada, luego se verifica el binario. Ver más en Wikipedia .
Técnicamente, solo se firma el hash del binario, y la firma se incrusta en el binario con formato PE y twiddling de formato adicional.
De manera procesal, su OEM almacena la clave pública en su firmware, y es de Microsoft. Tienes dos opciones:
Como las firmas / certificados están integrados en los archivos binarios, se espera que todos los usuarios los obtengan. Cualquiera puede configurar su propia CA y generar un certificado para sí mismo. Pero si desea que Microsoft genere un certificado para usted, debe pasar por Verisign para verificar su identidad. El proceso cuesta $ 99. La clave pública está en el firmware. La clave privada está en la caja fuerte de Microsoft. El certificado está en el binario firmado. No hay código fuente involucrado.
El aspecto técnico es bastante trivial, en comparación con el proceso de gestión de PKI, verificación de identidad, coordinación con todos los OEM y proveedores de hardware conocidos. Esto cuesta un querido. Microsoft tiene una infraestructura (WHQL) y experiencia para esto por años. Entonces ofrecen firmar binarios. Cualquier fundación independiente puede dar un paso adelante para ofrecer lo mismo, pero ninguna lo ha hecho hasta ahora.
Desde una sesión UEFI en IDF 2013, veo que Canonical también ha comenzado a poner su propia clave para el firmware de algunas tabletas. De modo que Canonical puede firmar sus propios binarios sin pasar por Microsoft. Pero es poco probable que firmen binarios por usted porque no saben quién es usted.
Su kernel personalizado no arrancará en Arranque seguro, porque no está firmado. Sin embargo, puedes apagarlo.
El modelo de confianza de Arranque seguro bloquea algunos aspectos del núcleo. Como si no pudieras destruir tu núcleo escribiendo a / dev / kmem incluso si eres root ahora. No puede hibernar en el disco (se está trabajando en sentido ascendente) porque no hay forma de garantizar que la imagen del núcleo no se cambie a un kit de arranque cuando se reanude. No puede volcar el núcleo cuando el núcleo entra en pánico, porque el mecanismo de kdump (kexec) se puede usar para arrancar un bootkit (que también se trabaja en sentido ascendente). Estos son controvertidos y Linus no los acepta en el núcleo de la línea principal, pero algunas distribuciones (Fedora, RHEL, Ubuntu, openSUSE, SUSE) se envían con sus propios parches de arranque seguro de todos modos.
Personalmente, la firma del módulo requerida para construir un núcleo de arranque seguro cuesta 10 minutos, mientras que la compilación real solo toma 5 minutos. Si apago la firma del módulo y enciendo ccache, la construcción del kernel solo toma un minuto.
UEFI es una ruta de inicio completamente diferente del BIOS. El firmware UEFI no invocará todo el código de arranque del BIOS.
Como se dijo anteriormente, nadie, excepto Microsoft, ha dado un paso al frente para hacer el servicio público. Actualmente no hay evidencia de la intención de Microsoft de hacer algo malo con esto, pero tampoco hay nada que evite que Microsoft abuse de su monopolio de facto e inicie un viaje de poder. Por lo tanto, si bien los grupos de usuarios de FSF y Linux pueden no parecer bastante pragmáticos y no se han sentado para resolver problemas de manera constructiva, es bastante necesario que las personas presionen a Microsoft y le adviertan sobre las repercusiones.
Razones para adoptar el arranque seguro:
fuente
Acabo de pasar por esto con una compra reciente de computadora portátil que vino con Windows 8 y el arranque seguro UEFI. Después de mucho tiempo e investigación, esto es lo que puedo responder:
Los beneficios de UEFI que notará el usuario promedio es que lo primero que verá en su pantalla será la pantalla del cargador de arranque UEFI de la marca Microsoft / Vendor. Ninguna de esas cosas aterradoras como "Presione Supr para la configuración, F11 para seleccionar el dispositivo de arranque", etc.
Luego hará una transición agradable en la pantalla de espera del kernel / cargador de arranque de Microsoft. Esto presenta un "poder para impulsar" la experiencia temática de Microsoft. Si eso es un beneficio real está en el ojo del espectador, supongo. Estaba bastante molesto porque no tenía la información normal que esperaba ver en el arranque. Por ejemplo, buena suerte si su proveedor no utiliza una clave estándar para ingresar a la configuración básica de UEFI / Bios.
Ah, sí, y la teoría es que esto detendrá los virus del sector de arranque, o al menos hará que los creadores creen / roben la identificación de alguien y paguen $ 99 a Verisign (la ruta de RedHat Fedora. Google).
Para obtener información sobre cómo se realiza la firma real, consulte esto: http://al.robotfuzz.com/playing-with-uefi-secure-boot-part-2-basic-authenticode-signing-with-ms-tools / /
Quien ? Solo Microsoft?
Ah, y ahí está el problema. Cualquiera puede firmar el código con cualquier clave. El problema es que la máquina solo ejecutará código firmado por una clave de autoridades de confianza. La mitad pública de la clave se instala en el núcleo UEFI de los sistemas en la fábrica y se utiliza para verificar la firma de los programas UEFI (código de inicio) firmados con la clave privada.
¿Adivina quién es la clave pública instalada en la fábrica? ¿Adivina quién requiere que el arranque seguro esté habilitado de forma predeterminada?
Todos los fabricantes de sistemas obviamente pondrán la clave de Microsoft allí. También podrían poner la clave de Canonical (Ubuntu), la clave de Red Hat, la clave de Apple, etc. Sin embargo, más claves significan más puntos por infracciones, y obviamente hay un límite físico a la cantidad que pueden almacenar.
¿Y cuál es la solución para un usuario rebelde como usted?
Espero que su proveedor del sistema le permita acceder a la configuración de arranque del sistema
Espero que te permitan desactivar el arranque seguro. El código de arranque de Windows seguirá ejecutándose sin un arranque seguro.
Si es realmente afortunado, el proveedor del sistema le permitirá ingresar sus propias claves de autoridad de certificación y podrá firmar sus propias cosas. Esto solo es realmente necesario si quieres jugar con Secure Boot.
Mi computadora portátil MSI me permite hacer todo lo anterior.
Me gustaría ver un mundo donde cualquiera pueda recoger una copia gratuita de una distribución de Linux y reemplazar su sistema operativo. Esto es lo que teníamos antes del arranque seguro. También tuvimos muchos virus del sector de arranque. Tener que deshabilitar el arranque seguro en la configuración de su sistema es probablemente un obstáculo lo suficientemente pequeño como para verificar que tiene el poder mental para instalar un sistema operativo o conocer a alguien que lo haga.
No tener la capacidad de apagarlo es lo malo, y eso depende del fabricante. No culpe a Microsoft, a menos que estén 'convenciendo' al fabricante para que evite deshabilitar el arranque seguro.
fuente