Установка драйвера без знака во время разработки и тестирования
По умолчанию 64-разрядные версии Windows Vista и более поздние версии Windows загружают драйвер в режиме ядра только в том случае, если ядро может проверить подпись драйвера. Однако это поведение по умолчанию может быть отключено во время ранней разработки драйвера и для неавтоматного тестирования. Разработчики могут использовать один из следующих механизмов, чтобы временно отключить принудительное применение допустимой сигнатуры драйвера во время загрузки. Однако для полной автоматизации тестирования драйвера, установленного Plug and Play (PnP), необходимо подписать файл каталога драйвера. Подписывание драйвера требуется, так как в Windows Vista и более поздних версиях Windows отображается диалоговое окно подписывания драйвера для неподписанных драйверов, которые требуют от системного администратора авторизации установки драйвера, что может помешать любому пользователю без необходимых привилегий установить драйвер и использовать устройство. Это поведение установки драйвера PnP нельзя отключить в Windows Vista и более поздних версиях Windows.
Использование параметра расширенной загрузки F8
Windows Vista и более поздние версии Windows поддерживают функцию F8 Advanced Boot Option ( Отключить принудительное применение подписи драйвера), которая отключает принудительное применение подписи во время загрузки для драйвера режима ядра только для текущего системного сеанса. Этот параметр не сохраняется при перезапуске системы.
Присоединение отладчика ядра для отключения проверки подписи
Подключение активного отладчика ядра к компьютеру разработки или тестирования отключает принудительное применение подписи во время загрузки для драйверов режима ядра. Чтобы использовать эту конфигурацию отладки, подключите компьютер отладки к компьютеру разработки или тестирования и включите отладку ядра на компьютере разработки или тестирования, выполнив следующую команду:
bcdedit -debug on
Чтобы использовать BCDEdit, пользователь должен быть членом группы администраторов в системе и выполнить команду из командной строки с повышенными привилегиями. Чтобы открыть окно командной строки с повышенными привилегиями, создайте ярлык на рабочем столе, чтобы Cmd.exe, выберите и удерживайте (или щелкните правой кнопкой мыши) ярлык, а затем выберите Запуск от имени администратора.
Применение проверки подписи Kernel-Mode в режиме отладки ядра
Однако бывают ситуации, когда разработчику может потребоваться присоединенный отладчик ядра, но также необходимо поддерживать принудительное применение подписи во время загрузки. Например, если стек драйверов содержит неподписанный драйвер (например, драйвер фильтра), который не загружается, это может сделать весь стек недействительным. Так как присоединение отладчика позволяет загружать неподписанный драйвер, проблема исчезает сразу после присоединения отладчика. Отладка такого типа проблемы может оказаться сложной задачей.
Чтобы упростить отладку таких проблем, политика подписывания кода в режиме ядра поддерживает следующее значение реестра:
HKLM\SYSTEM\CurrentControlSet\Control\CI\DebugFlags
Это значение реестра относится к типу REG_DWORD и может быть присвоено значение на основе побитового или одного или нескольких следующих флагов:
0x00000001
Это значение флага настраивает ядро для включения в отладчик, если драйвер не подписан. Затем разработчик или тестировщик может загрузить неподписанный драйвер, введя g в запросе отладчика.
0x00000010
Это значение флага настраивает ядро таким образом, чтобы игнорировать наличие отладчика и всегда блокировать загрузку неподписаемого драйвера.
Если это значение реестра не существует в реестре или имеет значение, не основанное на флагах, описанных выше, ядро всегда загружает драйвер в режиме отладки ядра независимо от того, подписан ли драйвер.
Примечание Это значение реестра не существует в реестре по умолчанию. Для отладки проверки подписи в режиме ядра необходимо создать значение .
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Windows driver documentation
Устранение неполадок при установке подписывания драйверов
Установка драйвера с подписью выпуска выполняется так же, как описано в разделе Установка, удаление и загрузка пакета драйвера Test-Signed в тестовой подписи, за исключением двух дополнительных шагов, необходимых при установке с помощью любого из описанных здесь методов.
Если подписыватель пакета драйвера еще не настроен в системе для обеспечения доверия, может отображаться следующее диалоговое окно Безопасность Windows.

