Как подписать драйвер windows 7 x64

Как самостоятельно подписать файл драйвера цифровой подписью для установки в Windows 10, 8.1 и Windows 7 x64 и x86, пошаговая инструкция.

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

Для работы нам понадобится скачать и установить (с настройками по умолчанию) следующие инструменты разработчика приложений для 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 Мб

Совет. В Windows 10 можно использовать более новые версии Windows SDK и Windows Driver Kit. Перед установкой этих инструментов, убедитесь, что в системе установлен .NET Framework 4.

Что понадобится для интеграции драйверов и обновлений в образ Windows 10

  • Распакованный образ Windows 10. Его можно скачать с официального сайта Microsoft и распаковать в любую папку с помощью какого-нибудь архиватора, например, бесплатного 7-Zip.
  • Папка с необходимыми драйверами для вашего устройства. Можете просто сохранить все драйвера Windows.
  • MSU-файл обновления Windows 10, который можно скачать из каталога обновлений Microsoft.
  • Устройство на Windows 7 (и старше) с несколькими гигабайтами свободного пространства на системном диске и достаточно мощным процессором. Проводить операции, описанные ниже, на планшете с процессором Intel Atom и 16 ГБ встроенной памяти не стоит.
  • Бесплатная программа NTLite.

Описанный в статье способ работает также для Windows 7 и Windows 8.1, но вам придётся получать их образы, обновления и драйвера другими методами.

Как интегрировать драйвера и обновления в образ Windows 10

Процесс добавления драйверов в дистрибутив Windows 10 можно условно разделить на несколько частей.

Установка программы NTLite

  • Пройдите на сайт разработчика программы NTLite и загрузите её установочный файл (для 32-битной или 64-битной системы): ntlite.com/download.
  • Запустите загруженный файл.
  • Примите лицензионное соглашение и нажмите Далее.
  • Выберите папку для установки программы или оставьте её стандартной и нажмите Далее.
  • Поставьте галочку, если вы хотите разместить ярлык программы на рабочем столе.
  • Выберите способ установки: обычный или портативный. При активации портативного режима (Portable Mode) программа фактически не будет устанавливаться в систему. В таком случае удаление будет осуществляться простым удалением папки с файлами. Нажмите Далее.
  • Подождите, пока программа установится, и запустите её.
  • Укажите, что вам нужна бесплатная версия программы, и нажмите ОК.

Подготовка образа Windows 10 к интеграции драйверов

  • Убедитесь, что у вас есть все необходимые файлы. Их список находится в начале статьи.
  • Нажмите кнопку Добавить – Папка образа.
  • Укажите путь к папке с распакованным образом.
  • Программа проанализирует папку и отобразит системы, которые могут быть установлены с помощью этого образа.
  • В ветви История образа – Папка образа – Операционные системы выберите нужную вам редакцию Windows, которую вы собираетесь установить.
  • Нажмите кнопку Загрузить.
  • Если появится сообщение о конвертации образа в WIM-формат, просто нажмите ОК. На дальнейшую установку Windows это никак не повлияет.
  • Подождите, пока программа монтирует и анализирует образ. С учётом конвертации это может занять от 20 до 40 минут.

Добавление драйверов и обновлений в образ Windows 10

  • Перейдите в раздел Обновления с помощью меню слева.
  • Нажмите Добавить – Файлы пакетов.
  • Укажите путь к установочному MSU-файлу обновления.
  • Подождите, пока программа загрузит пакет обновления.
  • Перейдите в раздел Драйверы в меню слева.
  • Нажмите Добавить – Папка с несколькими драйверами.
  • Укажите путь к папке с драйверами.
  • Подождите, пока программа загрузит драйвера.
  • Перейдите в раздел Применить в меню слева.
  • Поставьте галочку Создать ISO сверху.
  • Выберите, где сохранить ISO-файл, и введите его название.
  • Присвойте ISO-файлу метку. Она ни на что не влияет, так что можно назвать её как угодно.
  • Нажмите кнопку Обработка.
  • Если программа попросит, пройдите в настройки и отключите Windows Defender.
  • Подождите, пока NTLite будет выполнять все операции. После окончания процесса программу можно закрыть.

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

Редактор системного реестра

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

  1. Выполняем команду «regedit».
  1. Идём в раздел с настройками текущего пользователя.
  1. В каталоге с параметрами программного обеспечения разворачиваем ветку «Policies».
  1. В разделе «Microsoft» создаём папку «Driver Signing».
  1. Переходим в неё и через контекстное меню добавляем параметр «DWORD 32 bit», даже если используетесь Windows 64 bit.
  1. Называем его «BehaviorOnFailedVerify», выполнив двойной клик по названию, а в качестве значения вводим «0».

