Системе требуется драйвер с цифровой подписью

Содержание

Windows требует драйвер с цифровой подписью

Системе требуется драйвер с цифровой подписью

Драйверы устройств необходимы для связи между аппаратным и программным обеспечением операционной системы. Некоторые драйверы имеют цифровую подпись.

Драйверы с цифровой подписью — это драйверы, подписанные уполномоченным органом таким образом, что конечный пользователь или любое третье лицо не может их изменить.

Иногда пользователи не могут установить или обновить драйверы и получить сообщение об ошибке — Windows требуется драйвер с цифровой подписью .

Подписание драйвера — это процесс связывания цифровой подписи с пакетом драйверов. При установке устройств Windows используются цифровые подписи для проверки целостности пакетов драйверов и удостоверения личности поставщика, который предоставляет пакеты драйверов.

Драйверы, которые вы обычно устанавливаете на свой компьютер из Центра обновления Windows, производителей оригинального оборудования или какого-либо программного обеспечения для загрузки драйверов сторонних производителей и т. Д., Должны быть проверены Microsoft с помощью цифровой подписи.

Это электронный знак безопасности, который удостоверяет издателя для водителя, а также всю соответствующую информацию, связанную с ним. Если драйвер не сертифицирован Microsoft, Window не будет запускать его в 32-разрядной или 64-разрядной системе. Это называется «соблюдение подписи водителя».

Windows 10 будет загружать только драйверы режима ядра, подписанные цифровым порталом разработчика. Однако изменения коснутся только новых установок операционной системы с включенной безопасной загрузкой. Не обновленные свежие установки потребовали бы драйверов, подписанных Microsoft.

Ошибка означает, что драйвер, который вы пытаетесь установить или обновить, не был подписан цифровой подписью. Таким образом, вы не сможете его использовать. Решения этой проблемы следующие:
  1. Обновите драйверы с сайта производителя
  2. Отключить подпись драйверов с помощью редактора групповой политики

1] Обновите драйверы с сайта производителя

Причина, по которой вы сталкиваетесь с этой проблемой в первую очередь, заключается в том, что вы, возможно, загрузили драйверы с внешнего носителя или драйверы не обновлялись в течение некоторого времени, и орган, выдавший лицензию, изменил свои политики.

В этом случае лучшим решением может быть загрузка последних версий драйверов с веб-сайта производителя и их установка.

Если это не работает, единственный вариант, который у вас есть, — отключить подпись драйвера или его распознавание в Windows 10. Однако это не рекомендуется, поэтому продолжайте работу, только если вы считаете, что вам нужно использовать уязвимое оборудование.

2] Отключить подпись драйверов через редактор групповой политики

Чтобы отключить принудительное использование подписи драйверов, нажмите Win + R, чтобы открыть окно «Выполнить», и введите команду gpedit.msc. Нажмите Enter, чтобы открыть Редактор групповой политики .

Перейдите по следующему пути:

Конфигурация пользователя> Административные шаблоны> Система> Установка драйвера.

На правой панели дважды щелкните запись Подпись кода для драйверов устройств , чтобы открыть ее свойства.

Этот параметр определяет, как система реагирует на попытки пользователя установить файлы драйвера устройства без цифровой подписи. Он устанавливает наименее безопасный ответ, разрешенный для систем пользователей в группе.

Пользователи могут использовать Систему на Панели управления, чтобы выбрать более безопасный параметр, но когда этот параметр включен, система не реализует какой-либо параметр менее безопасный, чем тот, который установлен.

При включении этого параметра используйте раскрывающийся список, чтобы указать нужный ответ.

  • «Игнорировать» указывает системе продолжить установку, даже если она содержит неподписанные файлы.
  • «Предупредить» уведомляет пользователя о том, что файлы не имеют цифровой подписи, и позволяет пользователю решить, следует ли остановить или продолжить установку и разрешить ли установку неподписанных файлов. «Предупреждать» используется по умолчанию.
  • «Блок» указывает системе отказаться от установки неподписанных файлов. В результате установка останавливается, и ни один из файлов в пакете драйвера не устанавливается.

Чтобы изменить безопасность файла драйвера без указания параметра, используйте Система на панели управления. Щелкните правой кнопкой мыши «Мой компьютер», выберите «Свойства», перейдите на вкладку «Оборудование» и нажмите кнопку «Подпись драйвера».

