Nasazení virtuálních smart karet ve firemním prostředí

Nejčastěji používaná forma ověřování pomocí uživatelského jména a hesla je zároveň také formou nejslabší. Primární odpovědnost za ochranu autentizačních údajů leží na koncovém uživateli, který musí zvolit dostatečně komplexní heslo. Toto heslo nesmí být snadno uhodnutelné a uživatel ho nesmí nikomu dalšímu sdělit. I při dodržení těchto základních pravidel je možné, díky různým útokům typu naslouchání na síti, útoku hrubou silou či sociálnímu inženýrství, přece jen teoreticky heslo zjistit. Ve chvíli, kdy útočník zná heslo uživatele, může ho použít pro ověřování, aniž by si toho samotný uživatel musel nutně všimnout.

To vše vede řadu organizací k úvahám o zavedení dvoufaktorové autentizace, která je obvykle založená na tom, že něco znám (heslo, PIN atp.) a něco fyzicky mám (např. USB token, smart kartu, mobilní telefon). Nejběžnějším scénářem nasazení dvoufaktorové autentizace je ověřování za pomoci certifikátů uložených včetně privátního klíče na inteligentní čipové kartě s mikroprocesorem (anglicky “smart card”). Toto řešení jednoznačně zvyšuje bezpečnost autentizace, ale je spojeno často s nemalými náklady na pořízení vlastních čipových karet a čteček čipových karet.

S poměrně masovým rozšířením TPM modulů v dnešních počítačích se ale otevírá možnost nasazení dvou faktorové autentizace i bez těchto zvýšených nákladů. Tímto řešením jsou právě virtuální smart karty.

Co je TPM?

TPM (Trusted Platform Module) je kryptoprocesor instalovaný na základní desce, který mimo jiné umí generovat náhodná čísla, generovat a chránit kryptografické klíče, provádět kryptografické operace aniž by šifrovací klíč poskytnul operačnímu systému.

Zajímavou vlastností TPM je také takzvaná atestace. TPM je schopný vytvořit unikátní hash z informací o hardwarové a softwarové konfiguraci. Díky atestaci jsme pak schopni ověřit, že se nejen jedná opravdu stále o stejný počítač, ale dokonce máme i důkaz, že se nezměnila žádná jeho podstatná konfigurace hardware a software.

Specifikace TPM určitě není horkou novinkou, ale až v poslední době můžeme hovořit o tom, že TPM je běžnou součástí většiny počítačů. S TPM čipem se dnes už můžeme dokonce setkat i v mobilních telefonech s Windows Phone.

Co je virtuální smart karta?

Virtuální smart karta v podstatě emuluje tradiční fyzické smart karty, ale díky využití TPM čipu pro ochranu privátních klíčů není nasazení spojeno s nákup dalšího hardwaru. Je to tedy zajímavá alternativa pro firmy, jejichž počítače jsou vybaveny TPM čipy, jak zvýšit bezpečnost ověřování bez výrazných investic.

Virtuální smart karty mají díky využití TPM stejné srovnatelné bezpečností charakteristiky:

  • Neexportovatelnost – všechny citlivé informace na virtuální smart kartě jsou zašifrovány za pomocí modulu TPM v daném počítači a nemohou být použity na jiném počítači s jiným TPM. Součástí návrhu TPM jsou i obranné prostředky proti různým typům útoků, a tak dokonce ani v případě, že bych někomu odcizil TPM a vložil ho do svého počítače, tak se stále k chráněným datům ze zdrojového počítače nebudu schopen dostat.
  • Izolovaná kryptografie – podobně jako u tradičních smart karet jsou veškeré kryptografické operace s chráněnými klíči prováděny mimo paměť operačního systému, a tak i v případě virtuálních smart karet platí, že operační systém nemá přístup k chráněnému kryptografickému klíči a veškeré kryptografické operace s takovýmto klíčem probíhají výhradně uvnitř TPM čipu.
  • Anti-hammering – pokud uživatel zadá opakovaně špatně PIN k virtuální smart kartě, dle konkrétní logiky TPM dojde k dočasnému přerušení možnosti znovu PIN zadat. Toto chování je podobné funkci zamykání uživatelských účtů na danou dobu po vyčerpání povoleného počtu chybných pokusů o přihlášení.

