Come posso consentire i driver del kernel con segno incrociato in Windows 10 versione 1607 con avvio sicuro abilitato?


13

La versione 1607 di Windows 10 (nota anche come Anniversary Update) sta ora imponendo la certificazione rafforzata del driver del kernel, che era già stata annunciata nel 2015 come requisito per Windows 10. La nuova regola è che tutti i driver di Windows 10 devono essere firmati digitalmente da Microsoft, non più firme incrociate! Gli sviluppatori di driver del kernel devono ora utilizzare un certificato di firma del codice Extended Validation (EV) e inviare i loro driver al portale Dashboard del Centro per sviluppatori hardware Windows dove i driver verranno firmati da Microsoft dopo aver superato determinati test.

Tuttavia, ci sono eccezioni a tale regola. I driver del kernel con segno incrociato sono ancora accettati da Windows 10 versione 1607 se si verifica una delle seguenti condizioni :

  • L'autista è firmato con un certificato rilasciato prima del 29 luglio 2015
  • Il driver è un driver di avvio
  • L'avvio protetto è disattivato
  • Il sistema Windows 10 versione 1607 è stato aggiornato e non installato direttamente
  • Viene impostata una chiave di registro segreta che consente il caricamento di driver con segno incrociato anche su sistemi con Secure Boot abilitato

Nella mia azienda abbiamo il problema che diversi driver sono ora disabilitati su sistemi che hanno ricevuto un'installazione pulita di Windows 10 versione 1607 e anche alcuni driver Intel sono interessati. Inoltre, le macchine virtuali KVM altamente sicure che utilizzano il BIOS UEFI TianoCore con avvio sicuro abilitato non caricano la rete VirtIO e i driver balloon a causa di errori di firma digitale.

E posso confermare che i driver funzionano bene su sistemi con avvio sicuro disabilitato e su sistemi Windows 10 che sono stati aggiornati (sul posto) alla versione 1607, anche con l'avvio sicuro abilitato.

Ora mi chiedo quale sia il nome e il valore di quel registro segreto che è stato annunciato da Microsoft nel seguente video a 00 h 11 m 00 s :

Canale 9 - Plugfest28 - Driver-Certification-on-Windows-Client-and-Server

... e poi finalmente avremo effettivamente una chiave di registro ... e questa chiave di registro è ... sai ... destinata solo ai test, quindi sicuramente non vogliamo che tu ... impostando questo registro chiave durante l'installazione del driver e ... la chiave di registro imita essenzialmente lo stesso comportamento di se si dispone di un sistema aggiornato ...

Quella chiave non è mai stata annunciata da Microsoft e a causa del seguente messaggio nell'elenco ntdev di OSR credo che questo non accadrà mai:

Odio dirlo, ma dato che hai chiesto: le informazioni sulla chiave di registro sono disponibili solo sotto NDA . Il che significa che probabilmente verrà visualizzato in molti posti online alla fine, ma fino a quel momento NON ne discuteremo qui .

E questo mi lascia alla mia vera domanda da Super User:

Cos'è quella chiave di registro segreta che dice a Windows 10 versione 1607 che è stato aggiornato da una versione precedente?


Se dovessi rischiare di indovinare. La stessa chiave che è sempre stata utilizzata quando si aggiorna da una versione precedente di Windows a una versione più recente di Windows.
Ramhound,

1
@Ramhound ... quale sarebbe?
gollum,

Qualche indizio su chi sta usando quella chiave? La sua esistenza suggerisce che è dato a terzi per l'uso in determinate situazioni. Se questo è vero, non avrebbe senso rivolgersi a Microsoft per chiedere di essere inclusi tra loro?

@Will Microsoft sta usando quella chiave per non applicare il criterio di firma del driver più rigoroso sui sistemi Windows 10 che hanno eseguito l'aggiornamento dell'anniversario sul posto (non vogliono disabilitare i sistemi che hanno funzionato prima dell'aggiornamento). D'altra parte, l'esistenza di questa chiave potrebbe essere considerata un rischio per la sicurezza perché può danneggiare la politica più severa che le persone potrebbero voler mettere in atto alla fine.
gollum,

Hai provato questo? [HKEY_CURRENT_USER \ Software \ Policies \ Microsoft \ Windows NT \ Driver Signing] Cambia il BehaviorOnFailedVerifyvalore della chiave in " 0".
HackSlash,

Risposte:


0

puoi provare l'opzione di configurazione di avvio 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

L'opzione di configurazione di avvio TESTSIGNING determina se Windows Vista e le versioni successive di Windows caricheranno qualsiasi tipo di codice in modalità kernel con firma di prova. Questa opzione non è impostata per impostazione predefinita, il che significa che i driver in modalità kernel firmati da test non verranno caricati per impostazione predefinita sulle versioni a 64 bit di Windows Vista e versioni successive di Windows.

Nota Dopo aver modificato l'opzione di configurazione di avvio TESTSIGNING, riavviare il computer per rendere effettive le modifiche.


La modalità di prova non è un'opzione poiché il kernel carica i driver firmati da qualsiasi certificato e la convalida non è richiesta per essere concatenata a un'autorità di certificazione radice attendibile. Fondamentalmente la domanda è di fare in modo che un sistema appena installato si comporti come un sistema aggiornato per quanto riguarda la politica di convalida della firma del driver.
gollum,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.