Установите переключатель в положение Включено для этой политики.

Выберите Игнорировать в диалоговом окне для Когда Windows обнаружит файл без драйверов .

Нажмите ОК , чтобы сохранить настройки и перезагрузить систему.

Это заставит предупреждение уйти. Но вы должны помнить, что это делает вашу систему «менее защищенной».

Теперь прочитайте : как определить неподписанные драйверы с помощью утилиты sigverif.

Источник: https://techarks.ru/windows/drajveri/windows-trebuet-drajver-s-czifrovoj-podpisyu/

Как подписать драйвер в Windows x64 10/8.1/7 с помощью самоподписанного сертификата

Системе требуется драйвер с цифровой подписью

WinITPro.ru  /  Windows 10  /  Windows 7  /  Windows 8  /  Как подписать драйвер в Windows x64 10/8.1/7 с помощью самоподписанного сертификата

16.10.2018 itpro Windows 10, Windows 7, Windows 8 комментариев 50

Все 64 битные версии Windows, начиная с Windows 7, по умолчанию запрещают установку драйверов устройств, которые не подписаны с помощью корректной цифровой подписи.

Неподписанные драйвер блокируются операционной системой. Наличие цифровой подписи гарантирует (в какой-то мере), что драйвер выпущен конкретным разработчиком или вендором, а его код не был модифицирован после того, как он был подписан.

В Windows 10/7 x64 существует несколько способов отключить проверку цифровой подписи устанавливаемого драйвера: с помощью групповой политики или тестового режима загрузки системы (подробнее все способы описаны в статье Отключаем проверку цифровой подписи для установки неподписанных драйверов в Windows).

Сегодня мы покажем, как можно самостоятельно подписать любой неподписанный драйвер для 64 битной версии Windows 10 или Windows 7.

Предположим, что у нас имеется драйвер некого устройства для x64 Windows 10 или Windows 7, у которого отсутствует цифровая подпись (в нашем примере это будет драйвер для довольно старой видеокарты).

Архив с драйверами под нашу версию Windows (мне удалось найти драйвер для Windows Vista x64) был скачан с сайта производителя и его содержимое распаковано в каталог c:\tools\drv1\.

Попробуем установить драйвер, добавив его в хранилище драйверов Windows с помощью стандартной утилиты pnputil.

Pnputil –a “C:\tools\drv1\xg20gr.inf”

В процессе его установки Windows 7 отобразит предупреждение о том, что система не может проверить цифровую подпись данного драйвера.

В Windows 10 такое предупреждение даже не появляется, а в консоли появляется предупреждение, что в стороннем INF файле отсутствует информация о цифровой подписи.

При попытке установить драйвер из проводника Windows, если вы щелкните ПКМ по inf файлу драйвера и выберите Install / Установить появится ошибка:

The third-party INF does not contain digital signature information.

INF стороннего производителя не содержит информации о подписи.

Попробуем подписать данный драйвер с помощью самоподписанного сертификата.

Утилиты, необходимые для подписывания драйвера

Для работы нам понадобится скачать и установить (с настройками по умолчанию) следующие инструменты разработчика приложений для Windows.

  • Windows SDK (или Microsoft Visual Studio 2005 или выше) для вашей версии Windows – в состав этих пакетов входит Windows SDK Signing tools for Desktop, в которую включена необходимая нам утилита — signtool.exe;
  • Windows Driver Kit 7.1.0 — ISO образа  GRMWDK_EN_7600_1.ISO размером 649 Мб

Создаем самоподписанный сертификат и закрытый ключ

Создадим в корне диска каталог C:\DriverCert.

Откроем командную строку и перейдем в следующий каталог:

cd C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1\bin

Создадим самоподписанный сертификат и закрытый ключ, выданный, допустим, для компании Winitpro:

makecert -r -sv C:\DriverCert\myDrivers.p -n CN=”Winitpro” C:\DriverCert\MyDrivers.cer

Во время создания утилита попросит указать пароль для ключа, пусть это будет P@ss0wrd.

На основе созданного сертификата создадим публичный ключ для сертификата издателя ПО (PKCS).

cert2spc C:\DriverCert\myDrivers.cer C:\DriverCert\myDrivers.spc

