- Digitalni potpis kontrolora u Windows garantuje integritet, pouzdano porijeklo i štiti od vozači zlonamjeran.
- Zahtjevi za potpisivanje variraju ovisno o verziji Windowsa, korištenju Secure Boota i vrsti upravljačkog programa (jezgro, korisnik, ELAM, zaštićeni multimedijski program).
- Alati kao što su SignTool, HLK/HCK, MakeCab i atestno potpisivanje omogućavaju vam profesionalno kreiranje, potpisivanje i validaciju upravljačkih programa.
- Onemogućavanje potpisivanja drajvera povećava rizik od rootkitova i treba to raditi samo na kontroliran način, uvijek dajući prioritet pouzdanim drajverima i instalacijskim programima.

U Windowsu, drajveri i njihovi digitalni potpisi postali su ključna komponenta sigurnosti sistema. Osim što omogućavaju funkcionisanje štampača, grafičke kartice ili pametne kartice, danas je važno da sistem može provjeriti da li je softver originalan, legitiman i da li dolazi od pouzdanog dobavljača.
Ako ste ikada naišli na poruke poput "Windows ne može provjeriti izdavača ovog upravljačkog programa" ili greške povezane s certifikatom prilikom instaliranja upravljačkog programa, znate koliko to može biti frustrirajuće. U ovom članku ćemo smireno objasniti kako funkcionira potpisivanje upravljačkih programa u Windowsu (i u kernel i u korisničkom načinu rada), koji se zahtjevi mijenjaju ovisno o verziji Windowsa, kako potpisati vlastite upravljačke programe i koje opcije imate za sigurno onemogućavanje provjere potpisa kada nemate drugog izbora.
Šta je potpisivanje drajvera u Windowsu i zašto je toliko važno?
Potpisivanje drajvera je jednostavno proces povezivanja digitalnog potpisa (na osnovu certifikata) sa paketom drajvera. Ovaj potpis se obično primjenjuje na datoteku kataloga paketa (.CAT) ili direktno na binarne datoteke drajvera (.SYS, .DLL, itd.) korištenjem ugrađenih tehnika potpisivanja.
Tokom instalacije uređaja, Windows koristi ove digitalne potpise za dvije ključne svrhe : provjeru da paket nije mijenjan od potpisivanja (integritet) i potvrdu identiteta dobavljača softvera (izdavača upravljačkog programa). Ako nešto ne odgovara, pojavljuje se upozorenje ili, u strožijim scenarijima, instalacija ili učitavanje upravljačkog programa se blokira.
U 64-bitnim verzijama Windows Viste i novijim verzijama, Microsoft je uveo prilično jasnu politiku: svi drajveri u kernel modu moraju biti potpisani da bi se mogli učitati, uz vrlo malo izuzetaka. Ovo stavlja drajvere u istu sigurnosnu kategoriju kao i ostale sistemske binarne datoteke, jer ranjivost na nivou kernela može potpuno ugroziti računar.
Pravila su vremenom postala stroža . Počevši od Windows 10 verzije 1507, svi drajveri potpisani putem Microsoftovog centra za razvoj hardvera moraju koristiti SHA-2. Stariji SHA-1 heš je zastario iz kriptografskih sigurnosnih razloga, a Microsoft ga postepeno ukida u cijelom ekosistemu.
Postoji važan detalj: binarne datoteke drajvera u kernel modu potpisane dvostrukim certifikatima (SHA-1 + SHA-2) koje izdaju entiteti koji nisu Microsoftovi mogu imati problema na sistemima starijim od Windowsa 10 ili čak uzrokovati pad sistema na Windowsu 10 i novijim verzijama. Da bi to spriječio, Microsoft je objavio ažuriranje KB3081436, koje uključuje ispravne heševe datoteka i ispravlja ponašanje pri učitavanju u tim slučajevima.
Pregled potpisivanja drajvera u Windowsu
Da biste u potpunosti razumjeli kako sve ovo funkcionira, korisno je razdvojiti koncepte. S jedne strane, postoji potpis koda drajvera (režim jezgre ili korisnički režim), a s druge strane, zahtjevi za potpis instalacije za Plug and Play (PnP) uređaje. Iako su povezani, nisu potpuno isti: možete imati drajver koji je ispravno potpisan na binarnom nivou, ali koji ne ispunjava neke dodatne zahtjeve instalacije.
Microsoft pruža specifičnu dokumentaciju o digitalnim potpisima za kernel module u Windows Visti i novijim sistemima , detaljno opisujući koji su certifikati važeći, kako konstruirati lance povjerenja i koji su algoritmi za heširanje podržani (trenutno SHA-2). Za drajvere koji prenose zaštićeni sadržaj (audio i video sa DRM, PUMA, PAP, PVP-OPM, itd.), postoje i posebni zahtjevi za potpisivanje koda usmjereni na zaštitu multimedijalnog sadržaja.
Što se tiče radnog procesa objavljivanja, postoji nekoliko načina za slanje drajvera na Microsoft Hardware Portal . Za produkcijske drajvere, standardni pristup je pokretanje testova pomoću HLK-a ili starijeg HCK-a i otpremanje i binarne datoteke i testnih zapisa. Za scenarije samo za klijente u Windowsu 10, može se koristiti potpisivanje atestacijom, što smanjuje potrebu za automatiziranim testiranjem uz održavanje validacije i potpisivanja od strane Microsofta.
Opcija testnog potpisivanja , dizajnirana za interni razvoj i testiranje, također ostaje dostupna. Ova opcija koristi nejavne certifikate ili certifikate koje izdaje privatna PKI. Ovi drajveri će se učitati samo ako je sistem konfiguriran u testnom načinu rada ili sa specifičnim politikama koje dozvoljavaju testne drajvere.
Izuzeci i unakrsno potpisani kontroleri
U ranijim verzijama Windowsa 10, takozvani " unakrsno potpisani drajveri" su i dalje dozvoljeni pod određenim uslovima. To su drajveri koje je prodavac potpisao Authenticode certifikatom koji je lančano povezan sa posredničkim certifikatom koji je potpisao Microsoft, zaobilazeći cijeli proces hardverskog portala.
Microsoft održava nekoliko izuzetaka kako bi spriječio da se već instalirani sistemi ne mogu pokrenuti. Unakrsno potpisani drajveri su dozvoljeni u sljedećim situacijama: računar je nadograđen sa prethodne verzije Windowsa na Windows 10 verziju 1607 ; Secure Boot je onemogućen u BIOS-u/UEFI-ju; ili je drajver potpisan certifikatom izdatim prije 29. jula 2015. godine, koji se povezuje sa podržanim unakrsno potpisanim CA.
Kako bi se smanjio rizik od onesposobljavanja sistema, upravljački programi za pokretanje sistema se ne blokiraju čak ni ako nisu u skladu s novim pravilima, ali Pomoćnik za kompatibilnost programa (Program Compatibility Assistant) ih može označiti i predložiti njihovo uklanjanje ili zamjenu. Ideja je da se izbjegne ometanje redoslijeda pokretanja, već da se postepeno uklanjaju upravljački programi koji nisu u skladu s pravilima.
Zahtjevi za potpisivanje verzije Windowsa
Zahtjevi za potpisivanje variraju u zavisnosti od specifične verzije operativnog sistema i od toga da li računar koristi Secure Boot. Uopšteno govoreći, tabela politika potpisivanja za klijentska izdanja može se sažeti na sljedeći način:
- Windows Vista i Windows 7i također Windows 8+ sa onemogućenim sigurnim pokretanjemKod 64-bitnih certifikata, potpis je potreban, dok kod 32-bitnih certifikata potpis nije bio obavezan. Potpis može biti ugrađen u datoteku ili u pridruženi katalog, a potrebni algoritam je SHA-2. Lanac certifikata mora završavati u standardnim pouzdanim korijenima radi integriteta koda.
- Windows 8 i 8.1, te Windows 10 verzije 1507 i 1511 sa omogućenim Secure BootomI 32-bitni i 64-bitni drajveri zahtijevaju potpisane drajvere. Ugrađeno ili kataloško potpisivanje je i dalje dozvoljeno, korištenjem SHA-2 algoritma, oslanjajući se na standardne korijenske servere za integritet koda.
- Verzije Windowsa 10 1607, 1703 i 1709 sa sigurnim pokretanjem (Secure Boot)Zahtjev je pooštren, a potpisi moraju biti vezani za određene Microsoftove korijenske certifikate (Microsoft korijen Authority 2010, Microsoftov vrhovni autoritet za certifikate i Microsoftov vrhovni autoritet za certifikate).
- Windows 10 verzija 1803 i novije verzije sa Secure BootomIsti zahtjevi za potpis koji su vezani za prethodno spomenute Microsoftove root autorizacije zadržavaju se i za 32-bitne i za 64-bitne sisteme.
Uz potpisivanje koda upravljačkog programa, paket mora ispunjavati i zahtjeve za potpisivanje za instalaciju Plug and Play uređaja . To znači da .INF datoteke, katalozi i binarne datoteke moraju biti ispravno povezani i odraženi u potpisu da bi ih instalater uređaja (i Upravitelj uređaja ) smatrao važećim.
Postoje i posebne vrste drajvera, kao što je ELAM (Early Launch Anti-Malware) , koji se učitavaju vrlo rano u procesu pokretanja kako bi zaštitili sistem od zlonamjernog softvera niskog nivoa . Ovi drajveri imaju dodatne zahtjeve za potpisivanje i certifikaciju dokumentirane u Vodiču za rano pokretanje anti-malwarea.
Potpisivanje drajvera za Windows 10, Windows 8.x i Windows 7
Ako ste programer upravljačkih programa ili radite u okruženju u kojem se distribuiraju prilagođeni upravljački programi, morate se pridržavati Programa kompatibilnosti hardvera sustava Windows (WHCP) koristeći odgovarajuće alate za svaku verziju: HLK za Windows 10 i HCK za starije verzije.
U slučaju Windowsa 10, tipičan tijek rada bi bio: preuzimanje Hardware Lab Kit-a (HLK) koji odgovara svakoj verziji Windowsa 10 koju želite podržati, instaliranje testnog okruženja i pokretanje potpunog certifikacijskog testa na klijentu koji koristi tu verziju. Svako pokretanje će generirati testni zapisnik.
Ako ste testirali drajver na više verzija, imat ćete više logova. Uobičajena praksa je da se svi logovi kombinuju u jedan izvještaj koristeći najnoviju verziju HLK-a. Ova kombinacija pojednostavljuje slanje podataka na hardverski portal i omogućava da jedan potpis pokrije više verzija sistema.
Nakon što dobijete zapise, šaljete binarni fajl drajvera i kombinovane HLK rezultate na kontrolnu ploču Centra za razvojne programere Windows hardvera . Tamo birate željenu vrstu potpisa (na primjer, produkcijski, atestacijski itd.), konfigurirate svojstva slanja i čekate da Microsoftov automatizirani proces generira potpisane kataloge i vrati vam certificirani paket.
Sličan pristup se koristi za Windows 7, Windows 8 i Windows 8.1, ali s odgovarajućim kompletom za certifikaciju hardvera (HCK) za svaku verziju. Microsoft održava korisnički vodič za ovaj komplet koji objašnjava proces testiranja, validacije i slanja.
Potpisivanje drajvera za verzije Windowsa 10 starije od verzije 1607
Prije izdavanja Windows 10 verzije 1607, mnogi tipovi drajvera su zahtijevali Authenticode certifikat u kombinaciji s Microsoftovim unakrsnim potpisom. Ova tehnika, poznata kao unakrsno potpisivanje, omogućavala je proizvođačima da potpišu svoje drajvere i da ih Windows prihvati kao da su "blagoslovljeni" Microsoftovom infrastrukturom.
Drajveri koji su zahtijevali ovaj model potpisa uključivali su drajvere uređaja u kernel modu , drajvere korisničkog moda koji blisko komuniciraju s kernelom i drajvere koji se koriste za reprodukciju ili obradu zaštićenog sadržaja (DRM-zaštićeni audio i video). Potonji su uključivali audio drajvere zasnovane na PUMA ili PAP protokolima, kao i video drajvere koji upravljaju zaštitom izlaza (PVP-OPM).
Potpisivanje koda za zaštićene multimedijske komponente ima svoje smjernice, jer lanac povjerenja i proširenja certifikata moraju osigurati da se zaštićeni sadržaj ne može lako presresti ili manipulirati.
Praktična upotreba SignToola za potpisivanje drajvera u kernel modu (Windows 7 i 8)
U praktičnom smislu, vodeći alat za potpisivanje binarnih datoteka u Windowsu je SignTool , uključen u Windows SDK. Za drajvere u kernel modu u Windowsu 7 i 8 postoji nekoliko opcija koje su posebno korisne za potpisivanje i provjeru.
Među najvažnijim parametrima SignToola su: /ac za dodavanje dodatnog certifikata (kao što je Microsoftov unakrsni certifikat) , /f za označavanje datoteke koja sadrži certifikat za potpisivanje (na primjer, .pfx), /p za lozinku tog PFX-a, /fd za određivanje algoritma heširanja (na primjer, /fd sha256 za forsiranje SHA-256, budući da je SHA-1 historijski zadani algoritam).
Parametar `/n`, "Uobičajeni naziv certifikata", također je neophodan , jer vam omogućava da odaberete ispravan certifikat iz Windows skladišta certifikata koristeći njegov Uobičajeni naziv. Za dodavanje vremenskih oznaka možete koristiti `/t` s klasičnim Authenticode serverom ili `/tr` sa serverom koji je kompatibilan s RFC 3161, što je najmodernija i preporučena opcija.
Jedan mogući tijek rada bio bi prikupljanje binarnih datoteka upravljačkog programa u radnom direktoriju ili čak kopiranje svega u mapu bin Windows SDK-a. Zatim, nabavite certifikat za potpisivanje koda i, ako je potrebno, Microsoftov unakrsni certifikat (na primjer, CrossCert koji odgovara CA-u koji je izdao vaš certifikat). Postavite oba u isti direktorij iz kojeg ćete pokrenuti SignTool.
Kada je sve spremno, primjer naredbe može izgledati ovako: `signtool sign /ac CrossCert.crt /f CodeSign.pfx /p password1234 /fd sha256 /tr http://timestamp.globalsign.com/tsa/r6advanced1 filter.sys` . Ovo generira moderni potpis sa SHA-256, uključuje unakrsni certifikat i dodaje vremensku oznaku RFC 3161, koja je neophodna da bi potpis ostao važeći čak i nakon isteka certifikata.
Nakon potpisivanja, preporučuje se provjera naredbom kao što je `signtool verify -v -kp filter.sys` . Zastavica `-v` prikazuje detaljne informacije, dok `-kp` provjerava potpis u odnosu na kriterije drajvera u kernel modu. Ako izlaz pokazuje da je potpis važeći i da lanac povjerenja završava prihvaćenim korijenom, drajver je spreman za implementaciju.
Važno je zapamtiti da je u mnogim slučajevima i datoteka kataloga (.CAT) potpisana. Proces se ponavlja: .CAT datoteka se potpisuje, provjerava i, kada je sve u redu, upravljački program se normalno instalira na sistem.
Potpis za ovjeru i kreiranje CAB paketa
Microsoft nudi atestaciju kao relativno jednostavan način distribucije drajvera, posebno na klijentskim sistemima sa Windows 10. Prodavac je odgovoran za osiguranje da drajver ispunjava zahtjeve, a Microsoft ga jednostavno validira i potpisuje, izbjegavajući cijeli niz HLK testova u nekim scenarijima.
Za slanje drajvera putem atestacije, obično se priprema CAB datoteka koja objedinjuje bitne komponente paketa. Tipična CAB datoteka uključuje sam binarni drajver (.SYS), INF datoteku (.INF) koju će Windows koristiti tokom instalacije, simbole za otklanjanje grešaka (.PDB) za rješavanje problema i ponekad .CAT kataloge koje će Microsoft koristiti kao referencu za provjeru strukture (iako zatim generira vlastite kataloge za konačnu distribuciju).
Kreiranje je jednostavno: prikupite sve datoteke koje treba potpisati u jednom direktoriju, na primjer, C:\Echo. Iz komandne linije s administratorskim privilegijama, pogledajte MakeCab-ovu pomoć da biste vidjeli njegove opcije i pripremili DDF datoteku s potrebnim direktivama, navodeći koje datoteke komprimirati, koji CAB generirati i u kojim podfolderima ih organizirati unutar CAB-a.
Za primjer Echo kontrolera, DDF datoteka bi mogla postaviti naziv izlaza na Echo.cab, omogućiti MSZIP kompresiju i definirati odredišni direktorij (DestinationDir=Echo) tako da u korijenskom direktoriju cab-a nema slobodnih datoteka. Zatim se navode pune putanje do Echo.inf i Echo.sys kako bi ih MakeCab uključio.
Kada je DDF spreman, pokrenite nešto poput `MakeCab /f Echo.ddf` . Alat će pokazati koliko je datoteka uključio, postignuti nivo kompresije i u koju mapu (obično Disk1) je smjestio rezultirajuću CAB datoteku. Jednostavno otvorite datoteku Echo.cab pomoću File Explorera da biste potvrdili da sadrži sve što se očekuje.
Potpišite CAB s EV certifikatom i pošaljite ga u Partnerski centar
Prije otpremanja paketa na Microsoftov hardverski portal, standardna je praksa potpisati CAB datoteku EV (proširena validacija) certifikatom . Ovi certifikati, koji imaju strožu validaciju autoriteta, pružaju dodatno povjerenje i često su potrebni za određene vrste potpisa.
Proces se neznatno razlikuje ovisno o dobavljaču EV certifikata, ali opća ideja je ponovo koristiti SignTool, ovaj put ciljajući CAB. Tipična naredba bi mogla biti: SignTool sign /s MY /n "Naziv kompanije" /fd sha256 /tr http://sha256timestamp.ws.symantec.com/sha256/timestamp /td sha256 /v C:\Echo\Disk1\Echo.cab , koja dodaje SHA-256 potpis sa SHA-256 vremenskom oznakom nizu za pohranu.
Nakon potpisivanja, pristupite Microsoftovom partnerskom centru , tačnije kontrolnoj tabli hardvera, i prijavite se s podacima za prijavu vaše organizacije. Odatle odaberite opciju "Pošalji novi hardver", prenesite potpisanu CAB datoteku i popunite svojstva slanja: naziv proizvoda, vrstu potrebnog potpisa, želite li probni potpis ili samo produkcijski potpis itd.
Važno je da ne omogućite opcije testnog potpisivanja ako tražite produkcijski drajver. U odjeljku potrebnih potpisa odabirete varijante koje želite uključiti u paket (na primjer, potpise za različite verzije ili arhitekture Windowsa).
Nakon što popunite obrazac, kliknite na dugme Pošalji i pustite portal da obradi paket. Kada Microsoft završi s potpisivanjem drajvera, panel će naznačiti da je slanje obrađeno i omogućit će vam preuzimanje potpisanog drajvera , obično uz kataloge i metapodatke potrebne za njegovu distribuciju.
Provjerite da li je kontroler ispravno potpisan
Nakon preuzimanja paketa, vrijeme je da provjerite je li sve u redu. Prvi korak je izdvajanje datoteka iz pošiljke u privremenu mapu i otvaranje prozora komandne linije s administratorskim privilegijama . Odatle možete koristiti SignTool za provjeru potpisa primijenjenih na ključne binarne datoteke.
Osnovna naredba bi bila `SignTool verify Echo.sys` , koja brzo provjerava valjanost potpisa. Za temeljitiju provjeru možete koristiti ` SignTool verify /pa /ph /v /d Echo.sys` , gdje `/pa` označava korištenje Authenticode politike, `/ph` dodaje heš provjeru, a `/v` generira detaljan izlaz sa svim informacijama o lancu certifikata.
Da biste pregledali poboljšane upotrebe ključeva (EKU) certifikata koji se koristi za potpisivanje, možete koristiti Windows Explorer: kliknite desnim tasterom miša na binarnu datoteku, odaberite Svojstva, idite na karticu "Digitalni potpisi", odaberite odgovarajući unos i kliknite na "Detalji". Iz "Prikaži certifikat" i kartice "Detalji" možete pregledati polje "Poboljšane upotrebe ključeva" kako biste potvrdili da uključuje odgovarajuća proširenja za potpisivanje koda ili potpisivanje upravljačkih programa.
Interni proces nekih radnih procesa potpisivanja uključuje ponovno umetanje vlastitog SHA-2 potpisa od strane Microsofta u binarni fajl, uklanjajući sve potpise koje je primijenio kupac ako nisu u skladu s trenutnim pravilima. Također se generira nova datoteka kataloga potpisana od strane Microsofta, koja zamjenjuje sve prethodne .CAT datoteke koje je poslao dobavljač.
Testiranje i instaliranje drajvera na Windowsu
Nakon što je upravljački program potpisan, potrebno je provjeriti da li se ispravno instalira i funkcioniše na ciljnom sistemu. Iz administratorske konzole, alati poput devcon-a mogu se koristiti za automatizaciju instalacije. Na primjer, ako paket sadrži datoteku echo.inf koja definira root\ECHO uređaja, dovoljno bi bilo jednostavno pokretanje naredbe `devcon install echo.inf root\ECHO` u odgovarajućem direktoriju.
Tokom ovog procesa, ako je sve ispravno potpisano, ne biste trebali vidjeti upozorenja poput "Windows ne može provjeriti izdavača ovog upravljačkog programa". Ako se pojave, to ukazuje na to da nešto u lancu povjerenja ili u katalozima nije usklađeno i trebali biste pregledati i potpise i korijenske certifikate instalirane na sistemu.
U složenijim scenarijima, moguće je kreirati prijave s više drajvera . Uobičajeni pristup je kreiranje odvojenih podfoldera unutar strukture datoteka, po jednog za svaki paket drajvera (DriverPackage1, DriverPackage2, itd.), i prilagođavanje DDF datoteke tako da se svaki skup .SYS i .INF datoteka nalazi u vlastitom podfolderu unutar CAB-a. MakeCab zatim sve sastavlja u jedan kabinet spreman za slanje na portal.
Potpisi drajvera iz perspektive korisnika
Iz perspektive krajnjeg korisnika, potpisivanje drajvera se percipira kao ugrađeni sigurnosni filter u Windowsu . Baš kao i kod potpisanih aplikacija, ideja je uvjeriti korisnika da softver dolazi iz legitimnog izvora i da nije mijenjan. Međutim, u slučaju drajvera, zahtjev je veći jer oni rade s vrlo visokim nivoom privilegija.
Kada je drajver ispravno potpisan i objavljen putem službenih kanala, Windows Update ili sam operativni sistem ga distribuira prilično transparentno. To korisnicima olakšava dobijanje ažuriranih i ispravljenih verzija bez potrebe za ručnim pretraživanjem, uz uvjerenje da su prošli Microsoftove filtere.
Problem nastaje kada trebate instalirati upravljačke programe koji nisu digitalno potpisani ili čiji potpis više ne prihvaćaju trenutne politike (na primjer, kada pokušavate koristiti stariji hardver na novijim sistemima). U tim situacijama, Windows blokira instalaciju ili prikazuje ponovljena upozorenja, prisiljavajući vas da pribjegnete naprednijim rješenjima kako biste nastavili.
Metode za instaliranje nepotpisanih drajvera (i njihovi rizici)
Postoji nekoliko načina za instaliranje drajvera koji nisu u skladu s pravilima potpisa, ali je ključno imati na umu da svaka metoda nosi drugačiji nivo rizika . Privremeno podešavanje koje se poništava nakon ponovnog pokretanja nije isto što i potpuno onemogućavanje provjera integriteta.
Uobičajena metoda je pokretanje Windowsa s privremeno onemogućenom obaveznom upotrebom potpisanih upravljačkih programa . Da biste to učinili, ponovo pokrenite računar i pristupite naprednim opcijama (na primjer, iz menija Start, pritiskom na Shift dok klikćete na Ponovo pokreni), idite na Rješavanje problema > Napredne opcije > Postavke pokretanja i odaberite opciju "Onemogući prinudno korištenje potpisa upravljačkog programa". Sistem će se zatim pokrenuti bez potrebe za potpisima, što će vam omogućiti da instalirate upravljački program. Nakon ponovnog pokretanja, zaštita će se automatski ponovo primijeniti.
Druga opcija, dostupna samo u Windowsu 10/11 Pro i novijim izdanjima , je korištenje uređivača grupnih politika (gpedit.msc). Unutar Konfiguracija korisnika > Administrativni predlošci > Sistem > Instalacija upravljačkih programa, možete urediti politiku "Potpisivanje koda za upravljačke programe uređaja" i postaviti je na Onemogućeno. Nakon ponovnog pokretanja, Windows će biti mnogo popustljiviji prema nepotpisanim upravljačkim programima ili upravljačkim programima sa sumnjivim potpisima.
Za scenarije testiranja i razvoja postoji funkcija pod nazivom Windows Test Mode . Aktivira se iz administratorske konzole pokretanjem naredbe bcdedit i omogućava učitavanje drajvera potpisanih testnim certifikatima bez potrebe za njihovim propuštanjem kroz javnu infrastrukturu. U ovom režimu, na radnoj površini se obično pojavljuje vodeni žig koji označava da je sistem u testnom režimu.
Konačno, postoji i najekstremnija opcija: potpuno onemogućavanje provjere integriteta drajvera pomoću bcdedit.exe (korištenjem parametra nointegritychecks). Ovo ostavlja sistem potpuno ranjivim na instalaciju bilo kojeg drajvera, legitimnog ili ne, i treba ga koristiti samo u vrlo specifičnim slučajevima i uz potpuno razumijevanje onoga što radite.
Stvarne opasnosti od onemogućavanja potpisivanja vozača
Onemogućavanje ove zaštite nije samo manja neugodnost; ono otvara vrata jednoj od najtežih prijetnji za otkrivanje: rootkitovima na nivou drajvera . Oni se instaliraju kao legitimni drajveri, ali nakon učitavanja, imaju SYSTEM privilegije i mogućnost praćenja ili manipulisanja sistemom na vrlo niskom nivou.
Rootkit ovog tipa može presresti internet promet, umetnuti lažne certifikate, preusmjeriti veze na stranice koje kontroliraju napadači, blokirati instalaciju antivirusa i olakšati ulazak drugog zlonamjernog softvera. Sve se to može učiniti gotovo bez vidljivog traga za korisnika, pa čak i za mnoga tradicionalna sigurnosna rješenja.
Radeći s najvišim privilegijama, ovi zlonamjerni drajveri su praktično nevidljivi i teško ih je ukloniti . U mnogim slučajevima, jedino realno rješenje je potpuno formatiranje računara i početak ispočetka, što predstavlja značajan gubitak vremena i podataka ako nema ažuriranih sigurnosnih kopija.
Stoga, kada vas aplikacija zamoli da onemogućite potpisivanje drajvera kako biste instalirali "nešto magično", mudro je biti sumnjičav. Kad god je to moguće, poželjno je tražiti alternative ili potpisane verzije , čak i ako to znači odustajanje od određenog zastarjelog hardvera ili specifičnih funkcionalnosti.
Windows drajveri u poređenju sa drajverima proizvođača
Prilikom instaliranja perifernih uređaja i komponenti, Windows obično nudi generičke upravljačke programe koji vam omogućavaju korištenje hardvera na osnovni način. Na primjer, multifunkcionalni štampač može bez problema štampati koristeći generički upravljački program, ali ako želite skenirati, koristiti automatski uvlakač dokumenata ili pristupiti naprednim opcijama, gotovo sigurno će vam trebati službeni upravljački program proizvođača.
Isto važi i za zvučne kartice, grafičke kartice i druge složene uređaje: sa generičkim drajverima, računar će funkcionisati, ali ćete izgubiti funkcije, optimizacije performansi i napredne alate za konfiguraciju. U mnogim slučajevima, zvanični drajveri također nude specifične ispravke grešaka koje nikada nisu uključene u Microsoftove generičke drajvere.
Najbolje mjesto za preuzimanje ovih drajvera je uvijek službena web stranica proizvođača hardvera . Kada pretražujete na Googleu, često ćete prvo vidjeti stranice trećih strana pune sumnjivih "programa za preuzimanje drajvera" ili instalaciju. Ako link nije s domene proizvođača, najbolje ga je ignorirati.
Ako potpisivanje drajvera ostane omogućeno, Windows će blokirati mnoge od ovih sumnjivih paketa nakon što otkrije da se radi o nevažećem softveru ili da potpisi nisu ispravni. Ovo djeluje kao dodatni sloj sigurnosti protiv nespretnih ili potpuno zlonamjernih instalera.
Praktičan slučaj: Greška pri potpisivanju certifikata s GPU drajverima u Windowsu 7
Na računarima sa starijim operativnim sistemima poput 64-bitnog Windowsa 7 , relativno je uobičajeno naići na probleme pri instaliranju modernih drajvera za grafičke kartice ili drugi noviji hardver. Tipičan primjer je greška "Certifikati za potpisivanje nisu instalirani. Instalirajte potrebne certifikate" prilikom pokušaja instaliranja Nvidia drajvera za grafičke kartice poput GTX 1060 ili GTX 950.
U mnogim slučajevima, čak i ako korisnik onemogući potpisivanje drajvera pri pokretanju, drajver ne funkcioniše nakon ponovnog pokretanja jer je politika potpisivanja ponovo omogućena. Rješenja poput instaliranja svih prethodnih verzija drajvera, korištenja alternativnih instalera (kao što je Snappy Driver Installer), primjene ažuriranja podrške za SHA-2 (kao što je KB3033929) ili ponovne instalacije iz Upravitelja uređaja su isprobana bez uspjeha.
Praktično rješenje koje je funkcioniralo uključuje ručno izdvajanje sadržaja instalacijskog programa za verziju 474.11 (najnoviji WHQL drajver za Windows 7) u mapu i, iz Upravitelja uređaja, ažuriranje GPU drajvera odabirom opcije za pretraživanje računara za drajver i odabirom te mape. Ista metoda može propasti s kasnijim verzijama, kao što je 474.14, ako instalacijski program ne prepoznaje INF datoteke kao važeće za taj sistem.
Ovakav slučaj ilustruje koliko delikatna može biti ravnoteža između nedavnih drajvera, SHA-2 certifikata i nepodržanih operativnih sistema . Sve je teže instalirati – i održavati sigurnim – moderne drajvere na starijim platformama koje više ne primaju ažuriranja ili sigurnosne zakrpe.
Kako otkriti i riješiti probleme s neispravnim upravljačkim programima
Čak i ako su upravljački programi ispravno potpisani, mogu postati oštećeni ili nekonzistentni iz mnogo razloga: sukobi s drugim programima, zlonamjerni softver, prekinute instalacije, neuspješna ažuriranja sustava Windows itd. Kada se to dogodi, pogođeni uređaj obično prestaje raditi ili funkcionira nepravilno.
Prvi dijagnostički alat je Upravitelj uređaja . Desnim klikom na dugme Start i odabirom odgovarajuće opcije otvara se kompletna lista svog otkrivenog hardvera. Ako uređaj ima problem s upravljačkim programom, bit će označen žutom ikonom upozorenja.
U ovim slučajevima, prvi pokušaj rješenja je desni klik na uređaj, odabir "Ažuriraj upravljački program" i puštanje Windowsa da potraži prikladniji upravljački program, bilo lokalno ili putem Windows Update-a. Ako to ne uspije, možete deinstalirati uređaj (sačuvajući upravljački program ili ne) i ponovo ga pokrenuti kako bi Windows pokušao ponovo ga instalirati od nule.
Osim toga, Windows uključuje alat za rješavanje problema s hardverom i uređajima unutar panela Postavke, tačnije u odjeljku "Ažuriranje i sigurnost" > "Rješavanje problema". Ovaj čarobnjak skenira sistem u potrazi za nepravilnostima i predlaže automatizirane radnje za vraćanje funkcionalnosti određenih upravljačkih programa.
Ako je određeno ažuriranje upravljačkog programa uzrokovalo problem, možda će biti korisno koristiti opciju "Vrati upravljački program na prethodnu verziju" na kartici "Upravljački program" u svojstvima uređaja, pod uslovom da Windows zadrži prethodnu verziju. Ovo vraća problematičnu instalaciju i može vratiti stabilnost sistema.
Pregled i analiza upravljačkih programa trećih strana instaliranih na Windowsu

