As Aventuras na Assinatura UEFI da Microsoft

Acontece que traduzo este artigo que ele escreveu James Bottomley, consultor técnico do Fundação Linux, que começou a montar um pré-bootloader para que você possa inicializar o Linux.

Como expliquei em meu post anterior, temos o código para o pré-bootloader Linux Foundation no lugar. No entanto, houve um atraso enquanto tínhamos acesso ao sistema de assinatura da Microsoft.

A primeira coisa a fazer é pague $ 99 para a Verisign (agora Symantec) e ter uma chave verificada pela Verisign. Fizemos isso para a Linux Foundation, e tudo o que eles querem fazer é ligar para a sede para verificar. A chave retorna em um URL instalado em seu navegador, mas as ferramentas SSL SSL padrão podem ser usadas para extraí-la e criar um certificado e uma chave PEM usuais. Não tem nada a ver com a assinatura UEFI, mas é usado para validar o sistema desenvolvedor de sistema Microsoft que você é quem diz ser. Antes de criar uma conta sysdev, você deve testá-la assinar um executável que eles fornecem a você e carregá-lo. Eles fazem requisitos estritos para que você assine em uma plataforma Windows específica, mas pelo menos funcionou e bingo nossa conta foi criada.

Uma vez que a conta é criada, você ainda não pode carregar binários UEFI para assinar sem primeiro assinar um contrato de papel. Os negócios são muito onerosos, incluindo muitas licenças excluídas (incluindo todos os GPLs para drivers, mas não para bootloaders). O mais oneroso é que os acordos parecem chegar além dos objetos UEFI que você assina. Os advogados da Linux Foundation concluíram que é basicamente inofensivo para a LF porque não vendemos produtos, mas pode ser nojento para outras empresas. De acordo com Matthew Garrett, a Microsoft está disposta a negociar acordos especiais com distribuições para mitigar alguns desses problemas.

Assim que os acordos forem assinados, o real diversão técnica. Você não pode simplesmente carregar um binário UEFI e assiná-lo. Primeiro você tem que envolva-o em um arquivo .cab. Felizmente, existe um projeto de código aberto que pode criar arquivos de gabinete chamados lcab. Então você tem que assine o arquivo .cab com a chave Verisign. Novamente, há outro projeto de código aberto que pode fazer isso: osslsigncode. Para qualquer pessoa que precise dessas ferramentas, elas estão disponíveis em meu repositório openSuse Build Service UEFI. O problema final é que fazer o upload do arquivo requer silverlight. Infelizmente, o moonlight não parece funcionar e mesmo com a visualização da versão 4, a caixa de upload fica em branco, então é hora de usar o Windows 7 sob um kvm (máquina virtual baseada em kernel). Quando você chegar nessa parte, também terá que certificar que o binário “para ser assinado, não deve ser licenciado sob GPLv3 ou licenças de código aberto semelhantes”. Presumo que seja por medo da divulgação da chave, mas não é nada claro (o mesmo com "licenças de código aberto semelhantes").

Assim que o upload for concluído, o arquivo de gabinete será interrompido por sete estágios. Infelizmente, a primeira escalada de teste permaneceu bloqueado no estágio 6 (a assinatura dos arquivos). Após 6 dias, enviei um email de suporte para a Microsoft perguntando o que estava acontecendo. A resposta: “O código de erro lançado pelo processo de assinatura é que seu arquivo não é um aplicativo Win32 válido. É um aplicativo Win32 válido? ”. Resposta: obviamente não, é um binário UEFI válido de 64 bits. Não houve mais respostas...

Eu tentei novamente. Desta vez, recebi um e-mail de download do arquivo assinado e o quadro diz que o assinado falhou. Eu baixei e verifiquei. O binário funciona na plataforma secureboot e é assinado com a chave

