Se eu comprar um computador com Windows 8 e Inicialização Segura, ainda poderei instalar o Linux?

48

Ouvi falar muito sobre como a Microsoft está implementando o UEFI Secure Boot no Windows 8. Aparentemente, ela impede que carregadores de inicialização "não autorizados" sejam executados no computador, para evitar malware. Há uma campanha da Free Software Foundation contra a inicialização segura, e muitas pessoas dizem on-line que é uma "garra poderosa" da Microsoft para "eliminar sistemas operacionais gratuitos".

Se eu adquirir um computador com o Windows 8 e a Inicialização segura pré-instalados, ainda poderei instalar o Linux (ou outro SO) posteriormente? Ou um computador com inicialização segura só funciona com o Windows?

nhinkle
fonte

Respostas:

70

Primeiro de tudo, a resposta simples para sua pergunta:

  • Se você tiver um tablet ARM executando o Windows RT (como o Surface RT ou o Asus Vivo RT), não poderá desativar a Inicialização segura ou instalar outros sistemas operacionais . Como muitos outros tablets ARM, esses dispositivos executam apenas o sistema operacional que eles acompanham.

  • Se você tiver um computador não-ARM executando o Windows 8 (como o Surface Pro ou qualquer um dos inúmeros ultrabooks, desktops e tablets com um processador x86-64), poderá desativar completamente o Secure Boot ou instalar suas próprias chaves e assine seu próprio gerenciador de inicialização. De qualquer forma, você pode instalar um sistema operacional de terceiros, como uma distribuição Linux ou FreeBSD ou DOS ou o que quiser.


Agora, vamos aos detalhes de como toda essa coisa do Secure Boot realmente funciona: Há muitas informações erradas sobre o Secure Boot, principalmente da Free Software Foundation e de grupos semelhantes. Isso tornou difícil encontrar informações sobre o que o Secure Boot realmente faz, por isso, tentarei explicar melhor. Observe que não tenho experiência pessoal no desenvolvimento de sistemas de inicialização seguros ou algo assim; isso é exatamente o que aprendi lendo online.

Primeiro de tudo, o Secure Boot não é algo que a Microsoft criou. Eles são os primeiros a implementá-lo amplamente, mas não o inventaram. Faz parte da especificação UEFI , que é basicamente uma substituição mais recente do BIOS antigo com o qual você provavelmente está acostumado. UEFI é basicamente o software que fala entre o sistema operacional e o hardware. Os padrões UEFI são criados por um grupo chamado " UEFI Forum ", formado por representantes do setor de computação, incluindo Microsoft, Apple, Intel, AMD e vários fabricantes de computadores.

Segundo ponto mais importante: ter a Inicialização segura ativada em um computador não significa que o computador nunca possa inicializar qualquer outro sistema operacional . De fato, os Requisitos de Certificação de Hardware do Windows da Microsoft declaram que, para sistemas não-ARM, você deve poder desativar a Inicialização Segura e alterar as chaves (para permitir outros SOs). Mais sobre isso mais tarde.

 

O que o Secure Boot faz?

Essencialmente, evita que o malware ataque o seu computador através da sequência de inicialização. O malware que entra pelo gerenciador de inicialização pode ser muito difícil de detectar e parar, pois pode se infiltrar em funções de baixo nível do sistema operacional, mantendo-o invisível para o software antivírus. Tudo o que o Secure Boot realmente faz é verificar se o carregador de inicialização é de uma fonte confiável e se não foi adulterado. Pense nisso como as tampas pop-up em garrafas que dizem "não abra se a tampa estiver aberta ou a vedação for adulterada".

O botão aparece quando o selo original é quebrado