При выборе проверка это диалоговое окно больше не будет отображаться на компьютере, если драйвер установлен снова или драйвер по какой-либо причине удален.
Примечание Система проверяет точность сведений об издателе на основе SPC, который использовался для подписывания каталога. Если уровень доверия издателя неизвестен (как и для Contoso.com), система отобразит диалоговое окно. Чтобы продолжить установку, пользователь должен нажать кнопку Установить. Дополнительные сведения о доверии и установке драйверов см. в статье Рекомендации по подписываву кода.
Неподписанный драйвер отобразит следующее диалоговое окно, позволяющее пользователю установить неподписанный драйвер (это может не работать в 64-разрядной версии Windows).

Убедитесь, что драйвер Release-Signed работает правильно.
Используйте диспетчер устройств для просмотра свойств драйвера (описанных ранее для драйвера, подписанного тестом). Ниже показан снимок экрана, показывающий, работает ли драйвер.

Устранение неполадок с драйверами Release-Signed
Ниже приведены несколько распространенных способов устранения неполадок при загрузке подписанных или тестовых драйверов.
- Используйте диспетчер устройств, чтобы проверка, загружен ли драйвер и подписан ли он, как описано в разделе Проверка правильности работы драйвера Test-Signedтестовой подписи.
- Откройте файл setupapi.dev.log, созданный в каталоге %windir%\inf после установки драйвера. Перед установкой драйвера ознакомьтесь с разделом о настройке записи реестра и переименовании файла setupapi.dev.log.
- Проверьте журналы аудита безопасности Windows и журналы событий целостности кода.
Анализ файла Setupapi.dev.log
Как упоминалось ранее, все сведения об установке драйвера будут регистрироваться (добавляться) в файл setupapi.dev.log в каталоге %windir%\inf. Если при тестировании установки пакета драйвера файл переименован перед установкой драйвера, будет создан новый файл журнала. Новый файл журнала будет проще искать важные журналы из новой установки драйвера. Однако файл журнала не следует переименовывать в рамках рабочего сценария. Файл журнала можно открыть в любом программном обеспечении для редактирования текста.
Самый левый столбец может иметь один восклицательный знак «!» или несколько восклицательных знаков «. «. Одиночный восклицательный знак является предупреждающим сообщением, но тройной восклицательный знак указывает на сбой.
При установке выпуска пакета драйвера, подписанного поставщиком ЦС, предоставленным сертификатом SPC, вы увидите следующий восклицательный знак. Это предупреждения о том, что cat-файл еще не проверен.
! sig: Verifying file against specific (valid) catalog failed! (0x800b0109) ! sig: Error 0x800b0109: A certificate chain processed, but terminated in a root certificate which is not trusted by the trust provider. sig: Success: File is signed in Authenticode(tm) catalog. sig: Error 0xe0000242: The publisher of an Authenticode(tm) signed catalog has not yet been established as trusted.
Если нажать кнопку «Установить» в диалоговом окне, которое отображается, когда подписыватель еще не является доверенным на этом компьютере, вы увидите журнал ниже, что в большинстве случаев означает, что драйвер будет устанавливаться и загружаться нормально. Диспетчер устройств не сообщает об ошибках или желтом восклицательный знак для драйвера.
! sto: Driver package signer is unknown but user trusts the signer.
Если в файле журнала также отображается следующий журнал ошибок, драйвер может не быть загружен.
Файл setupapi.dev.log также сообщил о следующей ошибке:
. dvi: Device not started: Device has problem: 0x34: CM_PROB_UNSIGNED_DRIVER.
Обратите внимание, что 0x34 имеет значение Code 52.
Чтобы устранить неполадки, просмотрите файл журнала и найдите восклицательные знаки рядом с двоичным файлом драйвера. signtool verify Выполните команду в cat-файле и других внедренных двоичных файлах со знаком.
Как правило, для устранения проблемы достаточно сведений о файле журнала. Если приведенные выше проверки не удается найти первопричину, проверка журнал аудита безопасности Windows и журналы событий целостности кода, описанные в следующем разделе.
Использование журнала аудита Безопасность Windows
Если драйверу не удалось загрузиться из-за отсутствия допустимой подписи, он будет записан как событие сбоя аудита. События сбоя аудита записываются в журнал безопасности Windows, что указывает на то, что целостности кода не удалось проверить хэш образа файла драйвера. Записи журнала содержат полный путь к файлу драйвера. События аудита журнала безопасности создаются только в том случае, если локальная политика аудита безопасности позволяет регистрировать события сбоев системы.
Примечание Журнал аудита безопасности должен быть явно включен. Дополнительные сведения см. в приложении 3. Включение ведения журнала событий целостности кода и аудита системы.
Чтобы изучить журнал безопасности, выполните следующие действия.
- Откройте командное окно с повышенными привилегиями.
- Чтобы запустить Windows Просмотр событий, выполните Eventvwr.exe. Просмотр событий также можно запустить из приложения управления компьютером панель управления.
- Откройте журнал аудита безопасности Windows.
- Проверьте журнал на наличие событий целостности системы с идентификатором события 5038.
- Выберите и удерживайте (или щелкните правой кнопкой мыши) запись журнала и выберите Свойства события, чтобы открыть диалоговое окно Свойства события, в котором содержится подробное описание события.
На снимке экрана ниже показано диалоговое окно Свойства события для события журнала аудита безопасности, вызванного неподписанным файлом Toaster.sys.