Čím se liší virtuální smart karta od tradiční?

Přestože virtuální smart karta je navržena jako co nejpřesnější emulace tradičních smart karet a zajišťuje autentizaci se srovnatelnou mírou bezpečnosti za použití dvou faktorů (znám PIN a mám počítač s TPM), přece jen najdeme celou řadu praktických rozdílů, s kterými je třeba počítat.

Virtuální smart karta je stále vložená

Tradiční smart karta je díky svému kompaktnímu tvaru určena pro nošení s sebou například společně s osobními doklady. Protože je často kombinovaná třeba s docházkovým systémem nebo zabezpečením vstupu do kancelářských prostor, uživatelé jsou tak vlastně nenásilně nuceni ji nenechávat ve čtečce při odchodu od počítače. Naopak virtuální smart karta je neustále „vložená“ v počítači a není si ji možné odnést s sebou. Pokud někde nechám osobní počítač, dávám tím prostor komukoliv zkoušet uhodnout můj PIN. Nicméně díky anti-hammering funkci TPM čipu toto riziko přece jen výrazně sníženo. Naopak tradiční smart karty jsou často díky přenášení ztraceny nebo zapomenuty a nezanedbatelné náklady na provoz tvoří obsluha procesu vystavování dočasných smart karet a revokace těch ztracených nebo fyzicky zničených. Toto u virtuální smart karty hrozí pouze v případě odcizení nebo ztráty celého počítače, což nastává určitě s nižší frekvencí.

Musíme ale počítat s tím, že Smart Card Removal Policy v Group Policy tedy nemá při použití virtuálních smart karet žádný význam.

Virtuální smart karta je nepřenositelná

Výhodou tradičních smart karet je jejich přenositelnost. Mohu svojí smart kartu využít k přihlášení na libovolný počítač vybavený čtečkou. Virtuální smart karta je naopak vázaná na konkrétní počítač a je zcela nepřenositelná. Pro autentizační a podpisové certifikáty to není nepřekonatelný problém. Mohu mít jednoduše více různých virtuálních smart karet na jednotlivých počítačích a s nimi se přihlašovat. Složitější je to u šifrovacích certifikátů, kde je nemožnost přenášení mezi počítači již citelnou nevýhodou. Pokud ale uživatel využívá pro většinu své práce svůj vlastní počítač, nemusí toto omezení být nakonec relevantní.

Situace, kdy jeden počítač využívá více uživatelů, problematická naopak není. Je možné na jednom počítači mít několik virtuálních smart karet s certifikáty pro jednotlivé uživatele.

Virtuální smart karta je levná

Za předpokladu počítačů vybavených TPM čipem jsou z pohledu materiálních investic virtuální smart karty v podstatě zadarmo. Zcela odpadá nutnost nákupu skutečných smart karet a čteček čipových karet. I samotný provoz je obvykle výrazně levnější, neboť není nutné řešit časté náhrady ztracených, zničených nebo zapomenutých smart karet, což reálně poměrně běžně v praxi nastává.

Požadavky na nasazení virtuálních smart karet

Pro nasazení virtuálních smart karet existují tyto požadavky:

Požadavky na operační systém:

  • Windows 8 a novější
  • Windows Server 2012 a novější
  • Windows Phone 8.1

Požadavky na hardware:

  • TPM čip verze 1.2 a vyšší

Požadavky na prostředí:

  • Počítač je členem Active Directory domény
  • V prostředí existuje minimálně jedna Active Directory integrovaná certifikační autorita

TPM čip musím být plně funkční včetně úvodní inicializace. Pro správu TPM mají systémy Windows připravenou konfigurační konzolu „Správa čipů TPM v místním počítači”, která se spouští pomocí Start->Spustit-> tpm.msc

1VSC-SprávaTPM
Obrázek 1 Správa čipů TPM v místním počítači

Vytvoření virtuální smart karty