Объединим публичный ключ (.spc) и персональный ключ (.p) в одном файле сертификата формата Personal Information Exchange (.pfx).

p2pfx -p C:\DriverCert\myDrivers.p -pi P@ss0wrd -spc C:\DriverCert\myDrivers.spc -pfx C:\DriverCert\myDrivers.pfx -po P@ss0wrd

Генерируем CAT файл драйвера

Создадим каталог C:\DriverCert\xg и скопируем в него все файлы из каталога, в который первоначально был распакован архив с драйвером (c:\tools\drv1\). Убедить что среди файлов имеются файлы с расширением .sys и .inf (в нашем случае xg20grp.sys и xg20gr).

Перейдем в каталог:

cd C:\WinDDK\7600.16385.1\bin\selfsign

На основе inf файла с помощью утилиты inf2cat.exe (входит в состав Windows Driver Kit -WDK) сгенерируем для нашей платформы cat файл (содержит информацию о всех файлах пакета драйвера).

inf2cat.exe /driver:”C:\DriverCert\xg” /os:7_X64 /verbose

Чтобы убедитесь, что процедура прошла корректно, проверьте, что в логе присутствуют сообщения:

Signability test complete.и

Catalog generation complete.

После выполнения команды в каталоге драйвера должен обновиться файл g20gr.cat

Подписываем драйвер самоподписанным сертификатом

Перейдите в каталог:

cd “C:\Program Files (x86)\Windows Kits\10\bin\10.0.17134.0\x64”

Подпишем комплект файлов драйвера созданным нами сертификатом, в качестве сервиса таймстампа (штамп времени) воспользуемся ресурсом Globalsign. Следующая команда подпишет CAT файл цифровой подписью с помощью сертификата, хранящегося в PFX-файл, защищенном паролем.

signtool sign /f C:\DriverCert\myDrivers.pfx /p P@ss0wrd /t http://timestamp.globalsign.com/scripts/timstamp.dll /v “C:\DriverCert\xg\xg20gr.cat”

Если файл подписан успешно, должна появится надпись:

Successfully signed: C:\DriverCert\xg\xg20gr.cat
Number of files successfully Signed: 1

Установка сертификата

Т.к. созданный нами сертификат является самоподписанным, система по-умолчанию ему не доверяет. Добавим наш сертификат в локальное хранилище сертификатов. Сделать это можно с помощью команд:

certmgr.exe -add C:\DriverCert\myDrivers.cer -s -r localMachine ROOT
certmgr.exe -add C:\DriverCert\myDrivers.cer -s -r localMachine TRUSTEDPUBLISHER

Или из графического мастера добавления сертификатов (сертификат нужно поместить в хранилища TrustedPublishers и TrustedRootCertificationAuthoritiesлокальной машины). В домене вы можете централизованно распространить этот сертификат на рабочие станции с помощью групповой политики.

Установка драйвера, заверенного самоподписанным сертификатом

Попробуем еще раз установить подписанный нами драйвер, выполнив команду:

Pnputil –i –a C:\DriverCert\xg20\xg20gr.inf

Теперь в процессе установки драйвера, окна-предупреждения об отсутствующей цифровой подписи драйвера не появится.

Successfully installed the driver on a device on the system.
Driver package added successfully.

В Windows 7 появляется такое предупреждение. о том, уверены ли вы, что хотите установить этот драйвер (в Windows 10 x64 1803 такое всплывающее окно не появляется). Нажав «Install», вы установите драйвер в системе.

Если по каким-то причинам драйвер не устанавливается, подробный лог установки драйвера содержится в файле C:\Windows\inf\setupapi.dev.log.

Этот лог позволит вам получить более подробную информацию об ошибке установки.

В большинстве случаем возникает ошибка «Driver package failed signature validation» — скорее всего это означает, что сертификат драйвера не добавлен в доверенные сертификаты.

Если установка драйвера прошла успешно, в файле setupapi.dev.log будут примерно такие строки:

