Como funciona a inicialização segura no Windows 8 e 10 e o que isso significa para o Linux

Os PCs modernos vêm com um recurso chamado “Inicialização segura” habilitado. Este é um recurso da plataforma UEFI, que substitui o BIOS do PC tradicional. Se um fabricante de PC deseja colocar um adesivo com o logotipo “Windows 10” ou “Windows 8” em seu PC, a Microsoft exige que ele habilite a Inicialização segura e siga algumas diretrizes.

Infelizmente, ele também impede que você instale algumas distribuições Linux, o que pode ser um tanto quanto aborrecido.

Como a inicialização segura protege o processo de inicialização do seu PC

O Secure Boot não foi projetado apenas para dificultar a execução do Linux. Existem vantagens reais de segurança em ter a inicialização segura habilitada, e até mesmo os usuários do Linux podem se beneficiar delas.

Um BIOS tradicional inicializa qualquer software. Quando você inicializa seu PC, ele verifica os dispositivos de hardware de acordo com a ordem de inicialização que você configurou e tenta inicializar a partir deles. PCs típicos normalmente encontrarão e inicializarão o carregador de inicialização do Windows, que continua para inicializar o sistema operacional Windows completo. Se você usa Linux, o BIOS encontrará e inicializará o carregador de inicialização GRUB, que a maioria das distribuições Linux usa.

No entanto, é possível que malware, como um rootkit, substitua seu carregador de boot. O rootkit pode carregar seu sistema operacional normal sem nenhuma indicação de que algo está errado, permanecendo completamente invisível e indetectável em seu sistema. O BIOS não sabe a diferença entre malware e um gerenciador de inicialização confiável - ele apenas inicializa tudo o que encontra.

A inicialização segura foi projetada para impedir isso. Os PCs com Windows 8 e 10 são fornecidos com o certificado da Microsoft armazenado na UEFI. A UEFI irá verificar o carregador de boot antes de iniciá-lo e garantir que ele seja assinado pela Microsoft. Se um rootkit ou outro tipo de malware substituir seu carregador de boot ou adulterá-lo, a UEFI não permitirá que ele inicialize. Isso evita que o malware sequestre seu processo de inicialização e se esconda do sistema operacional.

Como a Microsoft permite que distribuições Linux inicializem com inicialização segura

Este recurso é, em teoria, projetado apenas para proteger contra malware. Portanto, a Microsoft oferece uma maneira de ajudar a inicializar as distribuições do Linux de qualquer maneira. É por isso que algumas distribuições Linux modernas - como Ubuntu e Fedora - “simplesmente funcionarão” em PCs modernos, mesmo com a inicialização segura ativada. As distribuições Linux podem pagar uma taxa única de $ 99 para acessar o portal Microsoft Sysdev, onde podem se inscrever para ter seus carregadores de boot assinados.

As distribuições Linux geralmente têm um “shim” assinado. O shim é um pequeno carregador de boot que simplesmente inicializa o carregador de boot GRUB principal da distribuição Linux. O shim assinado pela Microsoft verifica se está inicializando um carregador de boot assinado pela distribuição Linux e, em seguida, a distribuição Linux inicializa normalmente.

Ubuntu, Fedora, Red Hat Enterprise Linux e openSUSE atualmente oferecem suporte a inicialização segura e funcionarão sem quaisquer ajustes no hardware moderno. Pode haver outros, mas esses são os que conhecemos. Algumas distribuições Linux são filosoficamente contrárias a solicitar a assinatura da Microsoft.

Como você pode desativar ou controlar a inicialização segura

Se isso fosse tudo que a inicialização segura fizesse, você não seria capaz de executar nenhum sistema operacional não aprovado pela Microsoft em seu PC. Mas você provavelmente pode controlar a inicialização segura do firmware UEFI do seu PC, que é como o BIOS em PCs mais antigos.

