Od Windows Vista 64-bit (2007) Microsoft wymaga, by sterowniki kernel-mode były podpisane cyfrowo. To podstawa bezpieczeństwa: niepodpisany kod nie może działać w jądrze. Ale jest kilka poziomów podpisu, każdy o innym znaczeniu.
Typy podpisów
Podpis WHQL (Windows Hardware Quality Labs)
Najwyższy standard. Microsoft testuje sterownik na zgodność i stabilność. Podpisany cyfrowo przez Microsoft. Cechy:
- Sterownik wysłany przez producenta do Microsoftu z opłatą za testowanie
- Microsoft testuje na ~50 konfiguracjach
- Po pomyślnym teście, certyfikat WHQL na sterowniku
- Logo "Designed for Windows" / "Compatible with Windows"
Podpis EV (Extended Validation)
Producent ma certyfikat EV od zewnętrznego CA (Certificate Authority). Wymagana od Windows 10 1607 dla nowych sterowników. Cechy:
- Producent musi przejść weryfikację organizacji (jak EV SSL)
- Sterownik podpisany przez producenta, nie Microsoft
- Mniej kosztowne niż WHQL
- Wystarczy dla większości third-party drivers
Podpis Standard
Producent z normalnym certyfikatem code signing. Działa na Windows 7/8.1, ale na Windows 10/11 wymaga starszych zasad ("downlevel" sterownik wymaga timestamp przed lipca 2015).
Niepodpisany
Brak podpisu. Windows 64-bit nie załaduje takiego sterownika domyślnie. Wyjątki: tryb testowy.
AVG Driver Updater dostarcza tylko podpisane sterowniki — z bazy 100M+ z WHQL i EV.
HVCI — wymóg jeszcze ostrzejszy
Hypervisor-protected Code Integrity (HVCI) to dodatkowa warstwa zabezpieczeń. Wymaga, by sterownik:
- Był podpisany WHQL lub EV
- Spełniał Microsoft "Memory Integrity" requirements (brak RWX pages, brak self-modifying code)
- Nie używał przestarzałych Win32 API
Włączone domyślnie w Windows 11 z TPM. Niektóre stare sterowniki przestają działać po włączeniu HVCI.
Tryb testowy (Test Mode)
Pozwala załadować niepodpisane sterowniki. Używany przez deweloperów. Włączenie:
bcdedit /set testsigning on
Po restarcie ekran pokazuje "Test Mode" w prawym dolnym rogu. Wyłączenie:
bcdedit /set testsigning off
Uwaga: tryb testowy obniża bezpieczeństwo. Nie używaj na maszynie produkcyjnej. Niektóre programy DRM (gry online, streaming) nie działają w trybie testowym.
Kiedy może być potrzebne obejście podpisu
- Bardzo stary sprzęt — producent wycofał wsparcie, brak nowszych podpisanych sterowników
- Niche / specialty hardware — naukowy, militarystyczny, badania — producent nie testuje na Windows
- Hobbystyczne projekty — open source, modyfikacje, własne sterowniki USB
- Reverse engineering — debugowanie, analiza
Alternatywy do trybu testowego
- Disable Driver Signature Enforcement — F8 podczas bootowania → "Disable Driver Signature Enforcement". Tylko ten boot, nie permanentnie.
- Self-signed certyfikat dla testów własnych: makecert + signtool
- Driver attestation signing — Microsoft Partner Center submit dla legalnego, lekkiego podpisu
Często zadawane pytania
WHQL: lepsze (testowane przez Microsoft). EV: szybsze i tańsze dla producenta. Dla użytkownika oba są zaufane.
Tak, znacząco. Każdy malware z prawami administratora może załadować niepodpisany kod do jądra. Używaj tylko gdy faktycznie potrzebujesz, nie permanentnie.
Wyłącz HVCI: Zabezpieczenia Windows → Zabezpieczenia urządzenia → Izolacja rdzenia → Integralność pamięci → Wył. Strata w bezpieczeństwie, ale stary sprzęt znów działa.
Po pobraniu, sprawdź Właściwości pliku → Podpisy cyfrowe. WHQL = "Microsoft Windows Hardware Compatibility Publisher". Inne = EV od producenta.