>>>  [Device Install (DiInstallDriver) – C:\WINDOWS\System32\DriverStore\FileRepository\xg20gr.inf_amd64_c5955181485ee80a\xg20gr.inf] >>>  Section start 2018/07/22 23:32:57.015
cmd: Pnputil  -i -a c:\DriverCert\xg\xg20gr.inf
ndv: Flags: 0x00000000
ndv: INF path: C:\WINDOWS\System32\DriverStore\FileRepository\xg20gr.inf_amd64_c5955181485ee80a\xg20gr.inf
inf: {SetupCopyOEMInf: C:\WINDOWS\System32\DriverStore\FileRepository\xg20gr.inf_amd64_c5955181485ee80a\xg20gr.inf} 23:32:57.046
inf:      Copy style: 0x00000000
inf:      Driver Store Path: C:\WINDOWS\System32\DriverStore\FileRepository\xg20gr.inf_amd64_c5955181485ee80a\xg20gr.inf
inf:      Published Inf Path: C:\WINDOWS\INF\oem23.inf
inf: {SetupCopyOEMInf exit (0x00000000)} 23:32:57.077

Источник: https://winitpro.ru/index.php/2014/05/08/kak-samostoyatelno-podpisat-drajver-dlya-windows-7/

Как отключить проверку подписи драйверов на Windows 10: способы деактивации и включения

Системе требуется драйвер с цифровой подписью

Пользователям полезно знать, как самостоятельно отключить обязательную проверку подписи для различных драйверов, устанавливаемых на ПК, работающих с Windows 10.

При загрузке программ из интернета часто возникает необходимость в установке всевозможных неподписанных файлов. Можно обмануть ОС и с помощью скачанной утилиты подписать драйвер.

Проще на какое-то время деактивировать функцию проверки.

Для чего это нужно

В целях безопасности на свой компьютер разрешается устанавливать только те драйверы, которые имеют электронную подпись. Такая мера защиты призвана обезопасить ОС от проникновения вирусов и установки кустарных ПО, способных вызвать некорректную работу устройства.

Однако бывает, что после скачивания очередного обновления перестают работать сервисы, компоненты ОС, потому что их драйверы не имеют специального разрешения — цифровой подписи.

Система сообщает об ошибке («Невозможно установить ПО для данного устройства», «Отсутствие подписи», «Система не может проверить производителя программы»). Причина проблемы: ОС не разрешает добавлять неподписанные драйверы в свое хранилище.

Система безопасности может сигнализировать об ошибке и при попытке подключить сторонний сканер (принтер) или установить на ПК скачанное из интернета приложение.

Когда у исполняемого файла отсутствует допустимая подпись, разрешается в настройках ПК деактивировать саму проверку подписки. После деактивации появится возможность установить новую версию Вин 10 и скачать любое приложение или конкретный драйвер из просторов интернета. Разрешается обратиться к производителю программного продукта и попросить предоставить подписанный исполняемый файл.

Отключение проверки подписи драйвера на один раз

Система встроенной безопасности Виндовс не разрешает устанавливать исполняемый файл без специальной разрешительной метки. Однако можно попробовать деактивировать функцию защиты.

Как самостоятельно установить на ПК файл без разрешительной метки:

  • активировать консоль Параметры;
  • перейти в подпункт «Обновление и безопасность»;
  • отыскать «Защитник Windows» и самостоятельно отключить «Защиту в реальном времени»;
  • найти «Журнал Защитника»;
  • отыскать исполняемый файл без подписки, отправленный на карантин, и «Восстановить» его.

Метод разового выключения через «Выбор действия»:

  • отправиться в окошко выключения ПК;
  • выбрать «Перезагрузка» и одновременно нажать на кнопку «Shift»;
  • ПК перезапустится;
  • всплывет окошко «Выбор действия»;
  • активировать подпункт «Поиск…неисправностей»;
  • отыскать подпункт «Параметры загрузки»;
  • активировать строчку «Отключить…проверку подписи драйверов».

Как отключить проверку навсегда

Когда однократная деактивация функции не помогла, разрешается попробовать выключить ее насовсем. Есть несколько способов, позволяющих установить на ПК неподписанный исполняемый файл.

С помощью параметров загрузки

Как запустить на ПК неподписанный driver:

  • выполнить активацию консоли Параметры;
  • перейти в подпункт под названием «Восстановление»;
  • отыскать строчку «Особые варианты загрузки»;
  • активировать опцию «Перезагрузить сейчас»;
  • выполнится перезапуск устройства;
  • на мониторе появится список и предложение выбрать любое действие;
  • выбрать подпункт «Поиск…неисправностей»;
  • отыскать и активировать «Параметры загрузки»;
  • отобразится список;
  • нажать на строчку «Отключить обязательную проверку подписи драйверов»;
  • сразу после перезапуска ноутбука выполнится запуск Вин 10 с деактивированной функцией.

