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



Подписывание драйвера (для 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 : https://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. Перезагружаем компьютер.

Источник

oscill.ru

Все о подписи драйверов 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 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 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 чего-то не нашел и т.п.

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

https://msdn.microsoft.com/en-us/library/ff544865(VS.85).aspx

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

habrahabr.ru

Что такое цифровая подпись драйвера windows и как ее отключить?

Доброго времени суток, уважаемые читатели с вами Тришкин Денис!

Пользователи windows, которые работали на версиях XP и ранее, прекрасно знают, что в этих операционных системах часто возникают проблемы с установкой нового оборудования. В новых же разработках также встречаются неприятные моменты, но в них чаще всего виновата цифровая подпись драйвера. Дело в том, что, начиная с этой версии, корпорация Microsoft ужесточила требования к программному обеспечению, позволяющему подсоединять новое оборудование. Перед установкой ОС проверяет наличие необходимой метки. В случае если она не обнаруживается – устройство работать не будет. Но есть способы, позволяющие это обойти.

Что это такое?( к содержанию ↑ )

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

Можно ли устанавливать драйвер без подписи?( к содержанию ↑ )

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

Что делать во время установки?( к содержанию ↑ )

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

  1. 1Драйвер без цифровой подписи.

  2. 2Система не может проверить издателя.

  3. 3windows нужен продукт с электронной подписью.

    увеличить

Проблема состоит в том, что в Интернете нет достоверных источников, которые могут подтвердить надежность пользователя, опубликовавшего программу. Фактически любой может открыть содержимое пакета и изменить его. Первая версия действительно могла прийти от компании-производителя. Но если метки нет – кто-то вероятней всего ее поменял. Устанавливать подобные программы рекомендую только в случае, когда вы ее получили с лицензионного диска.

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

Важно! Политика проверки электронных меток в windows 7 работает во всех версиях: x86 и x64. Основной причиной введения этого правила – повышение безопасности и стабильности работы системы.

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

При этом способов отключения проверки электронной метки существует несколько:

  1. 1При помощи программы Driver Signature Enforcement Overrider отключить в win-файле, сделав метку самостоятельно.

  2. 2Через групповую политику.

  3. 3Поменять загрузку системы на версию без цифровых подписей – при помощи bcdedit.

  4. 4Загрузить windows без обязательной проверки меток – с помощью F8.

Загрузка без проверки( к содержанию ↑ )

Этот метод позволяет временно отключить нужную нам функцию. Для этого необходимо во время загрузки нажать кнопку F8. После появится черный экран с вариантами загрузки ОС. Нужно выбрать «отключение обязательной проверки подписи драйвера».

Затем запускаем windows и устанавливаем нужное ПО. Тут же можно протестировать его работу.

Если загрузить систему в рабочем режиме – новое устройство работать не будет.

Отключение через групповую политику( к содержанию ↑ )

Чтобы проверка электронных меток вообще не осуществлялась, ее можно отключить через групповую политику. Для этого необходимо открыть программу «Выполнить», а затем набрать gpedit.msc.

В появившемся окне нужно перейти:

  1. 1«Пользователь», а после этого переходим в подкатолог «Административные шаблоны».

  2. 2Далее выбираем «Система» и «Установка драйверов».

  3. 3В правой панели находим пункт «Цифровая подпись драйверов» и два раза нажать на него.

  4. 4В открывшемся окне выбираем «Enabled» и внизу «Ignore». Подтверждаем и перезагружаемся.

Теперь можно устанавливать любые драйвера.

Отключение через bcdedit( к содержанию ↑ )

Для написания кода открываем командную строку от имени администратора. В окне набираем следующее:

bcdedit.exe /set loadoptions DDISABLE_INTEGRITY_CHECKS

bcdedit.exe /set TESTSIGNING ON

Нажимаем Enter.

Успешное завершение подтвердится соответствующей командой. Перезагружайте компьютер и проверяйте.

Чтобы обратно включить эту функцию, после тега «TESTSIGNING» пишем «OFF».

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

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

windwix.ru

Как отключить проверку цифровой подписи драйверов. Делал в win7 x64

Взялся переустановить Виндовс 7 х64 на буке Asus G72GX. Дрова скачал с офсайта. Там все было под Win 7x64. Так что проблем возникнуть не должно было. Все дрова поставились “с пол-тычка” кроме драйвера на кардридер. Он выдал вот такое сообщение.

 

Начал я гуглить. Среди прочих нашел и такое решение:

Отключаем проверку цифровой подписи драйверов: Выполнить gpedit.msc = Конфигурация_пользователя = Административные_шаблоны = Система = Установка_драйвера= Цифровая_подпись_драйверов_устройств = Поставить в Отключено.

Это мне показалось самым простым выходом из сложившейся ситуации. И я так и сделал. Перезагрузился, зашел в диспетчер устройств, но проблема, походу, не решилась. Те же раскрытые IDE ATA/ATAPI контроллеры и неподписанные дрова на кардридер :(

Стал я смотреть дальше. Была еще ссылочка на такую программку - ReadyDriver Plus. Но она при установке вроде как вносит изменения в загрузчик. А это может негативно повлиять на активацию винды. Поэтому я отказался от использования этой программы. Не хотелось потом лишний раз винду переустанавливать.

И вот решение, которым я воспользовался и оно мне помогло. Нашел его я здесь: https://proffy.info/win7/win7.htm#16 хотя в разных вариациях оно предлагалось на многих сайтах.

Вот чесговоря, я не понял смысл следующих двух команд, вроде как сама прога Driver Signature Enforcement Overrider тоже включает тестовый режим. Но, на всякий случай сделал как написано.

1. Откройте коммандную строку (cmd) с правами администратора, выполните следующие команды:bcdedit.exe -set loadoptions DDISABLE_INTEGRITY_CHECKS bcdedit.exe -set TESTSIGNING ON

2. Чтобы изменения вступили в силу, перезапустите компьютер.

После этой перезагрузки, либо после того как мы перезагрузились включив "Enable Test Mode" в программе Driver Signature Enforcement Overrider (читай ниже) в нижнем правом углу экрана скорее всего появится такое предупреждение. Мы его уберем потом.

Отсюда. Водяной знак тестового режима может появляться, если на компьютере запущен режим тестовой подписи. Такой режим может возникать, если запущено приложение, которое остается в стадии тестирования, и драйверы которого не имеют цифровой подписи Майкрософт. Корпорация Майкрософт добавила тестовый режим в windows, чтобы пользователи могли тестировать программы без сертификата проверки подлинности…

Подписываем драйвера:

1. Скачиваем программу: Driver Signature Enforcement Overrider (далее DSEO)2. Отключаем Контроль учетных записей пользователей (UAC). – ну это я сразу отключаю как только винду ставлю3. Запускаем программу.

4. Включаем тестовый режим, установив переключатель в положение "Enable Test Mode". И перезагружаем компьютер!!! Кстати, здесь же предусмотренно обратное действие "Disable Test Mode", отключающее тестовый режим. – вот здесь я имел ввиду. Не двойная ли работа? И если потом отключить Test Mode, драйвера снова будут раскрыты и с желтым треугольничком! Типа не удается проверить цифровую подпись и всё такое.

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

6. Добавляем подписи для непроверенных системных файлов. Для этого выберите "Sign a System File" и введите имя файла, включая полный путь. Полный путь – в окошке №3 в списке “Файлы драйверов”. Не очень удачный пример, он пугает, т.к. файлов драйверов много. А выписать придется каждый из них вручную!!!! Т.к. из этого окошка путь к файлу нельзя скопировать :( Разве что кто-то будет заморачиваться со скриншот-ридерами какими-нибудь. Но в моем случае на каждое устройство было по одному, максимум, 2 файла. Добавлять подпись нужно для каждого файла! Добавили, прога рапортовала об успехе и делаем Sign следующего файла.

 

Вписывать придется ручками в это поле:

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

Заходим в Диспетчер устройств, убеждаемся в том что все стало на свои места. Кстати, мне один драйвер пришлось дважды подписать. И перезагрузиться потом, соответственно, лишний раз. Не знаю, может я опечатался? Тестовый режим нам отключать нельзя. При его отключении мы вернемся к тому с чего начинали. Нам нужно только убрать надпись про Тестовый режим.

И чтобы убрать её, запускаем снова программку DSEO и выбираем в ней пункт Remove Watermarks, жмем Next.

Откроется страничка в браузере, которая предложит скачать нам универсальный патч Remove Watermark, V0.8 для удаления всех надписей в нижнем правом углу экрана, включая и надпись о том что у нас не лицензионная винда (ну мало ли, может кому надо?). Я его скачал. Правда, не с офсайта, а с RGHOST. Запустил от имени Администратора. Подтвердил свои намерения, программа сделала все свои дела. Я потом перезагрузился и надпись исчезла. Т.е. я так понимаю, что я до сих пор работаю в Тестовом режиме, но это ничего страшного не даёт. А чтобы клиент этой надписи не пугался,  я использовал Remove Watermark, V0.8. Зато я знаю что в буке все устройства работаю. Только что проверил кардридер карточкой памяти. Все в порядке.

calutiya.blogspot.ru


Смотрите также