Jak zezwolić na podpisane krzyżowo sterowniki jądra w systemie Windows 10 w wersji 1607 z włączonym bezpiecznym uruchomieniem?

13

Wersja 1607 systemu Windows 10 (znana również jako Anniversary Update) wymusza teraz zaostrzony certyfikat sterownika jądra, który został już ogłoszony w 2015 r. Jako wymóg dla systemu Windows 10. Nowa zasada mówi, że wszystkie sterowniki systemu Windows 10 muszą być podpisane cyfrowo przez firmę Microsoft, bez podpisywania krzyżowego! Programiści sterowników jądra muszą teraz korzystać z certyfikatu podpisywania kodu Extended Validation (EV) i przesyłać sterowniki do portalu pulpitu nawigacyjnego Centrum deweloperów sprzętu Windows, w którym sterowniki zostaną podpisane przez Microsoft po przejściu określonych testów.

Istnieją jednak wyjątki od tej zasady. Sterowniki jądra z podpisami krzyżowymi są nadal akceptowane przez system Windows 10 w wersji 1607, jeśli spełniony jest jeden z poniższych warunków :

  • Kierowca jest podpisany certyfikatem wydanym przed 29 lipca 2015 r
  • Sterownik jest sterownikiem rozruchowym
  • Bezpieczny rozruch jest wyłączony
  • System Windows 10 w wersji 1607 został zaktualizowany i nie został bezpośrednio zainstalowany
  • Ustawiony jest tajny klucz rejestru, który umożliwia ładowanie sterowników ze znakiem krzyżowym nawet w systemach z włączonym Bezpiecznym uruchomieniem

W mojej firmie mamy problem polegający na tym, że kilka sterowników jest teraz wyłączonych w systemach, które otrzymały czystą instalację systemu Windows 10 w wersji 1607, a nawet niektóre sterowniki Intel są zagrożone. Ponadto wysoce zabezpieczone maszyny wirtualne KVM korzystające z TianoCore UEFI BIOS z włączonym bezpiecznym uruchomieniem nie ładują teraz sterowników sieci i balonu VirtIO z powodu błędów podpisu cyfrowego.

Mogę potwierdzić, że sterowniki działają dobrze w systemach z wyłączonym bezpiecznym uruchomieniem oraz w systemach Windows 10, które zostały uaktualnione (w miejscu) do wersji 1607, nawet z włączonym bezpiecznym uruchomieniem.

Teraz zastanawiam się, jak nazwa i wartość tego tajnego rejestru została ogłoszona przez Microsoft w następującym filmie o godzinie 00 h 11 m 00 s :

Kanał 9 - Plugfest28 - Certyfikacja sterowników na Windows-Client-and-Server

... a potem w końcu będziemy mieli klucz rejestru ... a ten klucz rejestru jest ... wiesz ... przeznaczony tylko do testowania, więc zdecydowanie nie chcemy, żebyś ... ustawiał ten rejestr klucz podczas instalacji sterownika i ... klucz rejestru zasadniczo naśladuje to samo zachowanie, jak w przypadku uaktualnionego systemu ...

Ten klucz nigdy nie został ogłoszony przez Microsoft iz powodu następującego komunikatu na liście ntdev OSR uważam, że tak się nigdy nie stanie:

Nienawidzę tego mówić, ale skoro zapytałeś: Informacje o kluczu rejestru są dostępne tylko w ramach NDA . Co oznacza, że ​​prawdopodobnie pojawi się ostatecznie w wielu miejscach online, ale do tego czasu NIE będziemy tutaj o tym dyskutować .

I to pozostawia mi moje pytanie dotyczące superużytkownika:

Czym jest ten tajny klucz rejestru, który informuje system Windows 10 w wersji 1607, że został uaktualniony z poprzedniej wersji?

gollum
źródło
Gdybym miał zaryzykować, zgadnąć. Ten sam klucz, który zawsze był używany podczas aktualizacji z poprzedniej wersji systemu Windows do nowszej wersji systemu Windows.
Ramhound
1
@Ramhound ... który byłby?
gollum
Jakaś wskazówka, kto używa tego klucza? Jego istnienie sugeruje, że jest on przekazywany podmiotom zewnętrznym do użytku w określonych sytuacjach. Jeśli to prawda, czy nie ma sensu zwracać się do Microsoft z prośbą o dołączenie do grona tych osób?
@Will Microsoft używa tego klucza, aby nie stosować bardziej rygorystycznych zasad podpisywania sterowników w systemach Windows 10, które wykonały roczną aktualizację w miejscu (nie chcą wyłączać systemów, które działały przed aktualizacją). Z drugiej strony istnienie tego klucza można uznać za zagrożenie dla bezpieczeństwa, ponieważ może ono zagrozić bardziej rygorystycznej polityce, którą ludzie chcieliby ostatecznie wprowadzić.
gollum
Próbowałeś już tego? [HKEY_CURRENT_USER \ Software \ Policies \ Microsoft \ Windows NT \ Signing] Zmień BehaviorOnFailedVerifywartość klucza na „ 0”.
HackSlash,

Odpowiedzi:

0

możesz wypróbować opcję konfiguracji rozruchu 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

Opcja konfiguracji rozruchu TESTSIGNING określa, czy system Windows Vista i nowsze wersje systemu Windows będą ładowały dowolny typ podpisanego testowo kodu trybu jądra. Ta opcja nie jest domyślnie ustawiona, co oznacza, że ​​sterowniki trybu jądra podpisane testowo nie będą ładowane domyślnie w 64-bitowych wersjach systemu Windows Vista i nowszych wersjach systemu Windows.

Uwaga Po zmianie opcji konfiguracji rozruchu TESTSIGNING uruchom ponownie komputer, aby zmiana zaczęła obowiązywać.

Ashish Namdev
źródło
Tryb testowania nie jest opcją, ponieważ jądro ładuje sterowniki podpisane przez dowolny certyfikat, a weryfikacja nie jest wymagana do połączenia z zaufanym głównym urząd certyfikacji. Zasadniczo pytanie dotyczy tego, aby świeżo zainstalowany system zachowywał się jak system uaktualniony w odniesieniu do zasad sprawdzania poprawności podpisów sterowników.
gollum,