Через Командную строчку

Первый способ деактивации:

  • запустить ОС в безопасном режиме;
  • выполнить активацию Командной строчки на администраторских правах;
  • для деактивации функции написать: bcdedit.exe /set NOINTEGRITYCHECKS ON;
  • после завершения процесса перезагрузить ноутбук в нормальном режиме.

Важно! При первом способе деактивации метки нужно иметь ПК с поддержкой БИОС. Если модель с UEFI, то для выключения функции потребуется отключение «Secure BOOT».

Второй способ деактивации:

  • активировать Командную строчку на администраторских правах;
  • для отмены подписки написать: bcdedit.exe -set loadoptions DISABLE_INTEGRITY_CHECKS;
  • при активации test-режима написать: bcdedit.exe -set TESTSIGNING ON.

Важно! После выполнения системой заданных команд потребуется перезагрузка устройства. Функция отключится, активируется test-режим. В любое время пользователь сможет самостоятельно активировать опцию, отвечающую за контроль подлинности скачиваемых исполняемых файлов.

Редактор групповой политики

Как самостоятельно деактивировать функцию:

  • вызвать системный инструмент «Выполнить»;
  • напечатать символы: gpedit.msc;
  • пройтись: «Конфигурация пользователя»/ подпункт «Админ. шаблоны»/ подпункт «Система»;
  • развернуть веточку последнего подпункта;
  • отыскать «Установка драйвера» (развернуть);
  • отыскать «Цифровая подпись…», вызвать всплывающее окошко со списком различных действий;
  • активировать «Отключено»;
  • разрешается сохранить опцию включенной, но в подпункте «Если Вин 10 обнаружит файл…» один раз нажать на «Пропустить»;
  • после внесения изменений требуется перезагрузка устройства.

С использованием сторонней утилиты

Как подменить электронную подпись с использованием Driver Signature Enforcement Overrider:

  • предварительно выключить UAC (вызвать «Выполнить» и написать: UserAccountControlSettings);
  • запустить скачанную утилиту;
  • принять условия лицензии;
  • активировать test-режим;
  • выбрать driver без подписки и подписать его средствами скачанного приложения;
  • выполнить перезагрузку ноутбука.

Как обратно активировать цифровую подпись драйверов

Повторная активация проверки наличия разрешительной метки у исполняемого файла зависит исключительно от способа деактивации. Пользователю нужно вспомнить, каким образом была отключена функция.

Как снова включить проверку из Командной строчки:

  • активировать системный инструмент на администраторских правах;
  • для отмены активного test-режима написать: bcdedit.exe /set TESTSIGNING off;
  • при активации функции контроля написать: bcdedit.exe /set loadoptions ENABLE_INTEGRITY_CHECKS;
  • если пользователем первоначально была использована команда «NO INTEGRITY CHECKS on», то в конце написать: «off».

Как повторно активировать функцию через «Редактор…»:

  • вызвать системный инструмент «Выполнить»;
  • напечатать символы: gpedit.msc;
  • как при деактивации опции из «Конфигурации…» перейти в подпункт «Система»;
  • отыскать строчку «Установка драйвера»;
  • подпункту «Цифровая подпись…» вызвать «всплывающее» окошко;
  • если функция выключена, то активировать «Включено», можно «Не задано».

Важно! Если ранее пользователь применил загрузку Виндовса в специальном режиме, то для повторной активации выключенной функции потребуется всего лишь перезагрузить ноутбук. Если для подмены подписи использовалась сторонняя утилита, то ничего менять не нужно. Ведь приложение отменило проверку только одного, указанного пользователем файла.



06.12.2020 15:59 222

Евгений Верещака

Информационный портал IT Техник

Источник: https://it-tehnik.ru/windows10/nastroyka/kak-otklyuchit-proverku-podpisi-drayverov.html

Как отключить проверку подписи драйверов в Windows 7/10

Системе требуется драйвер с цифровой подписью

Начиная с Windows 7, компания Microsoft ужесточила требования к устанавливаемым драйверам. Теперь каждый драйвер обязан иметь сертифицированную Microsoft цифровую подпись, в противном случае установить его будет нельзя.