Pro vytváření nebo naopak odstraňování virtuálních smart karet operační systém Windows obsahuje nástroj TPM VSC Manager (Tpmvscmgr.exe). Tento nástroj je třeba spustit s právy administrátora. Základní příklady použití jsou:

tpmvscmgr.exe create /name KPCS_VSC_Test /pin default /adminkey random /generate

Tento příkaz vytvoří virtuální smart kartu se jménem KPCS_VSC_test, která má nastavený výchozí PIN s hodnotou „12345678”.

Příkazem TpmVscMgr destroy /instance root\smartcardreader\0000 bychom naopak první vytvořenou smart kartu ze systému odstranili.

2VSC-VytvoreniVSC
Obrázek 2 Vytvoření virtuální smart karty

Jakmile máme virtuální smart kartu úspěšně vytvořenou, stačí již jen standardně zažádat o certifikát interní certifikační autoritu. Žádost musí využívat zprostředkovatele kryptografických služeb „RSA, Microsoft Smart Card Key Storage Provider“. Během vytváření žádosti jsme vyzváni k zadání PINu k virtuální smart kartě, aby systém ověřil, že jsme opravdu k této operaci autorizováni.

3VSC-VystaveniCertifikatuNaVSC
Obrázek 3 Vystavení certifikátu na virtuální smart kartu

Správa virtuálních smart karet

Pro využití v menších prostředích jsou vestavěné nástroje Windows dostačující pro nasazení virtuálních smart karet i pro jejich provoz. Ve větších prostředích je pak možné pro automatizovanou správu virtuálních smart karet využít profesionální nástroje třetích stran z kategorie CMS (Card Management System). Windows 8.1 a Windows Server 2012 R2 dokonce přináší ve jmenném prostoru Windows.Device.SmartCards vlastní API, přes které automatizované nástroje mohou s virtuálními smart kartami snadno pracovat.

Jako příklad můžeme uvést jedno z prvních CMS řešení, které plně podporuje virtuální smart karty ve Windows: MyID. MyID přináší tyto hlavní výhody pro správu virtuálních smart karet:

  • Uživatelsky snadný samoobslužný proces pro vystavení virtuální smart karty včetně certifikátů
  • Podporuje obnovu klíčů, a tak je možné používat virtuální smart karty i pro šifrování např. poštovních zpráv
  • Podporuje vzdálené smazání virtuální smart karty třeba pro případ, kdy zaměstnanec organizaci opouští
  • Umožňuje vzdálené odemknutí karty při jejím zamčení na základě několika špatných pokusů o zadání PINu
  • Poskytuje auditing a podrobný reporting o využívaná virtuálních smart karet v celé organizaci
  • Podporuje celý životní cyklus certifikátů včetně obnovy nebo zneplatnění

Shrnutí

Virtuální smart karty přináší velmi zajímavou alternativu k tradičním smart kartám. S velmi nízkými náklady jsme díky novince Windows 8 v kombinaci s využitím TPM čipů schopni dosáhnout výrazného zvýšení bezpečnosti ověřování ve firemním prostředí, které je svými vlastnostmi srovnatelné s klasickými smart kartami. I virtuální smart karta zajišťuje dvou faktorovou autentizaci. Pro ověření musím zároveň ZNÁT PIN a MÍT konkrétní zařízení s TPM čipem. Z pohledu komfortu uživatele je pak práce s virtuální smart kartou v prostředí Windows úplně stejná jako s kartou tradiční.

Miroslav Knotek, KPCS CZ, knotek@kpcs.cz

KPCS CZ, s.r.o. je přední českou firmou specializující se na nasazení, správu a podporu informačních technologií, primárně zaměřenou na produkty společnosti Microsoft. Jako systémový integrátor poskytuje kvalitní podniková řešení na této platformě, která jsou v pravidelných intervalech hodnocena prvními příčkami v soutěžích Microsoft Awards. KPCS CZ disponuje předními odborníky na problematiku veřejného cloudu, tedy služeb Office 365 a Azure, ale i technologií privátního cloudu Windows Server, Hyper-V a produktů rodiny System Center.