Specializovan² t²denφk o v²poΦetnφ technice |
|
Serißl o bezpeΦnosti a informaΦnφm soukromφ |
|
╚ßst 56 - CW 32/98
BezpeΦnost Φipov²ch karetPetr HanßΦek
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 pomocφ 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² COMP128) 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².
| COMPUTERWORLD - serißl o bezpeΦnosti | COMPUTERWORLD | IDG CZ homepage | |