Проверка цифровой подписи драйверов производится в начале их установки и, если таковой не обнаруживается, пользователь получает ошибку вроде «Windows не может проверить издателя этого драйвера».

Если же драйвер попробовать установить принудительно, а для этого в окошке с сообщением предусмотрена соответствующая опция, то он все равно не установится.

Чтобы решить эту проблему, потребуется отключение проверки подписи драйверов. Оно может быть либо одноразовое, либо на постоянной основе.

В большинстве случаев в целях обеспечения дополнительной безопасности рекомендуется отключать проверку до первой перезагрузки, но если вы уверены в своих действиях и доверяете разработчику, можете отключить ее навсегда.

Итак, давайте посмотрим, как отключить проверку подписи драйверов в Windows 7/10, используя для этого разные способы.

Загрузка Windows в специальном режиме

Этот вариант отключения проверки цифровой подписи – одноразовый. Выбор режима с отключенной проверкой несколько отличается в разных версиях операционной системы.

Если вы работаете в Windows 10, зайдите через приложение «Параметры» в раздел «Обновление и безопасность», переключитесь на вкладку «Восстановление» и нажмите кнопку «Перезагрузить сейчас», расположенную под заголовком «Особые варианты загрузки».

Загрузится экран выбора действия. Выполняем следующее. Последовательно выбираем Поиск и исправление неисправностей – Дополнительные параметры – Параметры загрузки – Перезагрузить.

Система перезагрузится, и вы увидите экран параметров загрузки, в котором вам нужно будет нажать кнопку F7, соответствующую опции отключения обязательной проверки подписи драйверов.

После загрузки Windows вы сможете установить неподписанный драйвер без ошибок и предупреждений.

Аналогичным образом действуем в Windows 8 и 8.1, только для загрузки в режиме отключенной проверки драйверов открываем панель Charms, выбираем там Изменение параметров компьютера – Обновление и восстановление – Восстановление – Перезагрузить сейчас.

В остальном практически все то же самое.

В Windows 7 попасть в меню дополнительных параметров проще всего, нажав кнопку F8 при загрузке компьютера. Когда на экране появится меню, выберите с помощью клавиш-стрелок в списке соответствующую опцию и нажмите Enter.

Отключение через редактор групповой политики

Если вы желаете отключить проверку подлинности драйверов на постоянной основе, можете воспользоваться редактором локальной групповой политики. Это универсальный способ и работает он одинаково в Windows 7, 8/8.

1 и 10 с одним лишь условием – редакция системы должна быть выше Home. Запустите редактор командой gpedit.

msc и перейдите в левой колонке по пути Конфигурация пользователя – Административные шаблоны – Система – Установка драйвера.

Справа дважды кликните по политике «Цифровая подпись драйверов устройств». В открывшемся окне настроек установите радиокнопку в положение «Включено», а в выпадающем меню чуть ниже выберите опцию «Пропустить».

Сохраните настройки и перезагрузите на всякий случай компьютер. Все, после этого можно спокойно устанавливать неподписанный драйвер.

Отключение через командную строку

Аналогичные результаты можно получить, воспользовавшись обычной командной строкой, а если быть точнее, консольной утилитой bcdedit. Этот способ также универсален, единственное условие – необходимо, чтобы на ПК был обычный BIOS.

Впрочем, прибегнуть к нему можно даже если на вашем компьютере UEFI, только вам в обязательном порядке нужно будет отключить функцию Secure Boot.

Откройте классическую командную строку или консоль PowerShell от имени администратора и выполните последовательно эти две команды:

bcdedit.exe -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit.exe -set TESTSIGNING ON

После выполнения каждой команды вы должны получить подтверждение «Операция успешно завершена».

Перезагрузите компьютер и установите неподписанный драйвер. Маленький нюанс – после перезагрузки в правом нижнем углу экрана у вас появится уведомление «Тестовый режим» с указанием версии и редакции системы.

Чтобы от него избавиться, вам придется вновь включить проверку подписи драйверов. Для этого выполняем эти две команды:

bcdedit.exe /set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit.exe /set TESTSIGNING OFF

Маловероятно, но может статься, что при следующей перезагрузке проверка включится вновь.

Как отключить проверку подписи драйверов навсегда в таком случае? Есть еще один способ, и он также подразумевает использование консольной утилиты bcdedit.