Da biste stekli veću kontrolu nad onim što je instalirano na vašem sistemu, možete koristiti alate trećih strana poput Nirsoftovog DriverView-a , koji prikazuje detaljnu listu svih upravljačkih programa instaliranih na vaš računar. To je besplatan, prenosivi uslužni program koji znatno pojednostavljuje reviziju upravljačkih programa.
DriverView koristi vrlo jednostavan sistem kodiranja bojama: Microsoftovi drajveri s važećim digitalnim potpisima prikazuju se s bijelom pozadinom , dok su drajveri trećih strana (od proizvođača ili dodatnog softvera) označeni crvenom bojom. Ovo pomaže da se brzo identificiraju dijelovi slagalice koji ne zavise direktno od operativnog sistema.
Lista se može sortirati po kolonama, na primjer po "Kompaniji" kako bi se grupirali svi drajveri iste kompanije. Osim toga, meni Prikaz obično uključuje opciju za skrivanje svih Microsoft drajvera i prikazivanje samo drajvera trećih strana, što vam omogućava da se fokusirate na one koji najvjerovatnije uzrokuju konflikte.
Dvostrukim klikom na bilo koji unos otvara se prozor s detaljnim informacijama o upravljačkom programu : verzija, puna putanja, opis, proizvođač, datum postavljanja itd. U slučaju nepoznatih ili sumnjivih upravljačkih programa, ovi podaci pomažu u utvrđivanju da li su oni dio programa koji zapravo koristimo ili ih vrijedi dalje istražiti, pa čak i deinstalirati.
S obzirom na ovaj pregled, jasno je da potpisivanje drajvera i certifikati u Windowsu nisu samo formalnost, već fundamentalna komponenta za održavanje stabilnosti i sigurnosti sistema. Razumijevanje načina potpisivanja drajvera, koji se zahtjevi mijenjaju između verzija Windowsa, koji alati postoje za validaciju i kako reagovati kada drajver nije potpisan ili ne uspije, omogućava nam da izvučemo maksimum iz našeg hardvera, a istovremeno ostanemo oprezni prema prijetnjama niskog nivoa.
Strastveni pisac o svijetu bajtova i tehnologije općenito. Volim dijeliti svoje znanje kroz pisanje, a to je ono što ću raditi na ovom blogu, pokazivati vam sve najzanimljivije stvari o gadžetima, softveru, hardveru, tehnološkim trendovima i još mnogo toga. Moj cilj je pomoći vam da se krećete u digitalnom svijetu na jednostavan i zabavan način.