Existem duas maneiras de controlar a inicialização segura. O método mais fácil é acessar o firmware UEFI e desativá-lo totalmente. O firmware UEFI não verifica se você está executando um carregador de boot assinado e qualquer coisa será inicializada. Você pode inicializar qualquer distribuição do Linux ou até mesmo instalar o Windows 7, que não oferece suporte para inicialização segura. O Windows 8 e 10 funcionarão bem, você apenas perderá as vantagens de segurança de ter a inicialização segura protegendo seu processo de inicialização.

Você também pode personalizar ainda mais a inicialização segura. Você pode controlar quais certificados de assinatura a Inicialização segura oferece. Você está livre para instalar novos certificados e remover os existentes. Uma organização que executou Linux em seus PCs, por exemplo, pode escolher remover os certificados da Microsoft e instalar o próprio certificado da organização em seu lugar. Esses PCs então só inicializariam os carregadores de boot aprovados e assinados por aquela organização específica.

Um indivíduo também pode fazer isso - você pode assinar seu próprio gerenciador de inicialização do Linux e garantir que seu PC só possa inicializar os gerenciadores de inicialização que você compilou e assinou pessoalmente. Esse é o tipo de controle e poder que o Secure Boot oferece.

O que a Microsoft exige dos fabricantes de PC

A Microsoft não exige apenas que os fornecedores de PC habilitem a inicialização segura se quiserem aquele adesivo de certificação “Windows 10” ou “Windows 8” em seus PCs. A Microsoft exige que os fabricantes de PC o implementem de uma maneira específica.

Para PCs com Windows 8, os fabricantes tiveram que fornecer uma maneira de desligar a Inicialização segura. A Microsoft exigiu que os fabricantes de PC colocassem um switch de eliminação de inicialização segura nas mãos dos usuários.

Para PCs com Windows 10, isso não é mais obrigatório. Os fabricantes de PC podem optar por ativar a inicialização segura e não fornecer aos usuários uma maneira de desativá-la. No entanto, não temos conhecimento de nenhum fabricante de PC que faça isso.

Da mesma forma, embora os fabricantes de PC tenham que incluir a chave principal "Microsoft Windows Production PCA" da Microsoft para que o Windows possa inicializar, eles não precisam incluir a chave "Microsoft Corporation UEFI CA". Esta segunda chave é apenas recomendada. É a segunda chave opcional que a Microsoft usa para assinar os carregadores de inicialização do Linux. A documentação do Ubuntu explica isso.

Em outras palavras, nem todos os PCs necessariamente inicializarão distribuições Linux assinadas com a inicialização segura ativada. Novamente, na prática, não vimos nenhum PC que fizesse isso. Talvez nenhum fabricante de PC queira fazer a única linha de laptops nos quais você não pode instalar o Linux.

Por enquanto, pelo menos, os PCs Windows convencionais devem permitir que você desative a Inicialização segura, se desejar, e devem inicializar as distribuições do Linux que foram assinadas pela Microsoft, mesmo que você não desative a Inicialização segura.

A inicialização segura não pôde ser desativada no Windows RT, mas o Windows RT está morto

RELACIONADO:O que é o Windows RT e como ele difere do Windows 8?

Todas as alternativas acima são verdadeiras para os sistemas operacionais Windows 8 e 10 padrão no hardware Intel x86 padrão. É diferente para ARM.

No Windows RT - a versão do Windows 8 para hardware ARM, que acompanha o Surface RT e Surface 2 da Microsoft, entre outros dispositivos - a inicialização segura não podia ser desativada. Hoje, a inicialização segura ainda não pode ser desabilitada no hardware do Windows 10 Mobile - em outras palavras, telefones que executam o Windows 10.

Isso porque a Microsoft queria que você pensasse nos sistemas Windows RT baseados em ARM como “dispositivos”, não PCs. Como a Microsoft disse à Mozilla, o Windows RT “não é mais o Windows”.

No entanto, o Windows RT agora está morto. Não há versão do sistema operacional Windows 10 para desktop para hardware ARM, então você não precisa mais se preocupar com isso. Mas, se a Microsoft trouxer de volta o hardware do Windows RT 10, você provavelmente não conseguirá desativar a inicialização segura nele.

Crédito da imagem: Embaixador Base, John Bristowe


$config[zx-auto] not found$config[zx-overlay] not found