assunto = / C = US / ST = Washington / L = Redmond / O = Microsoft Corporation / OU = MOPR / CN = Microsoft Windows UEFI Driver Publisher
emissor = / C = US / ST = Washington / L = Redmond / O = Microsoft Corporation / CN = Microsoft Corporation UEFI CA 2011

Eu perguntei ao suporte porque o processo indicava uma falha, mas eu tinha um download válido e, após uma enxurrada de e-mails, eles responderam “não use aquele arquivo que foi assinado erroneamente. Eu vou voltar para você. " Ainda não tenho certeza de qual é o problema, mas se você olhar para o assunto da chave de assinatura, não há nada na chave para indicar à Linux Foundation, portanto, suspeito que o problema é que o binário é assinado com uma chave genérica da Microsoft em vez de uma chave específica (e revogável) vinculada à Linux Foundation.

No entanto, este é o status: Continuaremos esperando a Microsoft fornecer à Linux Foundation um pré-bootloader assinado e validado. Quando isso acontecer, ele será carregado no site da Linux Foundation para que todos possam usar.

fonte: http://blog.hansenpartnership.com/adventures-in-microsoft-uefi-signing/

Tire suas conclusões, mas isso vai levar tempo.


Deixe um comentário

Seu endereço de email não será publicado. Campos obrigatórios são marcados com *

*

