Отключить проверку цифровой подписи драйверов windows 7
Сразу следует оговориться, что деактивируя проверку цифровой подписи, вы действуете на свой страх и риск. Дело в том, что неизвестные драйвера могут быть источником уязвимости или прямой опасности, если являются продуктом разработки злоумышленников. Поэтому не рекомендуем снимать защиту при установке объектов, скачанных из интернета, так как это очень рискованно.
В то же время бывают ситуации, когда вы уверены в подлинности драйверов (например, когда они поставляются в комплекте с оборудованием на дисковом носителе), но у них по какой-то причине отсутствует цифровая подпись. Вот для таких случаев и стоит применять описанные ниже способы.
Способ 1: Переход в режим загрузки с деактивацией обязательной верификации подписей
Чтобы деактивировать верификацию подписи драйверов при их инсталляции на Виндовс 7, можно произвести загрузку ОС в особом режиме.
-
Перезагрузите или включите компьютер в зависимости от того, в каком состоянии он в данный момент находится. Как только прозвучит звуковой сигнал при запуске, зажмите клавишу F8. В некоторых случаях это может быть иная кнопка или сочетание, в зависимости от версии BIOS, установленного на вашем ПК. Но в подавляющем большинстве случаев нужно применять именно вышеуказанный вариант.
Недостаток данного метода заключается в том, что как только вы запустите в следующий раз компьютер в обычном режиме, все установленные драйвера без цифровых подписей тут же слетят. Этот вариант подходит лишь для одноразового подключения, ели вы не планируете использовать устройство регулярно.
Способ 2: «Командная строка»
Отключить верификацию цифровой подписи можно при помощи введения команд в «Командную строку» операционной системы.
-
Жмите «Пуск». Переходите во «Все программы».
bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS
bcdedit.exe -set TESTSIGNING ON
bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON
Существует ещё один вариант действий через «Командную строку». В отличие от предыдущего, он требует всего лишь введения одной команды.
bcdedit.exe /set nointegritychecks ON
Способ 3: «Редактор групповой политики»
Другой вариант деактивации верификации подписи осуществляется методом манипуляций в «Редакторе групповой политики». Правда, он доступен только в редакциях «Корпоративная», «Профессиональная» и «Максимальная», а вот для редакций «Домашняя базовая», «Начальная» и «Домашняя расширенная» этот алгоритм выполнения поставленной задачи не подойдет, так как в них отсутствует необходимая функциональность.
-
Для активации нужного нам инструмента воспользуемся оболочкой «Выполнить». Нажмите Win+R. В поле отобразившейся формы введите:
Способ 4: «Редактор реестра»
Следующий способ решения поставленного задания выполняется через «Редактор реестра».
В Виндовс 7 существует несколько методов деактивации проверки подписи драйверов. К сожалению, только вариант с включением компьютера в особом режиме запуска гарантировано обеспечит нужный результат. Хотя и он имеет некоторые ограничения, выражающиеся в том, что после запуска ПК в обычном режиме все инсталлированные драйвера без подписи слетят. Остальные методы могут работать не на всех компьютерах. Их работоспособность зависит от редакции ОС и установленных обновлений. Поэтому, возможно, придется перепробовать несколько вариантов, прежде чем вы получите ожидаемый результат.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Иногда при установке абсолютно любого драйвера могут возникнуть проблемы. Одной из них является проблема с проверкой цифровой подписи драйвера. Дело в том, что по умолчанию можно инсталлировать только то ПО, которое имеет подпись. Причем эта подпись должна быть в обязательном порядке проверена компанией Microsoft и иметь соответствующий сертификат. Если такая подпись отсутствует, система просто напросто не позволит инсталлировать такое ПО. В данной статье мы расскажем вам о том, как обойти такое ограничение.
Как установить драйвер без цифровой подписи
В некоторых случаях даже самый проверенный драйвер может оказаться без соответствующей подписи. Но это не значит, что ПО вредоносное или плохое. Чаще всего от проблем с цифровой подписью страдают владельцы Windows 7. В последующих версиях ОС этот вопрос возникает гораздо реже. Выявить проблему с подписью можно по следующим симптомам:
Способ 1: Временное отключение проверки
Для вашего удобства мы разделим этот способ на две части. В первом случаем мы расскажем о том, как применить данный способ, если у вас установлена Windows 7 или ниже. Второй вариант подойдет лишь обладателям Windows 8, 8.1 и 10.
Если у вас Windows 7 или ниже
Если у вас Windows 8, 8.1 или 10
Независимо от того, какая у вас операционная система, этот способ имеет недостатки. После очередной перезагрузки системы, проверка подписей снова запустится. В некоторых случаях это может привести к блокировке работы драйверов, которые были инсталлированы без соответствующих подписей. Если такое произошло, вам следует отключить проверку насовсем. В этом вам помогут дальнейшие способы.
Способ 2: Редактор групповой политики
Этот способ позволит вам отключить проверку подписей навсегда (или до того момента, как вы сами ее активируете). После этого вы сможете спокойно инсталлировать и пользоваться софтом, который не имеет соответствующего сертификата. В любом случае, этот процесс можно обратить и включить проверку подписи обратно. Так что бояться вам нечего. Кроме того, этот способ подойдет владельцам любой ОС.
Способ 3: Командная строка
Этот способ весьма прост в использовании, но имеет свои недостатки, о которых мы расскажем в конце.
bcdedit.exe -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit.exe -set TESTSIGNING ON
Обратим ваше внимание, что этот способ иногда приходится проделывать в безопасном режиме. Как запустить систему в безопасном режиме, вы можете узнать на примере нашего специального урока.
Воспользовавшись одним из предложенных способов, вы избавитесь от проблемы инсталляции сторонних драйверов. Если у вас возникли трудности с выполнением каких-либо действий, пишите об этом в комментариях к статье. Будем совместно решать возникшие трудности.
Отблагодарите автора, поделитесь статьей в социальных сетях.
Требование обязательного наличия цифровой подписи драйвера в Windows 8 (Device Driver Signing) –это требование системы безопасности Windows, которая разрешает установку только драйверов, имеющих цифровую подпись производителя. Система сертификации и подписывания драйверов нужна Microsft для того, чтобы максимально обезопасить систему от установки некорректного или опасного ПО, способного дестабилизировать систему.
При попытке установки в Windows 8 драйвера, не имеющего цифровой подписи появляется окно с предупреждением:
“Windows encountered a problem installing the driver software for your device. Windows found driver software for your device but encoutered an error while attempting to install it. The hash for the file is not present in the specified catalog file. The file is likely corrupt or the victim of tampering.”
(Хэш этого файла отсутствует в заданном файле каталога. Возможно файл поврежден или подделан)
В этой статье мы предлагаем познакомиться с процедурой установки неподписанного драйвера устройства в Windows 8 путем отключения проверки цифровой подписи драйвера системой. Немаловажно отметить тот факт, что неподписанные версии драйверов Вы устанавливаете на свой страх и риск, и четко понимаете, что своими действиями вы рискуете стабильностью и безопасность своей ОС .
Напомним, что требование обязательного подписывания драйверов, выполняемых в режиме ядра, появилось впервые в 64 битной Windows Vista. Однако, если в Windows 7 (ранее мы уже описывали как в Windows 7 можно отключить проверку цифровой подписи драйвера) и Vista, система еще предлагала возможность установки неподписанного драйвера (что не всегда получалось), то в Windows 8, установка драйвера без цифровой подписи просто завершается с соответствующим предупреждением.
Отключаем проверку цифровой подписи драйвера в параметрах загрузки Windows 8
Отключать проверку подписи можно из меню параметров загрузки Windows 8. Чтобы попасть в него, нужно в системе нажать комбинацию клавиш Win+I, выбрать пункт Change PC Settings , затем на вкладке General выбрать опцию Restart Now (перезагрузится сейчас). В результате компьютер перезагрузится и автоматически попадет в режим расширенных параметров загрузки.
Тот же самый эффект (попасть в режим настройки параметров загрузки системы) можно, перезагрузив компьютер из командной строки (запускать с правами администратора):
Далее нужно выбрать пункт 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, после чего драйвер должен установится. Осталось перезагрузиться в обычном режиме и проверить работоспособность установленного драйвера и устройства.
Установка неподписанного драйвера в Тестовом режиме Windows 8
В том случае если вышеприведенная методика у вас не сработала, существует еще один способ установки неподписанных драйверов. В Windows 8 и Windows Server 2012 существует так называемый «тестовый режим работы» (Test Mode), в котором возможна установка любых (в т.ч. и неподписанных драйверов).
Чем грозит работа системы в «тестовом режиме»? Технически вы работаете с той же самой полноценной ОС, но есть несколько нюансов. Во-первых, формально такая конфигурация не поддерживается вендором (Microsoft). Во-вторых, переведя систему в отладочный режим работы, вы существенно снижаете ее безопасность и стабильность работы ОС, так что риск появления различных ошибок, BSOD-ов и заражения ее существенно увеличивается.
Итак, на 64 битной ОС нужно запустить командную строку с правами администратора и последовательно выполнить команды:
Первую команду можно заменить на
Затем перезагрузите систему и попробуйте установить неподписанный драйвер.
Факт работы Windows 8 в тестовом (отладочном) режиме проявляется в наличии в правом нижнем углу рабочего стола надписи: Тестовый режим (Test Mode), версии ОС и номера сборки Windows.
Чтобы отключить Test Mode, необходимо с правами админа выполнить команды:
Вместо первой команды можно использовать:
Итак, мы рассмотрели способы отключения проверки цифровой подписи в 64-битной версии Windows 8.
Стоит отметить, что подобная проблема наиболее часто возникает у владельцев всевозможных старых устройств (драйвера на которые также существенно устарели). Этим «счастливчикам» нужно быть готовым к тому, что старые драйвера без цифровой подписи производителя, установленные по данной статье в обход системы безопасности Windows, не всегда будут работать корректно. Поэтому в первую очередь рекомендуется проверить наличие свежей подписанной версии драйвера для Windows 8 (Windows 7) на сайте производителя.
Все 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.
Создаем самоподписанный сертификат и закрытый ключ
Создадим в корне диска каталог C:\DriverCert.
Откроем командную строку и перейдем в следующий каталог:
cd C:\Program Files (x86)\Microsoft SDKs\Windows\v7.1\bin
Создадим самоподписанный сертификат и закрытый ключ, выданный, допустим, для компании Winitpro:
makecert -r -sv C:\DriverCert\myDrivers.pvk -n CN="Winitpro" C:\DriverCert\MyDrivers.cer
Во время создания утилита попросит указать пароль для ключа, пусть это будет P@ss0wrd.
На основе созданного сертификата создадим публичный ключ для сертификата издателя ПО (PKCS).
cert2spc C:\DriverCert\myDrivers.cer C:\DriverCert\myDrivers.spc
Объединим публичный ключ (.spc) и персональный ключ (.pvk) в одном файле сертификата формата Personal Information Exchange (.pfx).
pvk2pfx -pvk C:\DriverCert\myDrivers.pvk -pi P@ss0wrd -spc C:\DriverCert\myDrivers.spc -pfx C:\DriverCert\myDrivers.pfx -po P@ss0wrd
$cert = New-SelfSignedCertificate -Subject "Winitpro” -Type CodeSigningCert -CertStoreLocation cert:\LocalMachine\My
Затем нужно экспортировать данный сертфикат в pfx файл с паролем:
$CertPassword = ConvertTo-SecureString -String “P@ss0wrd” -Force –AsPlainText
Export-PfxCertificate -Cert $cert -FilePath C:\DriverCert\myDrivers.pfx -Password $CertPassword
Генерируем CAT файл драйвера
Создадим каталог C:\DriverCert\xg и скопируем в него все файлы из каталога, в который первоначально был распакован архив с драйвером (c:\tools\drv1\). Убедить что среди файлов имеются файлы с расширением .sys и .inf (в нашем случае xg20grp.sys и xg20gr).
Перейдем в каталог:
На основе inf файла с помощью утилиты inf2cat.exe (входит в состав Windows Driver Kit -WDK) сгенерируем для нашей платформы cat файл (содержит информацию о всех файлах пакета драйвера).
inf2cat.exe /driver:"C:\DriverCert\xg" /os:7_X64 /verbose
Signability test complete .
и
Catalog generation complete .
Signability test failed.
22.9.7: DriverVer set to incorrect date (must be postdated to 4/21/2009 for newest OS) in \hdx861a.inf
Для исправления ошибки нужно в секции [Version] найти строку с DriverVer= и заменить ее на:
После выполнения команды в каталоге драйвера должен обновиться файл 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
SignTool verify /v /pa c:\DriverCert\xg\xg20gr.cat
Лидо в свойствах файла на вкладке Digital Signatures.
CAT файл содержит цифровые подписи (отпечатки / thumbprints) всех файлов, которые находятся в каталоге драйвера (файлов, которые указаны в INF файле в секции CopyFiles). Если любой из этих файлов был изменен, то контрольная сумма файлов не будет совпадать с данными в CAT файле, в результате установка такого драйвера закончится ошибкой.
Установка сертификата
Т.к. созданный нами сертификат является самоподписанным, система по-умолчанию ему не доверяет. Добавим наш сертификат в локальное хранилище сертификатов. Сделать это можно с помощью команд:
certmgr.exe -add C:\DriverCert\myDrivers.cer -s -r localMachine ROOT
certmgr.exe -add C:\DriverCert\myDrivers.cer -s -r localMachine TRUSTEDPUBLISHER
Или из графического мастера добавления сертификатов (сертификат нужно поместить в хранилища Trusted Publishers и Trusted Root Certification Authorities локальной машины). В домене вы можете централизованно распространить этот сертификат на рабочие станции с помощью групповой политики.
Установка драйвера, заверенного самоподписанным сертификатом
Попробуем еще раз установить подписанный нами драйвер, выполнив команду:
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», вы установите драйвер в системе.
Если установка драйвера прошла успешно, в файле setupapi.dev.log будут примерно такие строки:
Как вы видите, для установки самоподписанного драйвера нам даже не пришлось отключать проверку цифровой подписи драйверов с помощью bcdedit.exe, как описано здесь (команды bcdedit.exe /set loadoptions DISABLE_INTEGRITY_CHECKS и bcdedit.exe /set testsigning ON ).
Предыдущая статья Следующая статьяИнструкция отличнейшая. наконец то можно будет нормально обходится без виртуальной машины 32 битной , спасибо.
Попробовал. Получилось отлично. У драйвера показывает цифровую подпись. Установилось через devcon без всяких всплывающих окошек.
Через pnputil тоже нормально.
Спасибо за мануал. Успешно подписал TAP драйвер к OpenVPN. Ставится без проблем
Это боты-накрутчики успешно установили? Только что сделал всё по инструкции с точностью до символа: ошибка 52. Либо у людей винда 32-битная, либо TESTSIGNING включен. Либо боты-накрутчики.
кто встретился с проблемой установки SDK, удалите MS Visual C ++ 2010 года, как и 32 так и 64 битную версии
Руслан, расскажите, как получилось (если ещё в памяти свежо). У меня драйвер отлично установился по этим рекомендациям, но с AVR910 ошибка 43 (недопустимый дескриптор usb конфигурации. Windows10.
Здравствуйте.
Сделал всё по инструкции, в свойствах драйвера числится, что он подписан. Сертификаты установил в указанное инструкцией место.
Но при попытке установить драйвер, система отображает предупреждение о том, что не может проверить цифровую подпись данного драйвера. В итоге ошибка 52.
Ребята никто не поможет подписать драйвер для телефона FLY IQ436? Самому повторить вышеописанную процедуру слишком сложно! Помогите пожайлуста в СКАЙПЕ Я PatronDragon.
Дохожу до пункта На основе inf файла сгенерируем для нашей платформы cat файл (содержит информацию о всех файлах пакета драйвера). и не знаю какой файл у себя выбрать!? Какой не беру всё равно пишет does not exist! ЧТО ДЕЛАТЬ?
У меня в папке с моим драйвером нет файла inf! Что делать?
Без inf файла у вас ничего не получится, т.к. в именно в нем описывается порядок установки и структура исполняемых файлов драйвера. Посмотрите, возможно он у вас в каком-нибудь архиве лежит (rar, zip, cab)
Хм, зачем тогда авторы пишут такие статьи?
С помощью такой подписи от GoDaddy получится сделать .cat из .inf и .sys ?
Ты не мог бы мне помочь подписать драйвер ?
у тебя ещё год не прошёл вроде
очень нужно
Я написал свой WDF драйвер и подписал его с помощью этого мануала, за что огромное спасибо написавшему! Написал инсталлятор на wix и дрова прекрасно ставятся на x64 Винду 10.0 без включения тестмода и проверки подписей, даже предупреждение не отображается. С другой стороны 8000 это не деньги, конечно, для фирмы средней руки
Всё, похоже GoDaddy прикрыли лавочку продажи сертификатов подписи кода и драйверов. Вот что на сайте у них:
С 1 июня 2021 года GoDaddy больше не будет выдавать и продлевать сертификаты подписи кода и драйверов. Если у вас уже есть сертификат подписи кода или драйвера, вы не сможете повторно создать его ключ после 1 июня 2021 года. Все сертификаты, выданные до 1 июня 2021 года, будут действительны до истечения их срока действия
С помощью такой подписи от GoDaddy получится сделать .cat из .inf и .sys ?
В результате подписывания исходные .inf и .sys как-то модифицируются или никак не затрагиваются?
Их исходники не нужны для подписывания драйвера?
Если я куплю такого типа сертификат, то получится ли с его помощью заменить подпись в некоем драйвере на свою?
Например, есть подписанный драйвер ( состоит из .inf, .sys , .cat файлов ).
Получится ли убрать от него .cat и создать новый .cat ( командами inf2cat.exe и signtool.exe ), подписанный таким сертификатом?
Такой драйвер будет нормально работать?
Другими словами , работает ли такое, что можно убрать одну цифровую подпись и вместо неё поставить другую?
Сергей, Вы получили сертификат с алгоритмом хеширования подписи SHA1, SHA2 или с SHA256?
Надо ли на винду ставить какие-то апдейты или пэтчи, чтобы подписанные драйверы не выдавали ошибку 52?
SHA1 и SHA2. Подписал с использованием SHA2, чтобы и Win10 охватить. По идее, Win7 должна понимать SHA2 только после патча, в реальности же на Win7 x64 драйвер встаёт (что без подписи невозможно), но Винда говорит, что подписи нет 🙂
Сергей, я могу обратить к Вам за помощью. Вы бы не смогли подписать всего один драйвер. Я бы Вам мог их скинуть на почту. Если сможете помочь прошу отзовитесь. Был бы Вам очень признателен!
А на 32 битной Windows 7 можно как-то подписать драйвер?
Сам отвечу, можно, на процессе создание cat файла нужно записать не x64, a x86. Спасибо, инструкция рабочая
Я так и сделал, правда сначала получил какую-то ошибку, исправил, и второй раз все получилось.
Спасибо за отзыв! Поправил путь
Сделал все как описано. Подписал драйвер старого оборудования для сетевой карты. Все работает на сервер 2012 r2 без тестового режима.
Отличная статья, получилось сделать на Windows server 2012.
Проблемы возникли такие:
22.9.4: Missing 32-bit CatalogFile entry (CatalogFile.ntx86, CatalogFile.nt, CatalogFile) from [Version] section in \skeyusb.inf
но все решил добавлением в файл inf строчки CatalogFile(или разкоментированием).
даже установка сертификата на сервер не нужна была. Спасибо огромное. Как вы это придумываете))
Решил разобраться в технологии сертификации. Второй день читаю горы материала в интернете и нигде нет простого и четкого объяснения, как Windows работает с цифровыми подписями и сертификатами. Что с чем сравнивается и когда? Везде куски специальной информации или бесконечные переписывания одних и тех же вещей. Ощущение, что никто до конца не понимает этой темы.
потому что это секрет Майков
Done Adding Additional Store
SignTool Error: The specified timestamp server either could not be reached or
returned an invalid response.
SignTool Error: An error occurred while attempting to sign: C:\DriverCert\xg\gn246hl.cat
может кто встречался с такой проблемой?
пишет что сервер временной метки дает неправильный ответ
Читайте также: