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

💖 Подобається?Поділися з друзями посиланням

Windows 8.1 блокують інсталяцію драйверів без дійсною цифровий підпис (або змінених після її нанесення). Це робиться з метою безпеки, оскільки встановлення не підписаних драйверів або підроблених (можливо, за допомогою вірусу), може призвести до непередбачуваних наслідків, аж до перевстановлення системи.

Що таке драйвер підписаний?

Підписаний драйвер- це драйвер пристрою, який має цифровий підпис. Цифровий підписє електронною міткою безпеки, яка може вказати видавця програмного забезпечення, а також факт зміни драйвера після його підписання. Якщо драйвер підписано видавцем і достовірність підпису підтверджена центром сертифікації, то можна бути впевненим, що драйвер випущений саме цим видавцем і не змінювався.

Встановлювати драйвера без цифрового підпису чи з ним?

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

Як вимкнути перевірку підпису?

Щоб тимчасово вимкнути перевірку цифрового підпису драйверів, виконуємо наступне:

1. Переміщуємо курсор у нижній правий кут екрана, вибираємо пункт "Параметри"або натискаємо клавіші Win + I. Натискаємо клавішу shift і тримаючи натиснутою, вибираємо .

2. Після перезавантаження у меню вибираємо " Діагностика"

3. У вікні " Діагностика"вибираємо"

4. У вікні "вибираємо"


5. У вікні "тиснемо"


6. Тепер найголовніше. У вікні "" потрібно вибрати потрібну клавішу, у нашому випадку це F7 або цифра 7


Висновок

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

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

Як відомо, в х64 бітних платформах була введена процедура обов'язкового цифрового підпису всього того, що може потрапити в ядро ​​системи, а саме драйверів. Про те, наскільки це ефективно і виправдано можна довго сперечатися, але тільки одне можна сказати точно - гімора розробникам тут додалася, особливо тим, хто раніше ніколи підписами не займався. Також для багатьох стало вкрай не очевидно, яким чином розробляти драйвер, коли немає на руках валідного сертифікату, а тестувати якось треба. Ось щастя я спробую в короткій і доступній формі розповісти про те, як це все робиться.

Отже, перш за все, я хотів би виділити два типи сертифікатів, які я розглядатиму в рамках цієї статті - тестовий і справжній. Різниця полягає в тому, що справжній сертифікат підписаний довіреним CA (Certification Authorities - довірений видавець), типу VeriSign, GlobalSign або самим Microsoft, а тестовий підписаний самопальним сертифікатом типу від Васі Пупкіна.

Тестовий сертифікат
Як ви вже напевно здогадалися, саме за допомогою цього типу сертифіката можна спокійно розробляти драйвер, не маючи на руках сьогодення, але все не так просто, перш ніж його використовувати треба зробити деякі сумні та складні заходи:

Справжній сертифікат
Тут також не все так просто. Справа в тому, що не будь-які 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- адреса таймстампінгового центру, в моєму випадку

Далі драйвер можна встановити програмно за допомогою спеціальних АПІ або за допомогою чудової тулзи 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. Перевіряємо, що все добре підписалося, для цього відкриваємо властивість.
    Також достовірніше можна перевірити за допомогою командного рядка
    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 – якщо підписувати не треба, а лише створити.
  9. Тиснемо Sign - щоб створити cat-файл і підписати, тиснемо Log - щоб почитати що сталося, часто бувають помилки, наприклад неправильно складений inf-файл, або signtool чогось не знайшов і т.п.

Мітки: драйвера, windows, цифровий підпис

73459

Починаючи з Windows 7, з міркувань безпеки розробниками Майкрософт було введено обов'язкову сертифікацію драйверів. Кожен драйвер, випущений стороннім розробником, повинен проходити спеціальну перевірку в лабораторії. компанії Microsoft. У разі успішного проходження перевірки драйвер отримує відповідний підпис, завдяки чому може бути встановлений у систему. Що стосується непідписаних драйверів, встановити їх безпосередньо не можна, і якщо ви спробуєте це зробити, Windows видасть повідомлення про можливе пошкодження або підробку файлу.



Втім, такий захист не є серйозною перешкодою для інсталяції драйверів, що не володіють відповідним цифровим сертифікатом. Так ось, саме сьогодні ми познайомимося з простим способомщо дозволяє вимкнути цю саму перевірку підпису драйверів. О восьмій версії Windowsце робиться в такий спосіб. Насамперед, нам потрібно потрапити до підрозділу параметрів завантаження. Для цього з правами адміністратора відкрийте консоль Windows, а потім введіть та виконайте наступну команду:


При цьому комп'ютер піде на перезавантаження і ви потрапите в меню вибір дії. Тиснемо Діагностика ->;


> ;



Ще раз перезапускаємо комп'ютер натисканням кнопки.


Після того, як система перезапуститься, ви побачите меню з параметрами завантаження. Ось якраз там має бути рядок. За рахунком вона сьома.


Для завантаження Windowsз цим параметром натисніть клавішу 7 або F7. Тепер якщо ви спробуєте запустити інсталяцію лівого драйвера, ОС також виведе повідомлення, але цього разу це буде просте попередження системи безпеки. Просто виберіть і впертий драйвер стане в звичайному режимі, принаймні, так має бути, а вам тільки залишиться ще раз перезавантажитися і перевірити його працездатність.