На этот раз вам нужно будет сначала загрузить Windows в безопасном режиме. Включается он в параметрах загрузки (как их открыть, мы рассматривали выше) нажатием кнопки F4. В Windows 7 для выбора используются клавиши-стрелки.

Загрузившись в безопасном режиме, откройте от имени администратора командную строку и выполните команду bcdedit.exe /set nointegritychecks on, а затем перезагрузитесь в обычном режиме.

Проверка подписи также будет отключена. По отзывам многих пользователей, этот способ является более надежным. На будущее, если вы захотите вновь включить проверку, загрузившись в безопасном режиме, выполните ту же команду, только замените в ней ключ on ключом off.

Источник: https://viarum.ru/kak-otklyuchit-proverku-podpisi-drayverov/

Все о подписи драйверов Windows

Системе требуется драйвер с цифровой подписью

Как известно в х64 битных платформах была введена процедура обязательной цифровой подписи всего того, что может попасть в ядро системы, а именно драйверов.

О том, на сколько это эффективно и оправданно можно долго спорить, но только одно можно сказать точно — гимора разработчикам тут определенно добавилась, особенно тем, кто раньше никогда подписями не занимался.

Также для многих стало крайне не очевидно, каким образом разрабатывать драйвер, когда нет на руках валидного сертификата, а тестировать ведь как-то надо. Вот сча я попытаюсь в краткой и доступной форме рассказать о том как это все делается.

Итак, прежде всего, я бы хотел выделить два типа сертификатов, которые я буду рассматривать в рамках данной статьи — тестовый и настоящий. Разница состоит в том, что настоящий сертификат подписан доверенным CA (Certification Authorities — доверенный издатель), типа VeriSign, GlobalSign ну или самим Microsoft, а тестовый подписан самопальным сертификатом типа от Васи Пупкина.

Тестовый сертификат

Как вы уже наверное догадались, именно с помощью этого типа сертификата можно спокойно разрабатывать драйвер, не имея на руках настоящего, но все не так просто, прежде чем его использовать надо проделать некоторые унылые и мудреные мероприятия:

  1. Сгенерить сам сертификат и установить его. Это можно сделать с помощью тулзы makecert, например так: 

    Makecert -r -pe -ss PrivateCertStore -n “CN=TestCertforWDK” TestCert.cer 
где

    PrivateCertStore — название хранилища

    TestCertforWDK — название самого сертификата
    TestCert.cer — имя файла с сертификатом (эта тулза входит в комплект WDK 6000/6001 и расположена bin/SelfSign, в WDK 7600 она почему то не входит…)

  2. Добавить этот сертификат в хранилище с доверенным корневыми CA. Открываем в mmc консоль Сертификаты (Run->mmc->File->Add/Remove Snap-in->Certificates) там находим свой сертификат (например в хранилище PrivateCertStore), копируем его в доверенные корневые издатели (Trusted Root Certification Authorities).
  3. Разрешить тестовые подписи. Для этого прописываем в администраторской консоли:
    bcdedit.exe –set TESTSIGNING ON и перезагружаемся, в итоге на десктопе, после перезагрузки, по углам красоваться соответствующие надписи.

Настоящий сертификат

Тут тоже не все так просто. Дело в том, что не любой CA может выдавать сертификаты для подписи драйверов Windows, а только те, которые авторизованы самой Microsoft, это значит, что корневые сертификаты этих издателей должны быть подписаны Microsoft — что, как раз и выражается в виде этого кросс-сертификата. Вот именно из-за отсутствия кросс-сертификата — тестовая подпись, никогда не будет работать как настоящая. Список доверенных CA, которые обладают такими кросс-сертификатами — представлен тут, там же можно скачать и сами кросс-сертификаты. После того, как вы выложите несколько сотенок $$$ доверенному центру сертификации, они выдадут вам .pfx файл в котором будут содержаться публичный и приватный ключи. Вы его запустите и с помощью нехитрого диалога (как на рисунке ниже), установите в систему.

Подпись драйвера

Процесс подписи для тестового и настоящего сертификата во многом похожи, различия состоят лиш в том, что:

  • для тествой подписи не нужен кросс-сертификат
  • для тествой подписи можно не делать таймстамп

