Bezpečnost čipových karet

Než se začneme zabývat bezpečností čipových karet, bylo by vhodné vysvětlit, proč jsou čipové karty tak těsně sv...


Než se začneme zabývat bezpečností čipových karet, bylo by vhodné vysvětlit,
proč jsou čipové karty tak těsně svázány s bezpečností informačních systémů.
Poskytují totiž velmi levnou implementaci jednoho z bezpečnostních konceptů,
který se anglicky nazývá "tamper resistant hardware" (hardware odolný proti
útoku). Jedná se o hardwarový modul, obvykle vybavený mikroprocesorem, který
obsahuje nějaká chráněná data a algoritmy, které na základě příkazů z vnějšího
světa s těmito daty manipulují.
Tato vlastnost se obvykle využívá dvojím způsobem:
1. Modul v sobě obsahuje data, se kterými je možno manipulovat pouze jistým
způsobem. Příkladem může být předplatní (telefonní) čipová karta, která v sobě
obsahuje čítač impulzů, který je možno pouze snižovat a nikdy ne zvyšovat.
2. Modul má v sobě tajný kryptografický klíč, který nikdy nevypustí ven a je
pouze ochoten s tímto klíčem provést jistou kryptografickou operaci. Příkladem
může být autentizační čipová karta, která prokazuje svou totožnost pomocí
zašifrování vložených dat uloženým tajným klíčem. Tomuto typu bezpečného
hardwaru se někdy také říká kryptografický bezpečný hardware.
Co je na výše uvedených vlastnostech čipové karty tak zvláštního? To, že je
nelze implementovat čistě softwarově bez pomoci speciálního hardwaru. Např.
výše uvedenou předplatní kartu nelze realizovat softwarově, protože útočník by
prostě pomocí binárního editoru přepsal obsah čítače na libovolnou hodnotu a
měl by tak nevyčerpatelný zdroj bodů nebo impulzů.
Security through obscurity
Velmi rozšířeným jevem, se kterým je možno se setkat u čipových karet, je
utajování algoritmů. Algoritmy použité v aplikacích s čipovými kartami
(kryptografické i nekryptografické) bývají poměrně často utajovány nebo aspoň
"nezveřejňovány". Děje se tak v daleko větší míře než u softwarových aplikací.
Proč tomu tak je? Důvodem je to, že vlastnost bezpečného hardwaru (tj. ochránit
"chráněná data" před neoprávněným přístupem) se dá velmi snadno využít i pro
ochranu použitých algoritmů před prozrazením.
Zatímco u čistě softwarového systému nelze efektivně utajit žádný algoritmus,
protože nakonec to vždycky někdo "zreverzuje" a zveřejní, u hardwarového
systému tato možnost existuje. A vývojáři aplikací s čipovými kartami ji také
zhusta využívají. Zvlášť v minulých letech panovaly v této oblasti až
paranoidní názory. Nejen že se utajovaly algoritmy, kryptografické protokoly a
datové struktury, ale "nezveřejňovaly" se i samotné příkazy čipových karet.
Čipové karty se dodávaly pouze "prověřeným" odběratelům, po podepsání různých
závazků a prohlášení, doprovázených vysokými smluvními pokutami. Tento způsob
zabezpečení, zvaný "security through obscurity", což znamená přibližně
"zabezpečení pomocí obskurnosti", je svou účinností asi tak bezpečný, jako
ukládání klíče pod rohožku.
První nesmělé pokusy emulace telefonních karet
První pokusy o útoky na čipové karty se vyskytly v oblasti telefonních karet.
Telefonní karta typicky není procesorová karta, ale jde o kartu se speciální
logikou. Telefonní karta má elektrický protokol, kterým říká své identifikační
číslo a počet impulzů, které ještě na ní zbývají. Tento protokol samozřejmě
není utajován a každý, kdo vyvine určitou energii, si jej může opatřit. Pak
ovšem platí, že jakékoli zařízení, které odpoví na dotazy telefonního automatu
a bude dodržovat tento protokol, bude telefonním automatem akceptováno jako
platná telefonní karta. Tím je také dáno, že nejčastějším útokem na telefonní
karty je tzv. emulace. Spočívá ve vytvoření zařízení (emulátoru), které se
chová z hlediska elektrického protokolu jako platná telefonní karta s jediným
rozdílem neklesá na něm počet impulzů.
Konstruktéři stávajícího systému telefonních karet se ani nesnažili o nějaké
lepší zabezpečení bezpečnost systému totiž spočívá v tom, že cena emulátoru je
natolik vysoká, že neodpovídá zisku útočníka. Což poměrně slušně platí ve
Francii nebo v Německu, ale už méně to platí v naší republice nebo ještě dále
na východ. Existence emulátorů "věčných telefonních karet" v tomto případě
tudíž neznamená selhání bezpečnostního mechanismu, ale selhání člověka, který
vzal systém, vytvořený pro konkrétní provozní prostředí a bez provedení
bezpečnostní analýzy jej přemístil do provozního prostředí zcela jiného.
Hackerství jako obchod satelitní karty
Emulace telefonních karet není však pro hackery dnes už příliš zajímavá. Hacker
potřebuje oblast, která je pro něj intelektuální výzvou, dá se na ní získat
sláva, má z ní jistý okamžitý prospěch, činnost je beztrestná a pokud možno se
na tom dají vydělat peníze. Tyto podmínky přesně splňují satelitní šifrovací
karty.
Satelitní karty slouží pro dekódování satelitních televizních programů, které
jsou vysílány zašifrované a které jsou určeny pouze pro ty diváky, kteří si za
nemalý peníz koupí odpovídající dekódovací kartu. Dekódovací karta je čipová
karta, která v sobě obsahuje tajný klíč (nebo několik klíčů) a šifrovací
algoritmus, který je někdy tajný a někdy veřejný. Satelitní přijímač do karty
občas zasílá krátkou zprávu, kterou karta pomocí klíče dešifruje a tím se získá
tajná hodnota, se kterou je možno dekódovat několik dalších sekund obrazu. Je
jasné, že pokud by byl prozrazen klíč (a algoritmus), je možno opět vytvořit
emulátor karty, pomocí něhož je možno dekódovat přijímaný signál.
Pokud je takový emulátor (obvykle nazývaný pirátská karta) prodáván za rozumnou
cenu, může se stát masově prodávaným zbožím. A to se právě stalo. Během
několika málo let se vytvořil takříkajíc průmysl na výrobu pirátských čipových
karet, který plynule zásobuje své zákazníky kartami. A nejde o malé počty.
Jenom počet pirátských karet pro šifrovací systém Videocrypt se odhaduje na 250
000 až 500 000 kusů. Provozovatelé satelitního vysílání s tímto jevem
samozřejmě intenzivně bojují, například pomocí změn klíčů nebo drobných
technických změn v protokolu, zvaných ECM (Electronic CounterMeasure).
Samotná existence satelitních pirátských karet není z globálního pohledu příliš
závažná. Týká se několika málo společností (které si tento stav zavinily samy)
a jiných technologických odvětví se tato činnost příliš netýká, protože kromě
satelitní televize se tímto způsobem čipové karty prakticky nepoužívají.
Problém je zcela jiný, a mnohem závažnější. Satelitní čipové karty se totiž
staly školou, na které se vyučili vysokým schopnostem hackeři, kteří by se
jinak pravděpodobně vůbec nepustili do útoků na čipové karty. Současný stav je
takový, že struktura komunity firem (ano, čtete dobře, firem, nikoli
jednotlivců), které se zabývají výrobou satelitních pirátských karet, je
několikaúrovňová. A v nejvyšší úrovni se nacházejí firmy, které nevyrábějí
samotné pirátské karty, to nechávají firmám na nižší úrovni, ale které
provádějí zjišťování utajených algoritmů a tajných klíčů.
Právě tím, že provozovatelé satelitního vysílání umožnili (a nepřímo zaplatili)
vytvoření těchto firem, prokázali medvědí službu ostatním uživatelům čipových
karet.
Budeme zatloukat a zatloukat Mondex
Pokud se pozornost útočníků soustředila na satelitní čipové karty, mohli
vývojáři finančních aplikací s čipovými kartami tvrdit, že satelitní čipové
karty tvoří v bezpečnosti čipových karet "druhou ligu" a že jejich "bankovní"
čipové karty jsou na tom z hlediska bezpečnosti zcela jinak. Vzhledem k
důslednému utajování jak vlastností čipů, tak i samotných kryptografických
protokolů, bylo obtížné jim v tomto oponovat. Jednou z těchto elektronických
peněženek je systém Mondex, patřící mezi nejrozšířenější. Jeho výrobce tvrdil
např., že "systém poskytuje úroveň bezpečnosti, která předbíhá současnou úroveň
zločinců dnes a bude je předbíhat i zítra".
Tato tvrzení bylo opět obtížné zpochybnit. Až v květnu 1996 si Národní banka
Nového Zélandu (NBNZ) v rámci pilotního projektu nechala otestovat bezpečnost
systému Mondex nezávislou organizací. Výsledkem bylo memorandum, které
konstatovalo, že bezpečnost prověřované verze systému je nedostatečná a systém
není dostatečně odolný proti útoku (auditor to demonstroval mimo jiné pomocí
útoku, při kterém se mikrojehlami spojí 2 testovací plošky na čipu a tím se čip
dostane do testovacího režimu). Dalo by se čekat, že toto odhalení způsobí
poprask. Avšak výsledky auditu byly před veřejností více než rok utajovány, než
bylo memorandum v roce 1997 únikem informací z NBNZ prozrazeno a zveřejněno na
Internetu organizací EFF (Electronic Frontier Foundation).
Reakce NBNZ byla téměř hysterická NBNZ žádala EFF o okamžité stažení textu
memoranda z Internetu a v případě neuposlechnutí hrozila soudními následky.
Kdo je však viník? Asi nikdo. Výrobce čipu (Hitachi) prohlásil, že se jedná o
starou verzi, která již není podporována a proto neměl být čip použit. Výrobce
systému (Mondex) prohlásil, že bezpečnost systému je "odpovídající způsobu
použití", přičemž "způsob použití", což je jinými slovy maximální částka,
uložená v elektronické peněžence, nebyl nikde jasně definován. Takže Černý Petr
zůstal asi v rukou bank.
Mrtvý brouk GSM SIM-karty
Další velmi rozšířenou aplikací čipových karet jsou mobilní telefony GSM, kde
karta SIM plní velmi důležitou úlohu v zabezpečení telefonu (podrobněji v
dalším díle). Důležité pro nás je to, že kryptografický algoritmus, umístěný v
kartě SIM (nazývaný COMP-128) je utajovaný a nepublikovaný. Opět "security
through obscurity" jako hrom. Až do jara roku 1998, kdy popis algoritmu
"unikl", byl podroben analýze a bylo zjištěno, že je špatný. Díky chybám v
algoritmu je možné během několika hodin vytvořit kopii SIM-karty, nazvanou
klon. Na tomto případě je asi nejmarkantněji vidět škodlivost přístupu
"security through obscurity" a utajování algoritmů.
Co na závěr
Bylo by krátkozraké tvrdit, že tyto případy svědčí o nedostatečné bezpečnosti
čipových karet. Spíše svědčí o tom, že čipové karty jsou, jako každý jiný
produkt buď kvalitní a tedy bezpečné, nebo méně kvalitní a tedy i méně
bezpečné. Kvalitu čipových karet a aplikací s těmito kartami však nemůžeme
nikdy posuzovat podle marketingových tvrzení výrobce nebo vývojáře aplikace,
ale pouze podle výsledků nezávislého auditu. A výše uvedené příklady nebyly
selháním čipové karty jako takové, ale selháním člověka, který ve své
nafoukanosti a domýšlivosti nerespektoval základní bezpečnostní zásady a použil
tyto karty způsobem, který nebyl správný.
8 1809 / ram









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.