Использование журнала операционных событий событий целостности кода
Если не удалось загрузить драйвер, так как он не был подписан или сгенерирована ошибка проверки изображения, целостность кода записывает события в журнал операционных событий целостности кода. Рабочие события целостности кода всегда включены.
События целостности кода можно просматривать с помощью Просмотр событий.
Проверка рабочего журнала целостности кода
- Откройте командное окно с повышенными привилегиями.
- Чтобы запустить Windows Просмотр событий, выполните Eventvwr.exe. Просмотр событий также можно запустить из приложения управления компьютером панель управления.
- Откройте журнал целостности кода Windows.
- Выберите и удерживайте (или щелкните правой кнопкой мыши) запись журнала и выберите Свойства события, чтобы открыть диалоговое окно Свойства события, в котором содержится подробное описание события.
На снимке экрана ниже показано диалоговое окно Свойства события для события журнала целостности кода, вызванного неподписанным файлом Toaster.sys.

Использование информационных событий в подробном журнале целостности кода
Подробное представление информационного журнала целостности кода отслеживает события для всех проверок образов в режиме ядра. Эти события показывают успешную проверку образа для всех драйверов, загруженных в систему.
Чтобы включить подробное представление целостности кода, выполните следующие действия.
- Запустите Просмотр событий, как показано в предыдущем примере.
- Переведите узел «Целостность кода», чтобы сосредоточиться на нем.
- Выберите и удерживайте (или щелкните правой кнопкой мыши) Целостность кода и выберите пункт Вид в контекстном меню.
- Выберите Показать журналы аналитики и отладки. При этом создается вложенное дерево с двумя дополнительными узлами: Операционный и Подробный.
- Выберите и удерживайте (или щелкните правой кнопкой мыши) узел Подробный и выберите свойства в контекстном меню.
- На вкладке Общие выберите Включить ведение журнала, чтобы включить режим подробного ведения журнала.
- Перезагрузите систему, чтобы перезагрузить все двоичные файлы в режиме ядра.
- После перезагрузки откройте оснастку управления компьютером MMC и просмотрите подробный журнал событий целостности кода.
Некоторые другие известные проблемы подписывания драйверов описаны в приложении 4. Проблемы с подписыванием драйверов.
Совместная работа с нами на GitHub
Источник этого содержимого можно найти на GitHub, где также можно создавать и просматривать проблемы и запросы на вытягивание. Дополнительные сведения см. в нашем руководстве для участников.
Windows driver documentation
Windows 10: отключение установки неподписанных драйверов
Как отключить установку неподписанных драйверов в Windows 10?
Будучи установленной на любом компьютере, операционная система должна заботиться о многих вещах, таких, как управление памятью, аппаратная оптимизация и распределение/перераспределение ресурсов. Но это все на поверхности. В дополнение к этому, OС также должна заботиться о всеобщей стабильности и целостности системы, обеспечивая безопасность данных, хранящихся в ней.
Благодаря своей функциональности, Windows 10 может автоматически предотвратить установку устройств, которые приходят с неподписанными драйверами.
Что такое неподписанные драйверы устройств? И почему вы должны отключить их?
Для любого устройства, которое будет установлено на компьютере под управлением ОС Windows, ее соответствующий драйвер(ы) устройств должны пройти Windows Hardware Quality Level (WHQL) тесты. Драйверы устройств, которые проходят эти испытания, снабжены файлом — сертификатом с цифровой подписью от Microsoft, который входит в пакет установки драйвера, и эти драйверы называются подписанными. И, наоборот.
Очень важно, что в цифровом виде неподписанные драйвера не разрешается устанавливать на компьютере, так как они могут включать в себя вредоносный код. И хотя OС явно выдаст предупреждение, когда установка неподписанного драйвера имеет место, это предупреждение может быть обойдено. Поэтому, лучше всего ограничить установку неподписанных драйверов, насколько это возможно.
Как отключить установку неподписанных драйверов устройств в Windows 10?
Сделать это довольно просто:
Шаг 1: Введите gpedit.msc в поисковой строке и нажмите ОК, чтобы запустить Редактор локальной групповой политики ОС Windows . Теперь в левой панели найдите и перейдите User Configuration > Administrator Templates > System — Конфигурация пользователя> Административные шаблоны > Система и дважды щелкните по Driver Installation — Установка драйвера в правой панели.

