Цифровые подписи в Windows 7
Цифровая подпись — это электронная метка, которая может добавляться к файлам в целях безопасности. Она позволяет идентифицировать издателя файла (подлинность файла) и определить, не подвергался ли файл изменениям (целостность файла).
Цифровые подписи обычно используются производителями оборудования для подписывания драйверов устройств. Драйвер, имеющий цифровую подпись – это драйвер, который опубликован доверенным издателем и протестирован на предмет совместимости с операционной системой, установленной на компьютере.
Если файл содержит некорректную цифровую подпись (или ее нет совсем), то это может означать, что данный файл опубликован ненадежным издателем или был изменен (например, заражен вирусом). Наличие корректной цифровой подписи не всегда гарантирует отсутствие вредоносного кода, а ее отсутствие не обязательно несет угрозу безопасности системы, но все же следует настороженно относиться к файлам с некорректной или отсутствующей подписью.
Проверка цифровой подписи
В Windows 7 для проверки цифровой подписи есть специальная утилита sigverif.exe. Для ее запуска нужно в поисковой строке меню Пуск набрать sigverif.exe и нажать Ввод
В окне программы жмем Начать и она автоматически проверяет системные файлы на наличие подписей.
Результат проверки сохраняется в текстовый файл sigverif.txt. Хранится он в папке Общие документы, также его можно посмотреть прямо из окна программы, щелкнув по кнопке Дополнительно.
Отключение проверки цифровой подписи
В Windows 7 требования к устанавливаемым драйверам существенно ужесточены, и любой устанавливаемый драйвер должен иметь цифровую подпись, проверенную и сертифицированную Microsoft. Перед загрузкой и установкой драйвера устройства Windows проверит его цифровую подпись, и если драйвер не подписан, выдаст предупреждение
Можно это предупреждение проигнорировать и установить драйвер, однако работать он не будет все равно. При установке неподписанного драйвера в диспетчере устройств данное устройство будет помечено восклицательным знаком и содержать сообщение об ошибке.
Политика проверки цифровой подписи драйверов призвана улучшить надежность и стабильность операционной системы, но иногда возникает необходимость установить неподписанный драйвер. К счастью, в Windows 7 можно отключить проверку цифровой подписи. Для этого есть несколько способов:
Отключить поверку цифровой подписи драйверов при загрузке через загрузочное меню. Для этого при загрузке ОС жмем клавишу F8. Для загрузки без проверки цифровых подписей нужно выбрать пункт «Отключение обязательной проверки подписи драйверов»
Дальше можно загружаться и устанавливать необходимые драйвера. Однако данный режим предназначен исключительно для тестирования и при следующей загрузке в обычном режиме установленный драйвер работать не будет.
Для постоянной загрузки в тестовом режиме можно воспользоваться утилитой командной строки bcdedit. Для этого открываем командную строку с правами администратора
И последовательно вводим 2 команды:
bcdedit -set loadoptions DDISABLED_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
После выполнения каждой команды должно появиться сообщение об успешном выполнении. Теперь можно перезагрузить компьютер и установить необходимые драйвера.
Для отключения тестового режима нужно ввести в командной строке команды:
bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
bsdedit -set loadoptions TESTSIGNING ON
Важно: если выдается сообщение о том, что команда неизвестна, то вместо дефиса (-) ключи можно писать через слеш (/).
Ну и наконец можно просто отключить проверку цифровых подписей драйверов через групповую политику. Для запуска оснастки групповой политики вводим в меню Пуск в строке поиска команду gpedit.msc и жмем Ввод. В меню политик идем в Конфигурация пользователя\Административные шаблоны\Система\Установка драйверов и выбираем политику «Цифровая подпись драйверов устройств».
В появившемся окне включаем политику и указываем параметр Пропустить в качестве действия системы при обнаружении неподписанных драйверов.
После перезагрузки политика применится и можно будет загружать и устанавливать любые, в том числе и неподписанные драйвера.
Как отключить проверку цифровой подписи драйвера в Windows 7
08.05.2014
itpro
Windows 7
комментария 103
В ОС Windows 7 Microsoft существенно ужесточила требованию к устанавливаемым драйверам (рекомендуем познакомиться с занимательной статьей об установке драйверов устройств в Windows 7). Теперь любой устанавливаемый драйвер должен иметь цифровую подпись, проверенную и сертифицированную Microsoft. Перед загрузкой и установкой драйвера любого устройства Windows 7 проверяет цифровую подпись этого драйвера. И если при попытке установить драйвер для нового устройства в Windows 7 вы увидите сообщение: «Windows can’t verify the publisher of this driver software», значит, данный драйвер не имеет цифровой подписи. В указанном диалогом окне можно выбрать вариант ”Install this driver software anyway” («Все равно установить этот драйвер»), однако в любом случае этот драйвер не установится, и значит, устройство работать не будет.
При установке неподписанного драйвера, в диспетчере устройств данное устройство будет помечено восклицательным знаком и содержать следующее сообщение об ошибке:
Windows cannot verify the digital signature for the drivers required for this device. A recent hardware or software change might have installed a file that is signed incorrectly or damaged, or that might be malicious software from an unknown source. (Code 52)
Также о проблемах с цифровой подписью драйверов могут свидетельствовать такие ошибки: Device driver software was not successfully installed
Политика проверки цифровой подписи у драйверов работает как в 32-х (x86), так и в 64-х (x64) версиях Windows 7 и главная причина появления такой политики установки сторонних драйверов – желание улучшить стабильность и надежность ОС Windows, добившись того, чтобы все выпускаемые драйвера проходили через сертификационный тест и тест на совместимость в Microsoft.
К счастью в Windows 7 можно отключить проверку цифровой подписи драйвера. И сделать это можно несколькими способами:
- Самому подписать драйвер (сделать это можно с помощью специального софта, или по инструкции, описанной в мануале Как подписать цифровой подписью драйвер для Windows 7 x64)
- Отключить проверку цифровой подписи драйверов с помощью групповой политики
Рассмотрим все перечисленные варианты отключения проверки подписей драйверов
Загрузка Windows 7 без проверки цифровой подписи
Возможно временно отключить проверку подписей драйверов, если перегрузить систему, при загрузке нажать клавишу F8. В появившемся меню с вариантами загрузки системы выбрать пункт Disable Driver Signature Enforcement(«Отключение обязательной проверки подписи драйвера»).
После загрузки Win 7 можно будет установить неподписанный драйвер и протестировать его работу, однако если загрузиться в обычном режиме, драйвер работать не будет
Отключаем проверку подписи драйверов в Windows 7 с помощью групповой политики
В том случае, если вы полностью хотите отключить проверку подписывания драйверов в Windows 7, сделать это можно с помощью групповой политики.
В меню политик перейдите в раздел User Configuration->Administrative Templates-> System->Driver Installation.
В правой панели найдите пункт ‘Code Signing for Device Drivers’ и дважды щелкните по нему.
В появившемся окне выберите ‘Enabled’, а в нижнем меню — ‘Ignore’. Нажмите Ок и перезагрузите компьютер. После перезагрузи и применения политика, в своей Windows 7 вы полностью отключите подписывание драйверов, и сможете установить любые, в том числе, неподписанные драйвера.
Отключаем проверку цифровой подписи драйверов в Windows 7 с помощью bcdedit
Откройте командную строку с правами администратора и последовательно наберите следующие две команды:
После выполнения каждой из команд должно появиться сообщение о том, что команда выполнена успешно.
Перезагрузите компьютер и попробуйте установить неподписанный драйвер. Вуаля!
Если вам нужно отменить этот режим работы и вновь включить проверку цифровой подписи в win 7, выполните следующие команды:
Установка драйверов без цифровой подписи
Цифровая подпись драйвера используется Microsoft для идентификации производителя и подтверждения соответствия продукта требованиям операционной системы. Наличие такого электронного сертификата гарантирует отсутствие в нем изменений, внесенных после выпуска. Таким образом, пользователь получает двойную гарантию безопасности и может быть уверен в работоспособности полученного драйвера.
Проверка подписей
Windows выполняет проверку цифрового сертификата автоматически. Обнаружив его отсутствие, система выдает пользователю предупреждение об опасности установки неподписанного драйвера. Для проверки уже инсталлированных в ОС компонентов можно использовать встроенные инструменты.
Direct X
Драйверы мультимедиа ‒ наиболее часто обновляемые компоненты ОС. Проверить их на наличие сертификата можно с помощью встроенного средства диагностики. Запускаем его командой, показанной на скриншоте.
На основной вкладке ставим галочку в отмеченном поле. Таким образом мы включим автоматическую проверку утилитой сертификатов соответствия.
Переключившись на следующую вкладку, в поле «Драйверы» мы видим положительный ответ системы.
Аналогичным образом проверяем остальные страницы, убеждаясь в наличии сертификата WHQL.
Signature Verification
Выявить наличие в системе всех компонентов без цифровой подписи можно, используя специальную утилиту проверки. Запустим ее, набрав в текстовом поле «sigverif».
Нажимаем отмеченную кнопку для активации процедуры тестирования компонентов.
Завершение верификации несколько изменит вид основного окна утилиты. Нажимаем на выделенную кнопку, чтобы открыть дополнительные параметры.
Выбираем опцию «Просмотр журнала».
В текстовом редакторе запускается отчет о состоянии установленных в системе драйверов. Обозначенная колонка «Состояние» дает информацию о наличии цифрового сертификата WHQL.
Разобравшись с текущим состоянием системы, рассмотрим, как выполнить отключение проверки цифровой подписи драйверов в Windows 10.
Отключение подписи
Поддерживая стабильность ОС, Microsoft не рекомендует устанавливать компоненты, не имеющие сертификатов WHQL, но такая возможность в системе осталась. Необходимость установить неподписанный драйвер может возникнуть по разным причинам. К примеру, это может быть оборудование, снятое с производства, но необходимое для работы.
Групповая политика
Самый простой способ отключить электронную подпись заключается в изменении политики безопасности. Запускаем редактор, используя меню «Выполнить».
В главном окне последовательно разворачиваем подчеркнутые пункты в области навигации. Последний раздел содержит три параметра. Нужный нам выделен рамкой. Открываем его для редактирования.
В управляющем блоке ставим переключатель в положение «Включено». В области параметров используем выпадающее меню. Выбираем пункт, отмеченный цифрой «2». Применяем и сохраняем внесенные изменения.
Заданное правило должно начать действовать без перезагрузки.
Особые параметры загрузки
Следующий способ предполагает использование особых вариантов загрузки операционной системы. Открываем меню параметров Windows и переходим в указанный на скриншоте раздел.
В области навигации перемещаемся к пункту «Восстановление». Используем отмеченную кнопку для перезагрузки системы.
Управление мышью тут доступно, поэтому последовательно начинаем перемещаться по меню. Открываем раздел устранения неисправностей.
Выбираем дополнительные параметры.
Переходим к настройкам загрузки.
Эта область информационная и работает в ней только отмеченная кнопка.
Система переходит в режим низкого разрешения экрана и отключает управление мышью. Нужный нам пункт седьмой в списке. Выбираем его, нажимая управляющую клавишу «F7» в верхнем ряду клавиатуры.
Компьютер перезагрузится, после чего установка неподписанных драйверов в ОС станет доступна.
Режим командной строки
С помощью этого метода можно также отключить проверку цифровой подписи драйвера в Windows 7. Запускаем PowerShell в режиме повышенных прав. Вводим последовательно приведенные на скриншоте команды.
После перезагрузки система не будет сообщать, что ей требуется драйвер с цифровой подписью. Для отключения режима в тексте последней команды указываем «OFF» вместо «ON».
Еще один вариант использования командной строки требует перезагрузки в безопасный режим. Последовательность действий мы уже рассматривали. Добравшись до дополнительных параметров, выбираем обозначенный пункт.
Операционная система еще раз перезагрузится, отобразив командную строку в режиме администратора. Вводим приведенную на скриншоте команду. Для выхода в графическое меню набираем «exit».
Отключение данного режима также выполняется заменой «ON» на «OFF» в конце управляющей команды.
Создание цифровой подписи
В некоторых случаях описанные методы могут не помочь. Когда не отключается проверка подписи драйверов Windows 7 или 10, придется подписать его самостоятельно. Для этой цели нам понадобится распаковать установочный пакет и найти файл с расширением INF. В нем содержится необходимая для инсталляции в системе информация. Найдя нужный файл, вызываем его свойства и переходим на вкладку «Безопасность». Копируем путь, указанный в поле «Имя объекта».
Запускаем PowerShell с повышенными правами. Вводим следующую команду: «pnputil -a C:\path\name.inf». Заменяем в ней строку «C:\path\name.inf» на скопированный путь к файлу.
В результате ее выполнения выбранный драйвер будет зарегистрирован в системе. Этот же способ подойдет и в том случае, когда постоянно слетает цифровая подпись драйвера.
В заключение
Как мы убедились, существует несколько вариантов установки необходимых компонентов без электронного сертификата WHQL. Действия несложные и могут быть выполнены любым пользователем. Тем не менее, установка неподписанного драйвера не должна быть нормой. Поскольку он не тестировался Microsoft, компания не будет нести ответственность за последствия его установки, а пользователь имеет высокие шансы столкнуться с ошибками BSOD.
Подписываем драйвер в Windows 7
Перед началом инструкций отметим, что иногда бывает проще отключить проверку цифровых подписей в операционной системе, нежели вручную подписывать драйвер. К тому же есть и альтернативные варианты инсталляции неподписанного ПО, о чем более детально читайте в других руководствах на нашем сайте, воспользовавшись ссылками ниже.
Подробнее:
Отключение проверки цифровой подписи драйверов в Windows 7
Установка драйвера без проверки цифровой подписи в Windows
Способ 1: Импорт цифровой подписи
Первый вариант подходит тем пользователям, кто собирается устанавливать его в операционную систему только один раз и не заинтересован в дальнейшем распространении. Этот способ лучше всего использовать в тех ситуациях, когда вы скачали драйвер, но оказалось, что он не подписан и инсталлировать его не получается. Тогда от вас требуется перенести его конфигурацию в Windows 7, что осуществляется так:
- Перейдите в папку с драйвером и отыщите там файл формата INF, который и должен быть установлен в ОС. Щелкните по нему ПКМ, чтобы вызвать контекстное меню.
- Внизу списка выберите пункт «Свойства».
Теперь драйвер считается зарегистрированным. Если инсталляция остальных компонентов должна происходить при помощи исполняемого файла, перейдите в каталог с программным обеспечением и запустите его, чтобы завершить установку.
Способ 2: Ручное создание подписи
Этот способ более сложный, поэтому пришлось даже разделить его на этапы во избежание проблем с пониманием. Его суть заключается в использовании фирменных средств разработчика от Microsoft, чтобы создать подпись для пользовательского драйвера. Особое внимание этому методу стоит уделить тем, кто заинтересован в ручной разработке драйверов.
Шаг 1: Предварительные действия
Компания Майкрософт распространяет все необходимые утилиты в свободном доступе, однако по умолчанию они отсутствуют в Windows 7, поэтому сначала придется заняться их загрузкой и инсталляцией.
- Откройте ссылку выше, чтобы открыть страницу скачивания Microsoft Windows SDK, где нажмите по кнопке «Download».
- Загрузка инсталлятора начнется в автоматическом режиме: ожидайте ее окончания, а затем запустите исполняемый файл.
- При появлении окна контроля учетных записей разрешите внесение изменений.
- Следуйте отобразившейся на экране инструкции и переходите далее.
- По ссылке, ведущей на страницу приложения, загрузите Windows Driver Kit.
Сейчас уже существуют новые версии рассмотренных инструментов, но вам нужно загружать только те сборки, на которые мы оставили ссылки. Связано это с тем, что разработчики в новых версиях прекратили поддержку используемых далее утилит, что не позволит вручную подписать драйвер. Убедитесь в том, что все компоненты установлены, перезагрузите компьютер и переходите далее.
Шаг 2: Генерация ключа и сертификата
Сертификат необходим драйверу для того, чтобы определить его подлинность, а сгенерированные ключи обезопасят сам файл от несанкционированного изменения. Создание таких компонентов — обязательное условие от Microsoft, поэтому каждому пользователю придется выполнить следующие действия:
- Запустите «Командную строку» от имени администратора.
- Введите команду cd C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1\bin , чтобы перейти к папке с объектами SDK. Если вы изменяли директорию при установке, замените путь на актуальный. Активируйте команду нажатием по клавише Enter.
- Задействуйте утилиту, входящую в состав SDK, чтобы сгенерировать сертификат, вписав в консоль команду makecert -r -sv C:\DriverCert\myDrivers.pvk -n CN=»NameCompany» C:\DriverCert\MyDrivers.cer . Замените NameCompany на название изготовителя драйвера или впишите произвольное.
- На экране отобразится форма для создания пароля к закрытому ключу, а от вас требуется ввести его в соответствующем поле и подтвердить.
- Для продолжения работы в новом окне введите уже присвоенный пароль.
- После автоматического закрытия окна ознакомьтесь с содержимым консоли: если в конце вы видите уведомление «Succeeded», значит, генерация прошла удачно и можно двигаться далее.
- Следующий обязательный этап заключается в создании публичного ключа, и он будет доступен всем желающим внедрить драйвер в программное обеспечение. Для этого вставьте команду cert2spc C:\DriverCert\myDrivers.cer C:\DriverCert\myDrivers.spc .
- Сообщение в консоли должно свидетельствовать об успешном создании публичного ключа.
- Закрытый и публичный ключ должны быть объединены в один компонент, а для этого используется команда pvk2pfx -pvk C:\DriverCert\myDrivers.pvk -pi P@ss0wrd -spc C:\DriverCert\myDrivers.spc -pfx C:\DriverCert\myDrivers.pfx -po PASSWORD . Замените PASSWORD на ранее созданный пароль закрытого ключа.
Это был самый простой этап создания цифровой подписи для драйвера, в ходе которого практически никогда не возникает никаких ошибок. Однако если на экране отобразились какие-то предупреждающие уведомления, не игнорируйте их, читайте содержимое и исправляйте ситуацию в соответствии с находящимися там рекомендациями.
Шаг 3: Создание конфигурационного файла
Конфигурационный файл необходим каждому драйверу, ведь именно в нем и будут храниться основные сведения. В дальнейшем он может пригодиться, если, например, понадобится изменить дату последнего изменения или внести коррективы в название версии драйвера. Сначала понадобится обратиться в заранее созданную папку «DriverCert», куда перенесите файлы драйвера, для которого и создается подпись, выделив для них отдельный подкаталог. После запустите консоль и выполните такие действия:
- Для использования следующей утилиты снова придется переместиться в папку с набором инструментов от Майкрософт, а для этого задействуйте команду cd C:\WinDDK\7600.16385.1\bin\selfsign .
- Предварительно откройте каталог с драйвером и убедитесь, что там есть два файла с расширениями INF и SYS, ведь они будут задействованы для следующего формирования конфигурационного файла. После введите inf2cat.exe /driver:»C:\DriverCert\DRIVER» /os:7_X64 /verbose , заменив DRIVER на название ранее созданной папки с файлами. Подтвердите выполнение команды нажатием на Enter.
Следите за состоянием «Командной строки» и ожидайте появления на экране уведомлений «Signability test complete» и «Catalog generation complete». Во время процедуры создания файла настоятельно не рекомендуется выполнять других действий на компьютере, поскольку это может вызвать сбои в функционировании утилиты.
Отдельно отметим самую частую ошибку, которая появляется при создании конфигурационного файла. Ее текст выглядит примерно так: «22.9.7: DriverVer set to incorrect date (must be postdated to 4/21/2009 for newest OS) in \XXXXX.inf», а вызывает ее некорректно установленная дата создания объекта. Если такая проблема возникла, откройте целевой файл, имя которого и указано в ошибке, через стандартный «Блокнот», где отыщите строку «DriverVer=» и поменяйте ее значение на 05/01/2009,9.9.9.9 . Сохраните изменения и повторно выполните создание конфигурационного файла.
Шаг 4: Создание подписи для драйвера
Когда все предыдущие этапы завершены, остается только подписать сам драйвер, что выполняется при помощи добавленных ранее средств разработчика через уже привычную Командную строку.
- Откройте консоль от имени администратора и напишите команду cd «C:\Program Files (x86)\Windows Kits\10\bin\10.0.17134.0\x64» .
- Далее вставьте содержимое signtool sign /f C:\DriverCert\myDrivers.pfx /p PASSWORD /t http://timestamp.globalsign.com/scripts/timstamp.dll /v «C:\DriverCert\xg\xg20gr.cat» , заменив PASSWORD на пароль закрытого ключа, который создавался ранее. Во время данной операции будет задействован онлайн-сервис Globalsign, отвечающий за установку штампа времени, поэтому убедитесь в наличии подключения к интернету. Появившаяся в консоли строка Successfully signed: C:\DriverCert\xg\xg20gr.cat Number of files successfully Signed: 1 уведомит об успешном завершении процесса.
- По очереди вставьте две команды ниже, устанавливающие сертификат.
Следуйте отобразившимся в графическом меню инструкциям, чтобы завершить подпись. На этом процесс считается оконченным, а подписанный драйвер остается только вручную установить, если это требуется.