*

  1. Responsável pelos dados: Miguel Ángel Gatón
  2. Finalidade dos dados: Controle de SPAM, gerenciamento de comentários.
  3. Legitimação: Seu consentimento
  4. Comunicação de dados: Os dados não serão comunicados a terceiros, exceto por obrigação legal.
  5. Armazenamento de dados: banco de dados hospedado pela Occentus Networks (UE)
  6. Direitos: A qualquer momento você pode limitar, recuperar e excluir suas informações.

  1.   Rolo dito

    Se realmente o problema de PCs com win8 OEM que vêm com o sistema UEFI for resolvido desabilitando UEFI da BIOS, parece-me um erro que tanto a Linux Foundation quanto o Fedora, Ubuntu e eu não sabemos qual outra distro, pague para o certificado e aceite as limitações impostas pela Microsoft.

    DEVEMOS PARAR DE SER CORDEIROS !!!!!

    1.    sieg84 dito

      mas eu sei que o Windows 8 permanece não inicializado

      1.    Blaire pascal dito

        Hehehe, nem mesmo grande coisa. Bem, pelo menos para mim. É uma opinião pessoal, não quero ofender ninguém.

    2.    Shiba87 dito

      UEFI não pode ser desabilitado no BIOS, já que UEFI é o Firmware que vem para substituir o BIOS de longa duração.

      Estamos falando de Secure Boot, um recurso UEFI que verifica a autenticidade do software com o qual iniciamos o computador por meio de assinaturas digitais, é Secure Boot que deve ser desabilitado.

      Não é tão simples como desabilitar o Boot Seguro e pronto, é necessário que o fabricante tenha considerado incluir um menu que permite ao usuário desabilitar o Boot Seguro, se o fabricante não quiser que seja desabilitado será muito complicado para que o usuário possa fazer isso, possivelmente indo ao extremo de ter que substituir o firmware da placa-mãe por um não oficial.

      A solução da Linux Foundation seria uma solução "universal" para qualquer hardware afetado por esta doença e permitiria que qualquer sistema fosse instalado pagando uma única assinatura digital apenas uma vez, o que certamente é o que os assusta e porque estão fazendo tanto de rezar

      1.    msx dito

        «Não é tão simples como desabilitar o Secure Boot e pronto, é necessário que o fabricante tenha considerado incluir um menu que permite aos usuários desabilitar o Secure Boot, se o fabricante não quiser que seja desabilitado será muito complicado para o usuário fazer isso, »

        Portanto, o que precisa ser feito é uma campanha de alfabetização digital onde é explicado aos usuários que eles exigem computadores com esse recurso e, em vez disso, compram outros.

      2.    Taregon dito

        Tudo isso para ganhar dinheiro validando o que pode e o que não pode ser inicializado com inicialização segura.

  2.   anti dito

    Incompetência total é indistinguível de más intenções.

  3.   Hugo dito

    Embora haja uma frase famosa de Robert J. Hanlon que diz: “Nunca atribua à malícia aquilo que se explica adequadamente pela estupidez”, no caso particular da Microsoft, tantas dificuldades bobas a um processo supostamente bem concebido e pensado para um melhor segurança, continua dando a impressão de que eles estão atrapalhando a Linux Foundation para que o Linux não possa ser instalado em novos PCs com UEFI, para que a Microsoft não tenha concorrência.

    1.    Blaire pascal dito

      Exato. Não gosto da ideia, um suposto começo seguro ... Isso me assusta. Parece-me que a Microsoft tem muito ... propósitos mafiosos.

      1.    bamler dito

        Estou mais do que cansado da Microsoft e de suas manipulações, estou até com medo de suas intenções, e cansado de fingir que domina cada um dos PCs ou dispositivos que existem no mercado.

        Espero que o Linux acabe decolando em massa e prevaleça entre os usuários finais e o Windows seja finalmente marginalizado, totalmente, pela porcaria do sistema operacional que é.

        1.    Hugo dito

          Isso me lembra da patente concedida à Microsoft, pela qual o sistema padrão é limitado, e para desbloquear todo o seu potencial ou instalar qualquer programa de terceiros, são necessárias licenças pelas quais, é claro, o usuário ou os usuários devem pagar. Terceiros que desejam que seus aplicativos sejam instalados no sistema operacional. O fato de eles não terem implementado ainda não significa que não pretendam, e tenho a impressão de que a UEFI está preparando o terreno para isso.

  4.   Erunamo JAZZ dito

    O que me surpreende é que os binários de 64bist falham e forçam os binários de 32 bits…. Eles são retrógrados, quase não existem novos processadores de arquitetura x86 de 32 bits no mercado. Ele deve funcionar em 64 bits.

    uu

  5.   jorgemanjarrezlerma dito

    A assinatura digital ou inicialização segura está tentando impedir "algo" que não seja a inicialização do sistema. É também para evitar a chamada pirataria ou cópia ilegal de software proprietário.

    Fazer uma análise e investigar o chamado Win8 safe com sua tão alardeada inicialização segura mostrou sua incompetência, pois eles descobriram recentemente uma falha de segurança.

    Pelo exposto e sem ter que ser um gênio da indústria, com PhDs e outros, pode-se deduzir que é apenas um conceito de marketing acompanhado pela premissa da Microsoft de se tornar um sistema fechado no estilo maçã.

    Revendo, consultando e estudando pessoalmente, posso dizer da minha perspectiva pessoal que UEFI / Secure Boot é uma fraude e um embuste que visa apenas forçar e apoiar o projeto da Microsoft de fechar seu ecossistema completamente, aproveitando o fato de que ainda pode exercer certo pressão no segmento de computação pessoal.

  6.   pavloco dito

    Nas férias, vou encontrar uma maneira de processar a Microsoft. Os odeio.

    1.    Blaire pascal dito

      Hehehe, se eu tivesse vontade e tempo, eu exigiria também. É uma violação da liberdade. A menos que eles façam outra versão do infame EULA onde especificam que, ao aceitar o contrato, você concorda em não instalar nenhum outro software lol, o que não me surpreenderia.

    2.    bamler dito

      +1

  7.   Nosferatux dito

    Veremos como a microsoft se sairá com seu win8 e UEFI / secureboot, talvez ela perca algum mercado em favor do macbook ou do chromebook.

    E quem sabe, talvez um dia algum fabricante de PCs apareça por aí a favor do Linux e de outros sistemas gratuitos.

  8.   Nosferatux dito

    mmm e se as comunidades linux "se manifestassem" no dia da internet e no dia do programador por exemplo, em frente a alguma loja hp (para dizer o mínimo) mostrando seu apreço pela marca, mas seu desacordo com o uso do windows?

    E se naquela época o "festival das instalações" saísse para as ruas ou praças?

    1.    Hugo dito

      A triste realidade é que todos os usuários Linux combinados constituem uma fração dos usuários do Windows, então os fabricantes de hardware naturalmente priorizam o sistema operacional com a maior participação de mercado. portanto, acho improvável que uma demonstração mude as coisas.

      Na minha opinião, por exemplo, tornar o Linux uma plataforma mais atraente para aplicativos e jogos poderia ter mais influência do que muitas demonstrações contra o MS. Mas isso leva tempo (e recursos).

  9.   Charlie Brown dito

    Não há problema em atacar o Micro $ oft e seu Secure Boot, mas lembre-se que são os fabricantes da placa-mãe que o incluíram por padrão no UEFI, como se houvesse apenas um SO; Microsoft ... eles tomaram um caminho errado. Considerando o caso, parece-me que no futuro seremos forçados a flashear a UEFI das placas com versões "lançadas" como fazemos hoje com a ROM de alguns produtos. Felizmente, a engenhosidade daqueles que aspiram à liberdade tem se mostrado mais forte do que aqueles que procuram erradicá-la.

    1.    Shiba87 dito

      Cara .... Não é tão simples quanto o fabricante optar por incluir ou não boot seguro em seu hardware, não podemos esquecer que a Microsoft é um Monopólio, na verdade é O Monopólio e como fabricante, dizendo não à Microsoft pode significar ter que enfrentar seus advogados, aumentar o custo das licenças que encarecem muito o seu equipamento, ou até perder 80% do mercado nacional.

      Não é que os defenda, mas se algo que a Microsoft sabe fazer é precisamente impor com base na extorsão e no monopólio, a única opção seria que todos os fabricantes ou pelo menos a maioria concordassem e parassem de uma vez , mas isso é tremendamente difícil de acontecer e uma única empresa, não importa o quão grande seja, pensará duas vezes antes de arriscar seu negócio, não importa quão injusto / rastejante / absurdo o que a Microsoft peça.

  10.   Alf dito

    Tem se falado muito sobre esse assunto em vários blogs e fóruns, mas tenho dias pensando em algo, talvez seja minha tolice mas, no caso da DELL e da HP (não conheço outras empresas) que vendem máquinas Linux , a inicialização segura sairá?

    1.    Hugo dito

      Acho que li que, nesses casos, os fabricantes colocam um sistema UEFI / BIOS duplo para que, se você desabilitar o UEFI, você retorne ao BIOS. Isso deve naturalmente aumentar os custos.

      Eventualmente, a BIOS deve desaparecer como a conhecemos em favor da UEFI ou outros padrões melhores em que acreditamos, porque a tecnologia BIOS é antiga e, portanto, impõe limitações.

  11.   Shiba87 dito

    Senhores, uma assinatura para a petição da FSF sobre este assunto:

    Nós, os signatários, exortamos todos os fabricantes de computador que implementam o chamado "Boot Seguro" da UEFI a fazê-lo de uma forma que permita a instalação de sistemas operacionais gratuitos. Para respeitar a liberdade do usuário e realmente proteger sua segurança, os fabricantes devem permitir que os proprietários de computador desabilitem as restrições de inicialização ou fornecer um sistema confiável para instalar e executar um sistema operacional gratuito de sua escolha. Prometemos não comprar ou recomendar computadores que tirem essa liberdade crítica do usuário e que vamos incentivar ativamente as pessoas em nossas comunidades a evitar esses sistemas enjaulados.

    http://www.fsf.org/campaigns/secure-boot-vs-restricted-boot/statement

    1.    msx dito

      Perfeito, pedido assinado e compartilhado com o LUG e o resto da web, obrigado pelo comentário.