Итак приступим

  1. Качаем тулзу для подписи — signtool (тоже входит в комплект WDK6000/6001)
  2. Подписываем, с тестовым сертификатом:
    signtool sign /v /s PrivateCertStore /n “TestCertforWDK” driver.sys где

    PrivateCertStore — имя хранилища

    TestCertforWDK — имя тестового сертификата
    driver.sys — имя драйвера с настоящим сертификатом:

    signtool sign /v /ac MSCV-GlobalSign.cer /s PrivateCertStore /n “YourTrueCertName” /t http://timestamp.globalsign.com/scripts/timstamp.dll driver.sys

    где

    MSCV-GlobalSign.cer — имя кросс-сертификата

    YourTrueCertName — имя настоящего сертификата
    timestamp.globalsign.com/scripts/timstamp.dll — адрес таймстампингового центра, в моем случае global sign

Далее драйвер можно установить программно с помощью специальных АПИ либо с помощью замечательной тулзы KmdManager.

Подпись пакета драйверов

В реальной жизни подписи самого драйвера оказывается недостаточно, дело в том, что драйвера устройств как правило поставляются в комплекте с inf-файлом, в котором содержится информация о драйвере и устройствах которые он обслуживает. В этом случае необходимо будет сгенерить cat-файл, который содержит в себе инфу о всех файлах пакета, а потом подписать его точно также, как подписывали драйвер. Для генерации cat-файла и его подписи нам понадобится:

  1. Корректный inf-файл (запасайтесь бубнами ребятки)
  2. Тулза которая генерит этот cat-файл из inf-файлов — inf2cat (эта тулза входит в комплект WDK6001/7600, и написана, как не странно, на .NET)
  3. После чего генерим cat-файл, например так
    inf2cat.exe /driver:release\amd64 /os:Vista_x64,Server2003_x64,Server2008_x64 где

    release\amd64 — папка в которой находится inf-файл и драйверы

    Vista_x64,Server2003_x64,Server2008_x64 — список ОС, на которых должен работать драйвер

  4. Подписываем его точно также, как и драйвер
    signtool sign /v /ac MSCV-GlobalSign.cer /s PrivateCertStore /n “YourTrueCertName” /t http://timestamp.globalsign.com/scripts/timstamp.dll catalog.cat
    сам драйвер при этом подписывать не обязательно.
  5. Проверяем, что все хорошо подписалось, для этого открываем свойство .cat файла (или драйвера) и смотрим вкладку Digital Signatures — если есть то можем полюбоваться на результат, если нет, то где-то накосячили. Также более достоверно можно проверить с помощью командной строки

    signtool verify /pa /v /c catalog.cat

EasySign

В результате всех моих исследований на предмет САБЖ-а, я некатал по-быстрому простенькую программку EasySign, которая может подписывать дрова без дополнительного гимора с командной строкой и bat-файлами. Возможно кому-то будет полезно.
Саму прогу можно скачать тут, а мануалку почитать ниже:

  1. Вбиваем в Inf Dir путь к папке где лежит сам .inf файл и все необходимые файлы к нему прилагающиеся.
  2. Выбираем ОСи где работает драйвер.
  3. Cross Cert — указываем путь к кросс-сертификату, если нужно подписать драйвер по-настоящему
  4. Cert Store — названия хранилища, где лежит наш сертификат (например PrivateCertStore)
  5. Cert Name — название сертификата (например TestCertforWDK), если сертификат один в хранилище, то можно и не заполнять это поле.
  6. Time Stamp — адрес таймстампингового центра, для тестового сертификата — можно оставить пустым
  7. Файлы которые надо подписать, тут нужно обязательно добавить cat файл (если еще не создан, то прописать его имя вручную), а также можно добавить все файлы драйверов
  8. Generate Catalog Only — если подписывать не надо, а только создать .cat файл
  9. Жмем Sign — чтобы создать cat-файл и подписать, жмем Log — чтобы почитать что произошло, часто бывают ошибки, например неправильно составлен inf-файл, либо signtool чего-то не нашел и т.п.

Литература по теме

http://msdn.microsoft.com/en-us/library/ff544865(VS.85).aspx драйвера, windows, цифровая подпись

Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.

Источник: https://habr.com/ru/sandbox/15243/

Поделиться:
Нет комментариев

    Добавить комментарий

    Ваш e-mail не будет опубликован. Все поля обязательны для заполнения.