No nível superior de proteção, você tem a chave da plataforma (PK). Existe apenas uma PK em qualquer sistema e ela é instalada pelo OEM durante a fabricação. Essa chave é usada para proteger o banco de dados KEK. O banco de dados KEK contém chaves de troca de chaves, que são usadas para modificar os outros bancos de dados de inicialização segura. Pode haver várias KEKs. Existe um terceiro nível: o Banco de dados autorizado (db) e a Base de dados proibida (dbx). Eles contêm informações sobre autoridades de certificação, chaves criptográficas adicionais e imagens de dispositivos UEFI para permitir ou bloquear, respectivamente. Para que um carregador de inicialização possa ser executado, ele deve ser assinado criptograficamente com uma chave que está no db e não no dbx.

Chave da plataforma> KEK> (hashes permitidos / hashes não permitidos)
Imagem do Building Windows 8: Protegendo o ambiente pré-SO com UEFI

Como isso funciona em um sistema certificado Windows 8 do mundo real

O OEM gera sua própria PK, e a Microsoft fornece uma KEK que o OEM deve carregar previamente no banco de dados KEK. A Microsoft assina o Windows 8 Bootloader e usa a KEK para colocar essa assinatura no Banco de Dados Autorizado. Quando o UEFI inicializa o computador, ele verifica o PK, o KEK da Microsoft e o carregador de inicialização. Se tudo parecer bom, o sistema operacional poderá inicializar.

Inicialização segura no Windows 8: UEFI nativo> Somente carregador do SO verificado> O SO OS / UEFI iniciará apenas um carregador do SO verificado / o malware não pode alternar o carregador de inicialização
Imagem do Building Windows 8: Protegendo o ambiente pré-SO com UEFI

 

De onde vêm os sistemas operacionais de terceiros, como o Linux?

Primeiro, qualquer distribuição Linux pode optar por gerar uma KEK e solicitar que os OEMs a incluam no banco de dados KEK por padrão. Eles teriam tanto controle sobre o processo de inicialização quanto a Microsoft. Os problemas com isso, conforme explicado por Matthew Garrett , do Fedora , são: a) seria difícil fazer com que todos os fabricantes de PC incluíssem a chave do Fedora eb) seria injusto com outras distribuições do Linux, pois a chave não seria incluída. , e distribuições menores não têm tantas parcerias de OEM.

O que o Fedora escolheu fazer (e outras distros estão seguindo o exemplo) é usar os serviços de assinatura da Microsoft. Esse cenário exige o pagamento de US $ 99 à Verisign (a Autoridade de Certificação usada pela Microsoft) e concede aos desenvolvedores a capacidade de assinar seu gerenciador de inicialização usando o KEK da Microsoft. Como o KEK da Microsoft já estará na maioria dos computadores, isso permite que eles assinem o gerenciador de inicialização para usar o Secure Boot, sem exigir a própria KEK. Ele acaba sendo mais compatível com mais computadores e custa menos do que lidar com a configuração de seu próprio sistema de assinatura e distribuição de chaves. Há mais alguns detalhes sobre como isso funcionará (usando GRUB, módulos assinados do Kernel e outras informações técnicas) na postagem do blog acima mencionada, que eu recomendo a leitura se você estiver interessado nesse tipo de coisa.

Suponha que você não queira lidar com o incômodo de se inscrever no sistema da Microsoft, ou não queira pagar US $ 99 ou apenas ter ressentimento contra grandes empresas que começam com um M. Há outra opção para ainda usar o Secure Boot e execute um sistema operacional diferente do Windows. A certificação de hardware da Microsoft exige que os OEMs permitam que os usuários entrem no sistema no modo UEFI "personalizado", onde podem modificar manualmente os bancos de dados do Secure Boot e o PK. O sistema pode ser colocado no modo de configuração UEFI, onde o usuário pode até especificar seu próprio PK e assinar os próprios gerenciadores de inicialização.