Шаг 2: В подменю настроек, отображаемых в правой панели, щелкните правой кнопкой мыши на Code signing for device drivers — Цифровая подпись драйверов устройств и нажмите Edit — Изменить, чтобы открыть окно конфигурации. Теперь, измените значение параметра на Включить, и перейдите вниз к Параметры. Здесь в выпадающем окне под меню с текстом Если Windows обнаруживает файл драйвера без цифровой подписи: и выберите Блокировка. Далее нажмите Применить> ОК. Вот скриншот.

Поделиться:
Оставьте свой комментарий!
Установка неподписанных драйверов в Windows 10
Представьте ситуацию, когда вы, счастливый пользователь «самой надёжной, стабильной и безопасной» операционной системы Windows 10, радостно приносите домой новенький гаджет, подключаете его к USB-порту, а вместо обычного сообщения о том, что новое устройство готово к работе получаете вот это «INF стороннего производителя не содержит информации о подписи»:
2017-02-07 05:00:22 239
![]()
- Установка неподписанных драйверов в Windows 10
- Заключение

Таким нехитрым способом Microsoft пытается оградить своих клиентов от использования некошерных (по мнению самой Microsoft) устройств. Точнее, драйверов для них. Обычно драйвер, как и обычный официальный документ, содержит подпись. Только цифровую, удостоверяющую, что он прошёл тестирование на совместимость с системой и безопасен для компьютера пользователя. Но нередки случаи, когда этой подписи у драйвера нет. Часто такое наблюдается у гаджетов китайского происхождения либо у слегка устаревших устройств.
Но если вы всё-таки не вняли предостережениям Microsoft и твёрдо решили установить драйвер, конечно же, это можно «очень просто» сделать – всего несколько шагов. Приступим.
Установка неподписанных драйверов в Windows 10
1) Идём Пуск > Параметры > Обновление и безопасность, открываем вкладку Восстановление и в разделе Особые варианты загрузки нажимаем кнопку «Перезагрузить сейчас«.

2) Система попросит нас немного подождать и выдаст следующее меню, где нужно выбрать Поиск и устранение неисправностей.

3) На следующем экране выбираем пункт Дополнительные параметры.

4) Затем можем немного почитать, но потом всё равно нажимаем кнопку Перезагрузить.

5) Дождавшись перезагрузки компьютера, в появившемся меню выбираем пункт Параметры загрузки.

6) В следующем разделе нас интересует пункт № 7, поэтому, внимательно прочитав инструкции, нажимаем клавишу F7.

7) Дожидаемся полной загрузки системы и пытаемся снова установить драйвер устройства. Система пытается в последний раз заставить нас одуматься.

Но мы не поддаёмся на провокацию и выбираем пункт «Все равно установить этот драйвер», в очередной раз подтверждая нашу с вами безответственность. Ура! Обычно после этого мы с радостью можем наблюдать сообщение о том, что драйвер успешно установлен.
Заключение
Разрешение на установку неподписанных драйверов действует до перезагрузки системы. Затем, при установке другого «несертифицированного» оборудования, процедуру придётся повторить.
В принципе, есть возможность отключить проверку цифровой подписи полностью (через правку реестра), но я не советую этого делать, т.к. безопасность от этого страдает, а часто устанавливать неподписанные драйвера вам вряд ли придётся.