Como permito drivers de kernel com assinatura cruzada no Windows 10 versão 1607 com a inicialização segura ativada?


13

O Windows 10 versão 1607 (também conhecido como Atualização de Aniversário) agora está impondo a certificação de driver do kernel, que já foi anunciada em 2015 como requisito para o Windows 10. A nova regra é que todos os drivers do Windows 10 devem ser assinados digitalmente pela Microsoft, sem mais assinaturas cruzadas! Agora, os desenvolvedores de drivers de kernel devem usar um certificado de assinatura de código de Validação Estendida (EV) e enviar seus drivers para o Portal de Painel do Windows Hardware Developer Center, onde os drivers serão assinados pela Microsoft depois de passarem em determinados testes.

No entanto, existem exceções a essa regra. Os drivers de kernel com assinatura cruzada ainda são aceitos pelo Windows 10 versão 1607 se alguma das seguintes situações for verdadeira:

  • O motorista é assinado com um certificado emitido antes de 29 de julho de 2015
  • O driver é um driver de inicialização
  • A inicialização segura está desativada
  • O sistema Windows 10 versão 1607 foi atualizado e não foi instalado diretamente
  • É definida uma chave de registro secreta que permite que drivers com assinatura cruzada sejam carregados, mesmo em sistemas com a Inicialização Segura ativada

Na minha empresa, temos o problema de que vários drivers agora estão desativados em sistemas que receberam uma instalação limpa do Windows 10 versão 1607 e até mesmo alguns drivers Intel são afetados. Além disso, as máquinas virtuais KVM altamente seguras que usam o BIOS UEFI TianoCore com a inicialização segura ativada agora não carregam a rede VirtIO e os drivers de balão devido a erros de assinatura digital.

E posso confirmar que os drivers funcionam bem em sistemas com a inicialização segura desativada e nos sistemas Windows 10 que foram atualizados (no local) para a versão 1607, mesmo com a inicialização segura ativada.

Agora, estou pensando qual é o nome e o valor desse registro secreto anunciado pela Microsoft no vídeo a seguir às 00 h 11 m 00 s :

Canal 9 - Plugfest28 - Certificação de Driver no Windows-Cliente e Servidor

... e finalmente finalmente teremos uma chave de registro ... e essa chave de registro é ... você sabe ... destinada apenas a testes, então definitivamente não queremos que você ... configure esse registro chave ao instalar o driver e ... a chave do registro imita essencialmente o mesmo comportamento como se você tivesse um sistema atualizado ...

Essa chave nunca foi anunciada pela Microsoft e, devido à seguinte mensagem na lista ntdev da OSR, acredito que isso nunca acontecerá:

Detesto dizer isso, mas desde que você perguntou: As informações da chave do registro estão disponíveis apenas no NDA . O que significa que provavelmente aparecerá em muitos lugares on-line eventualmente, mas até esse momento NÃO discutiremos aqui .

E isso me deixa na minha pergunta real de superusuário:

O que é essa chave de registro secreta que informa ao Windows 10 versão 1607 que foi atualizada a partir de uma versão anterior?


Se eu corresse o risco de adivinhar. A mesma chave que sempre foi usada quando você atualiza de uma versão anterior do Windows para uma versão mais recente do Windows.
Ramhound

1
@ Ramhound ... qual seria?
precisa saber é

Alguma dica de quem está usando essa chave? Sua existência sugere que seja entregue a terceiros para uso em determinadas situações. Se isso for verdade, não faria sentido abordar a Microsoft para pedir para ser incluído entre eles?

A @Will Microsoft está usando essa chave para não aplicar a política mais rígida de assinatura de driver nos sistemas Windows 10 que executaram a atualização de aniversário no local (eles não desejam desativar os sistemas que estavam funcionando antes da atualização). Por outro lado, a existência dessa chave pode ser considerada um risco à segurança, pois pode prejudicar a política mais rígida que as pessoas podem querer adotar eventualmente.
precisa saber é

Você já tentou este? [HKEY_CURRENT_USER \ Software \ Policies \ Microsoft \ Windows NT \ Driver Assinatura] Altere o BehaviorOnFailedVerifyvalor da chave para " 0".
HackSlash

Respostas:


0

você pode tentar a opção de configuração de inicialização TESTSIGNING

Bcdedit.exe -set TESTSIGNING ON

Make sure to disable the Secure Boot and boot to OS to execute bcedit commands, once done you can reboot to OS with secure boot enabled

A opção de configuração de inicialização TESTSIGNING determina se o Windows Vista e versões posteriores do Windows carregarão qualquer tipo de código no modo de kernel assinado por teste. Esta opção não está definida por padrão, o que significa que os drivers no modo kernel assinados por teste não serão carregados por padrão nas versões de 64 bits do Windows Vista e versões posteriores do Windows.

Nota Depois de alterar a opção de configuração de inicialização TESTSIGNING, reinicie o computador para que a alteração entre em vigor.


O modo de assinatura de teste não é uma opção, pois o kernel carrega drivers que são assinados por qualquer certificado e a validação não é necessária para encadear uma autoridade de certificação raiz confiável. Basicamente, a questão é fazer com que um sistema recém-instalado se comporte como um sistema atualizado em relação à política de validação de assinatura de driver.
Gollum #
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.