Изменения вступят в силу после перезагрузки или очередной авторизации в системе.

Подписывание драйвера (для Win7/8 64 бит)

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

USB / VCP драйверы oscill выпущены с custom PID и не содержат цифровой подписи. На windows 7/8 64бит эти драйверы блокируются операционной системой, и не работают. Есть несколько путей решения этой проблемы:

1. Другой драйвер

перепрошивкой USB чипа oscill можно сменить PID oscill – на PID фирмы SILABS (это производитель USB контроллера), что позволит применить подписанные оригинальные драйверы от SILABS. Вот эти драйверы:

Если PID=EA60 – нужен  Silabs VCP драйвер v6.53 (не у всех работает. Лучше PID=EA61)

Если PID=EA61 – нужен  Silabs DLL драйвер v3.3, с ним работает новое ПО Winoscill (несмотря на автоматический выбор USB драйвера между v2.0 и v3.X, можно вручную указать: Link-Setup-Port-Driver-V3)

2. Отучение windows от требовательности к подписи

заставить windows принять неподписанный драйвер, например вот инструкция для принудительной регистрации USB драйвера v3.3 : http://elektron.ucoz.ua/blog/ustanovka_oscill_v_win7_kh64/2012-12-01-1

Отключение требования подписи драйвера в windows 8.1 и windows 10

3. Подписать драйвер:

1. Скачиваем программу: Driver Signature Enforcement Overrider v1.2 2. Отключаем Контроль учетных записей пользователей (UAC). 3. Запускаем программу. 4. Включаем тестовый режим, установив переключатель в положение “Enable Test Mode”. Кстати, здесь же предусмотренно обратное действие “Disable Test Mode”, отключающее тестовый режим. 5. Выпишите список драйверов (их полный путь и название)для своего устройства. Для этого следует зайти в “Свойства системы” – “Диспетчер устройств” найти там устройство с “проблемным” драйвером и посмотреть сведения о драйверах. 5. Добавляем подписи для непроверенных системных файлов. Для этого выберите “Sign a System File” и введите имя файла, включая полный путь. Например, если файл драйвера ATITool64.sys расположен в каталоге C:\windows\System32\Drivers, то вам необходимо указать C:\windows\System32\Drivers\ATITool64.sys. В случае если необходимо подписать несколько файлов, то просто повторяем эту процедуру несколько раз.

5. Перезагружаем компьютер.

Источник

Все о подписи драйверов windows / Песочница / Хабрахабр

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

  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 и перезагружаемся, в итоге на десктопе, после перезагрузки, по углам красоваться соответствующие надписи.

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

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

  • для тествой подписи не нужен кросс-сертификат
  • для тествой подписи можно не делать таймстамп
  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 timestamp.globalsign.com/scripts/timstamp.dll driver.sys

    где

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

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

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

  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 timestamp.globalsign.com/scripts/timstamp.dll catalog.cat сам драйвер при этом подписывать не обязательно.
  5. Проверяем, что все хорошо подписалось, для этого открываем свойство .cat файла (или драйвера) и смотрим вкладку Digital Signatures — если есть то можем полюбоваться на результат, если нет, то где-то накосячили. Также более достоверно можно проверить с помощью командной строкиsigntool verify /pa /v /c catalog.cat

EasySign

  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 чего-то не нашел и т.п.

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

драйвера, windows, цифровая подпись

WDK for Windows 10, version 2004

Step 1: Install Visual Studio 2019

The WDK requires Visual Studio. For more information about system requirements for Visual Studio, see Visual Studio 2019 System Requirements.

The following editions of Visual Studio 2019 support driver development for this release:

  • Download Visual Studio Community 2019
  • Download Visual Studio Professional 2019
  • Download Visual Studio Enterprise 2019

When you install Visual Studio 2019, select the Desktop development with C++ workload. The Windows 10 Software Development Kit (SDK) is automatically included, and is displayed in the right-hand Summary pane. Note that the version of the SDK that is compatible with the WDK for Windows 10, version 2004 may not be the default SDK. To select the correct SDK:

In Visual Studio Installer, on the Individual components tab, search for
Windows 10 SDK (10.0.19041.0), select this version and continue with install.