Além disso, os próprios requisitos de certificação da Microsoft tornam obrigatório que os OEMs incluam um método para desativar a Inicialização Segura em sistemas não-ARM. Você pode desativar o Secure Boot! Os únicos sistemas em que você não pode desativar o Secure Boot são os sistemas ARM executando o Windows RT, que funcionam de forma mais semelhante ao iPad, onde você não pode carregar sistemas operacionais personalizados. Embora eu deseje que seja possível alterar o SO em dispositivos ARM, é justo dizer que a Microsoft está seguindo o padrão da indústria em relação aos tablets aqui.

 

Inicialização tão segura não é inerentemente má?

Portanto, como você pode ver, a Inicialização Segura não é ruim e não é restrita apenas ao uso com o Windows. A razão pela qual a FSF e outros estão tão chateados com isso é porque ela adiciona etapas extras ao uso de um sistema operacional de terceiros. As distros do Linux podem não gostar de pagar para usar a chave da Microsoft, mas é a maneira mais fácil e econômica de fazer o Secure Boot funcionar no Linux. Felizmente, é fácil desativar o Secure Boot e é possível adicionar chaves diferentes, evitando assim a necessidade de lidar com a Microsoft.

Dada a quantidade de malware cada vez mais avançado, o Secure Boot parece uma idéia razoável. Não é para ser um plano maligno para dominar o mundo e é muito menos assustador do que alguns especialistas em software livre acreditam.

logotipo UEFI mal

Leitura adicional:


TL; DR: A inicialização segura evita que malware infectem seu sistema em um nível baixo e indetectável durante a inicialização. Qualquer um pode criar as chaves necessárias para fazê-lo funcionar, mas é difícil convencer os fabricantes de computadores a distribuir sua chave para todos, para que você possa optar por pagar a Verisign para usar a chave da Microsoft para assinar seus gerenciadores de inicialização e fazê-los funcionar. Você também pode desativar a Inicialização segura em qualquer computador que não seja ARM.

Por último, com relação à campanha da FSF contra a inicialização segura: algumas de suas preocupações (isto é, dificulta a instalação de sistemas operacionais gratuitos) são válidas até certo ponto . Dizer que as restrições "impedirão que alguém inicialize qualquer coisa além do Windows" é comprovadamente falso, pelas razões ilustradas acima. A campanha contra a UEFI / Secure Boot como uma tecnologia é míope, desinformada e pouco provável que seja eficaz. É mais importante garantir que os fabricantes realmente sigam os requisitos da Microsoft para permitir que os usuários desabilitem a Inicialização Segura ou alterem as chaves, se assim o desejarem.

nhinkle
fonte
4
>> "Antes de tudo, a Inicialização Segura não é algo que a Microsoft criou. ... Faz parte da especificação UEFI, que é basicamente uma substituição mais recente do BIOS antigo com o qual você provavelmente está acostumado. ... UEFI padrões são criados por um grupo chamado "Fórum UEFI", que é composta de computação representantes da indústria, incluindo Microsoft, Apple ... "Então, o que você quer dizer é: Fixe Bota não é algo que a Microsoft veio com tudo por si
mcalex
@ mcalex Suponho que seja uma avaliação justa.
nhinkle
2
Esta é uma explicação maravilhosamente bem feita. Eu pensei que conhecia o Secure Boot, mas aprendi bastante com esta resposta. Tenho orgulho de votar.
Harsha K
4
+1 < Ivo Style > Talvez você devesse escrever um post sobre este @nhinkle; -) </ Ivo Style > #
Tamara Wijsman
2
Não é a Microsoft que me preocupa aqui, são os fabricantes. Claro, os dispositivos ARM ainda podem ser vistos como brinquedos agora , mas as várias plataformas ARM percorreram um longo caminho nos últimos anos, e posso facilmente imaginar um dia em que as pessoas os usarão mais do que apenas assistir vídeos do YouTube ... Desistir da capacidade de atualizar ou substituir o SO agora parece míope. Dito isto, obrigado por escrever isso - ele definitivamente ajuda a esclarecer o que é e o que não é problemático no Secure Boot.
Shog9