При цьому, однак, не можна виключати, що встановити несертифікований драйвер у такий спосіб не вийде. У такому разі можна скуштувати ще один метод. У Windows 8 є особливий "тестовий режим роботи". Працюючи в цьому режимі, ви можете встановити практично будь-яке програмне забезпечення, у тому числі не мають сертифіката Microsoft драйвера. Активувати його можна в такий спосіб. Відкрийте командний рядоквід імені адміністратора і одну за одною виконайте ці дві команди (для 64-розрядної системи):

bcdedit.exe /set nointegritychecks ON
bcdedit.exe /set testsigning ON


Кожна виконана команда має супроводжуватись повідомленням «Операцію успішно завершено». Тепер закрийте консоль і перезавантажте комп'ютер. Якщо все зроблено правильно, у нижньому правому кутку на годиннику вас повинен з'явитися напис "Тестовий режим". Тепер можете спробувати інсталювати ще раз непідписаний драйвер. Після встановлення та перевірки драйвера не забудьте вийти з тестового режиму. Для цього необхідно виконати ті ж команди, але лише прапор ON ( увімкнено) замінити на OFF ( вимкнено) .

Технічно робота в запущеній у режимі налагодження операційній системі нічим не відрізняється від роботи в режимі «нормальному»Проте, по-перше, така конфігурація загалом не підтримується компанією Майкрософт, по-друге, це знижує рівень безпеки і збільшує ризик виникнення критичних системних помилок.

Якщо до комп'ютера з операційною системою Windows 10 (x86 або x64) потрібно підключити будь-який пристрій (наприклад, сканер, принтер, камеру), необхідно також встановити відповідне програмне забезпечення для його функціонування – драйвер.

Корпорація Майкрософт тестує драйвери всіх апаратів, що випускаються для роботи з персональними комп'ютерами(ПК). На драйверах, що успішно пройшли всі випробування, компанія ставить свій підпис (цифровий), тобто включає в ПЗ спеціальний файлу вигляді сертифіката. Цей цифровий документ є гарантією справжності драйвера та безпеки ОС, на яку він буде встановлений. Техніка з підписаними драйверами легко синхронізується з системою Віндовс 10.

Однак іноді зустрічаються застарілі пристрої, які перебувають у робочому стані, які потрібно підключити до ПК та змусити працювати. До таких технічних пристроїв неможливо знайти програмне забезпечення з цифровим підписом.

Щоб упоратися з цією проблемою, можна скористатися одним із трьох способів.

Спосіб 1

Спосіб 2

Увага! Цей варіант підходить лише для ПК з базовою програмою Basic Input/Output System (BIOS).

Якщо комп'ютер має інтерфейс Unified Extensible Firmware Interface (UEFI), потрібно спочатку вимкнути опцію Secure Boot.



Щоб повернутися до попередніх налаштувань, в командний рядок введіть bcdedit.exe -set TESTSIGNING OFF і підтвердити (Enter ). Коли виконання заданої операції завершиться, перезавантажте ПК.

Спосіб 3

Увага! Цей варіант не спрацює для Windows 10 Home.



Відео на тему

Уявіть ситуацію, коли ви, щасливий користувач надійний, стабільноюі безпечною» операційної системи Windows 10, радісно приносите додому новенький гаджет, підключаєте його до USB-порту, а замість звичайного повідомлення про те, що новий пристрій готовий до роботи отримуєте ось це INF стороннього виробника не містить інформації про підпис.

Таким нехитрим способом Microsoftнамагається захистити своїх клієнтів від використання некошерних (на думку самої Microsoft) пристроїв. Точніше, драйверів для них. Зазвичай драйвер, як і звичайний офіційний документ містить підпис. Тільки цифрову, що засвідчує, що він пройшов тестування на сумісність із системою та безпечний для комп'ютера користувача. Але нерідкі випадки, коли цього підпису драйвер не має. Часто таке спостерігається у гаджетів китайського походження або у трохи застарілих пристроїв.
Але якщо ви все-таки не прислухалися до застережень Microsoft і твердо вирішили встановити драйвер, звичайно ж, це можна «дуже просто» зробити - всього кілька кроків. Приступимо.

Встановлення непідписаних драйверів у Windows 10

1) Ідемо Пуск > Параметри > Оновлення та безпека, відкриваємо вкладку Відновлення та в розділі Особливі варіанти завантаження натискаємо кнопку « Перезавантажити зараз«.


2) Система попросить нас трохи почекати та видасть наступне меню, де потрібно вибрати Пошук та усунення несправностей.


3) На наступному екрані вибираємо пункт Додаткові параметри.



5) Дочекавшись перезавантаження комп'ютера, в меню вибираємо пункт Параметри завантаження.


6) У наступному розділі нас цікавить пункт № 7, тому уважно прочитавши інструкції, натискаємо клавішу F7.


7) Очікуємо повного завантаження системи і намагаємося знову встановити драйвер пристрою. Система намагається востаннє змусити нас одуматися.


Але ми не піддаємося на провокацію та обираємо пункт « Все одно встановити цей драйвер», вкотре підтверджуючи нашу з вами безвідповідальність. Ура! Зазвичай після цього ми з радістю можемо спостерігати повідомлення, що драйвер успішно встановлений.

Висновок

Дозвіл на встановлення непідписаних драйверів діє до перезавантаження системи. Потім, при встановленні іншого «несертифікованого» обладнання, процедуру доведеться повторити.
В принципі, є можливість вимкнути перевірку цифрового підпису повністю (через виправлення реєстру), але я не раджу цього робити, тому що це не так. безпека від цього страждає, а часто встановлювати непідписані драйвера вам навряд чи доведеться.



Розповісти друзям