If you already have Visual Studio 2019 installed, you can install the Windows 10 SDK (10.0.19041.1) by using the Modify button in Visual Studio install.

WDK has Spectre mitigation enabled by default but requires spectre mitigated libraries to be installed with Visual Stuido for each architecture you are developing for. Additionally, developing drivers for ARM/ARM64 require the build tools for these architectures to also be installed with Visual Studio. To locate these items you will need to know the latest version of MSVC installed on your system.

To find the latest version of MSVC installed on your system, in Visual Studio Installer go to workload page, on the right pane under installation details, expand Desktop development with C++ and locate the MSVC v142 – VS 2019 C++ x64/x86 build tools (V14.xx) – note where xx should be the highest version available.

With this information (v14.xx), go to Individual components and search for v14.xx. This will return the tool sets for all architectures, including Spectre mitigated libs. Select the driver architecture you are developing for.

For example, searching for v14.25 returns the following:

Step 2: Install WDK for Windows 10, version 2004

Download WDK for Windows 10, version 2004

The WDK Visual Studio extension is included in the default WDK installation.

Зачем нужна цифровая подпись драйвера

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

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

Цифровая подпись отображается во всплывающем окне, как только юзер запускает установку исполняемого файла. В этом окне необходимо предоставить ОС дополнительное разрешение на запуск мастера установки. Здесь же можно увидеть наименование сертификата. Он указывается после имени программы. На рисунке ниже представлен пример отображения окна User Account Control, в котором цифровая подпись приложения — это поле Publisher.

Рис. 1 – пример окна проверки сертификата программы

Цифровая подпись вшита не только в стандартные приложения и системные библиотеки. Её также можно встретить в драйверном ПО. Драйвер – это программа, которая отвечает за настройку работы аппаратных компонентов ПК и подключенных к нему устройств (видеокарта, мышка, клавиатура, принтер, микрофон и прочие). Как правило, все драйвера устанавливаются через окно диспетчера устройств. В нем можно настроить автоматическое обновление конфигурации для любого подключенного устройства.

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

Также, в Windows могут возникать ошибки конфигурации. Из-за этого даже драйвер с наличием официальной цифровой подписи может определяться как потенциальная угроза безопасности для ПК. 64-битные версии ОС сразу блокируют установку и удаляют файл приложения, если цифровая подпись не обнаружена.

Появившееся окно ошибки Windows может отображать один из следующих вариантов неполадки:

  • «Отсутствие подписи драйвера»;
  • «Система не может проверить производителя программы»;
  • «Windows нужен драйвер с наличием цифровой подписи».

Командная строка

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

  1. Открываем командную строку, выполнив «cmd» в окне интерпретатора команд (вызывается при помощи Win + R или кликом по одноимённой кнопке в «Пуске») либо в поисковой строке «Пуска».
  1. Вводим или вставляем следующую команду «bcdedit.exe /set nointegritychecks ON» и жмём Enter для её запуска.
  1. Завершаем все приложения и перезагружаем компьютер командой «shutdown /r» или через «Пуск», если так удобнее.

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

Запускаем командную строку любым способом и выполняем в ней последовательность команд:

  • exe -set loadoptions ddisable_integrity_checks;
  • exe -set testsigning on.

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

Включить обязательную проверку подлинности драйверов перед их загрузкой и установкой обратно можно аналогичным образом, заменив параметр «ddisable» на «enable» в первой команде, а «on» на «off» во второй.

Как самостоятельно подписать драйвер для windows 7

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

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

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

Предположим, что у нас имеется драйвер некого устройства для windows 7 x64, для которого отсутствует цифровая подпись (в нашем примере это будет драйвер для довольно старой видеокарты). Архив с драйверами под нашу версию windows был скачан с сайта производителя и его содержимое распаковано в каталог c:\tools\drv1\. Попробуем установить драйвер, добавив его в хранилище драйверов windows с помощью стандартной утилиты pnputil.

Pnputil –a c:\tools\drv1\xg20gr.inf

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

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

Какие инструменты нам понадобятся

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

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

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

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

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

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

makecert -r -sv C:\WinItProDriverCert\WinitproDrivers.pvk -n CN=”Winitpro” C:\WinItProDriverCert\WinItProDrivers.cer

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

cert2spc C:\WinItProDriverCert\WinItProDrivers.cer C:\WinItProDriverCert\WinItProDrivers.spc

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

Подготовка пакета драйверов

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

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

cd C:\WinDDK\7600.16385.1\bin\selfsign

На основе inf файла сгенерируем для нашей платформы cat файл (содержит информацию о всех файлах пакета драйвера).

inf2cat.exe /driver:”C:\WinItProDriverCert\xg20″ /os:7_X64 /verbose

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

Catalog generation complete.

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

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

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

cd C:\Program Files (x86)\Microsoft SDKs\windows\v7.1\Bin

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

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

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

certmgr.exe -add C:\WinItProDriverCert\WinItProDrivers.cer -s -r localMachine ROOT certmgr.exe -add C:\WinItProDriverCert\WinItProDrivers.cer -s -r localMachine TRUSTEDPUBLISHER

Или из графического мастера добавления сертификатов (сертификат нужно поместить в хранилища Trusted Publishers и Trusted Root Certification Authorities)

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

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

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

Теперь в процессе установки драйвера, окна-предупреждения об отсутствующей цифровой подписи драйвера не появится, система же просто выдаст сообщение о том, уверены ли вы, что хотите установить этот драйвер. Нажав «Install» — вы установите драйвер в системе.

Метод №3

Актуален только для Win 10 выше домашней версии, поскольку нам придется работать с редактором групповых политик.

Открываем консоль выполнения, используя комбинацию клавиш Win + R . Вписываем в поле ввода следующее:

Когда откроется новое окно, слева появиться перечень папок. Следует перейти по пути:

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

Теперь справа отобразится несколько пунктов. Дважды щелкаем мышкой по «Циф-вой подписи драйверов…» для входа в параметры опции.

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

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

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

  • https://pcfaq.info/dannie/ustanovka-drajverov-bez-cifrovoj-podpisi.html
  • https://lumpics.ru/how-to-install-an-unsigned-driver/
  • https://it-tehnik.ru/novice/install-unsigned-driver.html

Отключаем проверку цифровой подписи драйвера в параметрах загрузки Windows 8

Отключать проверку подписи можно из меню параметров загрузки Windows 8. Чтобы попасть в него, нужно в системе нажать комбинацию клавиш Win+I, выбрать пункт Change PC Settings , затем на вкладке General выбрать опцию Restart Now (перезагрузится сейчас). В результате компьютер перезагрузится и автоматически попадет в режим расширенных параметров загрузки.

Тот же самый эффект (попасть в режим настройки параметров загрузки системы) можно, перезагрузив компьютер из командной строки (запускать с правами администратора):

shutdown.exe /r /o /f /t 00

Далее нужно выбрать пункт Troubleshoot.

Troubleshoot win 8

Затем выберите опцию Advanced Startup

Далее выбираем Startup Settings

И, наконец, нажмите кнопку  Restart

Компьютер опять перезагрузится и перед вами появится меню выбора опций загрузки. Нас интересует пункт Disable driver signature enforcement (отключить проверку драйвера), выберите его нажав на клавиатуре клавишу F7 или 7

В результате Windows 8 загрузится в режиме, в котором возможна установка подписанных драйверов. Теперь при установке такого драйвера (через диспетчер устройств или с помощью мастера) в Windows 8  появится окно с предупреждением системы безопасности Windows:

Windows can’t verify the publisher of this driver software

Выберите пунктInstall this driver software anyway, после чего драйвер должен установится. Осталось перезагрузиться в обычном режиме и проверить работоспособность установленного драйвера и устройства.

Процесс самостоятельной подписи драйвера

c http-equiv=”Content-Type” content=”text/html;charset=UTF-8″>lass=”remon-after-2nd-h2″ id=”remon-1717026″>

В процессе для того, чтобы подписать драйвер самостоятельно, нам потребуется: создать сертификат, подписать драйвер этим сертификатом, установить сертификат в системе и установить драйвер. Начнем.

  1. Создайте в корне диска C какую-либо папку (так к ней проще будет обращаться в дальнейшем), например, C:\cert, где мы будем работать с сертификатами и драйверами.
  2. Запустите командную строку от имени администратора (нужны для 18-го шага). Далее используем следующие команды по порядку. Файлы драйвера пока не потребуются. Во время выполнения второй команды вас попросят ввести пароль, я использую password в окне запроса и далее в командах, вы можете использовать свой.
  3. cd "C:\Program Files\Microsoft SDKs\Windows\v7.1\bin"
  4. makecert -r -sv C:\cert\driver.pvk -n CN="remontka" C:\cert\driver.cer
  5. cert2spc C:\cert\driver.cer C:\cert\driver.spc
  6. pvk2pfx -pvk C:\cert\driver.pvk -pi password -spc C:\cert\driver.spc -pfx C:\cert\driver.pfx -po password
  7. До этого этапа всё должно пройти как на скриншоте ниже, командную строку не закрываем.
  8. В папке C:\cert создайте вложенную папку, например, drv и поместите туда свои файлы драйвера. Но: если вам требуется драйвер только для x64, не копируйте .inf файл для x86 систем в эту папку и наоборот. В командной строке используем следующие команды:
  9. cd C:\WinDDK\7600.16385.1\bin\selfsign\
  10. inf2cat.exe /driver:"C:\cert\drv" /os:7_X64 /verbose
  11. В предыдущей команде для драйвера 32-бит укажите X86 вместо X64. Если будет предложено скачать .NET Framework, согласитесь, установите, а затем заново выполните команду. В идеале вы должны будете получить сообщение об успешном создании .cat файла для подписи. Однако, возможны ошибки, о наиболее частых — следующие два пункта. После исправления ошибок повторите команду из пункта 10.
  12. DriverVer set to incorrect date — возникает при дате в файле драйвера до 21 апреля 2009 года. Решение: откройте файл .inf из папки drv в текстовом редакторе (можно в блокноте) и в строке DriverVer установите другую дату (формат: месяц/день/год).
  13. Missing AMD64 CatalogFile entry (для 64-бит) или Missing 32-bit CatalogFile entry. Решение: откройте файл .inf из папки drv в текстовом редакторе и в разделе добавьте строку CatalogFile=catalog.cat
  14. В итоге вы должны получить сообщение: Catalog generation complete с указанием пути к файлу каталога, в моем случае – C:\cert\drv\catalog.cat. Далее используем следующие команды (требуется подключение к Интернету).
  15. cd "C:\Program Files\Microsoft SDKs\Windows\v7.1\bin"
  16. signtool sign /f C:\cert\driver.pfx /p password /t http://timestamp.verisign.com/scripts/timestamp.dll /v C:\cert\drv\catalog.cat
  17. Результат подписи файла драйвера без ошибок на скриншоте ниже. Следующий шаг — добавить самоподписанный сертификат в список доверенных в системе, сделать это можно следующими двумя командами по порядку
  18. certmgr.exe -add C:\cert\driver.cer -s -r localMachine ROOT
    certmgr.exe -add C:\cert\driver.cer -s -r localMachine TRUSTEDPUBLISHER
  19. В результате вы должны получить сообщение «CertMgr Succeeded». Если Failed или certmgr.exe не является внутренней или внешней командой — убедитесь, что командная строка запущена от имени администратора, а вы находитесь в нужной папке (см. 15 шаг).

И вот теперь можно закрыть командную строку и установить драйвер из папки C:\cert\drv с помощью диспетчера устройств, или нажав правой кнопкой по .inf файлу и выбрав пункт «Установить». Потребуется подтвердить установку драйвера в окне «Не удалось проверить издателя этих драйверов» — нажать «Все равно установить этот драйвер».

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

искать причину в этом случае нужно в чем-то ещё и читать подробную инструкцию по использованию драйвера (например, в случае драйверов для FlashTool).

А вдруг и это будет интересно:

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

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

  1. Обновите драйверы с сайта производителя
  2. Отключить подпись драйверов с помощью редактора групповой политики

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  1. Создайте папку “DrvCert” на диске “C”
  2. Вернитесь в консоль и введите
  3. Создайте самоподписанный сертификат командой , — где вместо «Company» можно ввести любое другое название условной компании, для которой издается сертификат. В процессе Вам нужно будет задать пароль. Возьмём для примера “0rPr0RpR”.
  4. Создайте публичный ключ командой
  5. Совместите публичный и приватный ключи в сертификате с форматом .pfx с помощью команды — где в конце тот пароль, который Вы вводили ранее.

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

  1. Введите
  2. Теперь набор файлов драйверов нужно подписать сертификатом, который вы создали ранее, используя службу Globalsign.

Следующая команда подпишет файл CAT цифровой подписью, используя сертификат, хранящийся в файле PFX, защищенный введенным ранее паролем: , где в конце — название .cat файла который появился в папкеЕсли всё прошло успешно то появится сообщение:Successfully signed: C:\DrvCert\xg\HDALC2.cat

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

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

Рейтинг
( Пока оценок нет )
Понравилась статья? Поделитесь с друзьями:
Технарь
Добавить комментарий

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