Bezpečnostní aspekty elektronického obchodu Isabel Münch Bundesamt für Sicherheit in der Informationstechnik Godesberger Allee 183 53175 Bonn tel: 0228-9582-367 1. Úvod Stále roste poptávka po rychlých a cenově výhodných variantách elektronických plateb. Přitom je stále populárnějším médium internet. Internet však nebyl vyvinut pro přenos informací, které vyžadují naprostou bezpečnost, a proto nemůže být použit k platebním transakcím bez doplňujících bezpečnostních opatření. Proto uživatel dosud stojí při většině objednávek přes internet před problémem, že objednané zboží nebo přečtené informace musí zaplatit kreditní kartou. Kvůli tomu je nutné zadat při objednávce číslo kreditní karty a údaje o tom, do kdy je platná. Přenos zpráv přes internet je ale bezpečný zhruba stejně jako posílání pohlednic, s tím rozdílem, že se na něm podílí ještě více míst než na poštovním styku. Přirozeně jsou pak tyto údaje často odposlechnuty a zneužity. V otevřených sítích jako je internet je možno vymyslet nejrůznější druhy napadení. Nabízíme k tomu nejprve krátký přehled, abychom zdůraznili, s jakými ohroženími je třeba počítat, a jaké bezpečnostní požadavky je nutno stanovit pro „elektronické peníze“ a „elektronický obchod“. 2. Druhy ohrožení systémů „Electronic Money“ / „Electronic Commerce“ Součástí elektronického obchodu je kromě výběru, objednávky a dodání také zaplacení. Mnoho otázek bezpečnosti při použití systémů „Electronic Commerce“ se točí kolem otázky, jak lze s použitím nejisté sítě bezpečně zaplatit. Proto se tato přednáška zabývá především bezpečností „elektronických plateb“, jejich možným ohrožením a odpovídajícími bezpečnostními požadavky. V různých systémech „Electronic Commerce“ se vyskytují různí aktéři, kteří se podílejí na virtuálním oběhu peněz. Zjednodušeně řečeno se účastní zákazníci, obchodníci a zprostředkovatelé. Roli zprostředkovatelů často hrají banky nebo podniky s kreditními kartami, ale existuje i řada nových, inovativních podniků, které v těchto procesech rovněž vystupují jako zprostředkovatelé s vlastními metodami „Electronic Money“. Pro zjednodušení bude nadále řeč pouze o „bankách“. Úloha banky se obvykle nadále dělí do více instancí jako banka pro zákazníky, banka pro obchodníky, provozovatel systému „Electronic Money“ zúčtovací banka, platební gateway, atd. Pro veškeré komunikační spoje mezi zákazníkem, obchodníkem a bankou musí být v zásadě brány v potaz následující ohrožení: -
Ztráta důvěrnosti předávaných dat, například odposlechem komunikace. Přitom mohou být odposlechnuta především hesla sloužící k autentizaci nebo jiná důvěrná data, jako odesílatel, příjemce, výška platby atd.
1
-
Ztráta integrity přenášených dat, například kvůli chybám způsobeným technickými defekty, nebo kvůli záměrné manipulaci. Přitom mohou být předávané částky nebo osoba příjemce zmanipulovány tak, aby finanční příjem získala třetí osoba.
-
Ztráta použitelnosti přenášených dat, například zásahem vyšší moci, jako je výpadek sítě, přerušení sítě nebo chyba při přenosu, nebo záměrně manipulativním zásahem třetí osoby.
-
Opětovné přehrání starých transakčních údajů, například by se někdo mohl pokusit opakovat platbu tak, že by zkopíroval a znovu použil stará data.
-
Zamlčení platby nebo objednávky, například může příjemce peněz tvrdit, že obnos nedostal.
-
Přetvářka, například by mohl někdo předstírat, že je jistým obchodníkem, aby nasměroval platbu pro vlastní užitek. Ale i zákazník by mohl předstírat falešnou identitu a provést neplatnou platbu, která nebude obchodníkovi vyplacena.
Ale nejen v průběhu transportu, v otevřeném Internetu, lze očekávat ohrožení. Ohroženy jsou rovněž připojené počítače, přičemž je třeba vzít v úvahu nejen vnějšího, ale i vnitřního pachatele. Napřed nabídneme krátký přehled některých zvlášť důležitých typů ohrožení. -
hackering od vnějšího pachatele, například by se mohl hacker přes internet pokusit hackerovat server prodejce využitím mezer v zabezpečení. Následně by mohl provést různé manipulace s daty o platebním provozu, resp. tato data vymazat.
-
hackering od vnitřního pachatele, například by si mohl spolupracovník prodejce zajistit přístup k serveru a následně zneužít uložená data, nebo by mohl někdo z rodinného okolí zákazníka zneužít jeho počítač a zaplatit na jeho účet.
-
sabotáž, například by se mohli jak vnější, tak vnitřní pachatelé, pokusit sabotovat server prodejce tím, že ho cíleně přetíží (Denial of service-angriffe), aby vypověděl službu.
-
výpadek systému, například by mohl mít server v důsledku technického defektu výpadek, takže by ani zákazník, ani prodejce nemohli využívat jeho služeb. Zrovna tak by mohla selhat paměťová média, ve kterých jsou uloženy kryptografické klíče nebo geldwerte bitstrings, takže by došlo ke ztrátě informací.
-
počítačové viry, které například vymažou nebo zmanipulují aktuální data plateb.
-
nahrání nekontrolovaného softwaru z internetu, například se může během surfování po internetu do počítače zákazníka nahrát jistý software (ActiveX nebo Java-Applets), vytvořený záměrně k tomu aby vyzvěděl zákazníkova hesla a následně zneužil platební programy tak, aby vygenerovaly falešné platby. (Kvůli interním bezpečnostním opatřením je ohrožení Java-applety podstatně nižší než u aplikací ActiveX)
U elektronického obchodu je třeba oproti čistým systémům electronic-money brát na zřetel ještě další problémová místa, jako například copyright, záruku produktu, garanci doručení nebo otázky reklamace.
2
Podstatným bodem elektronického obchodu je druh prodávaného zboží. Jde o to, jestli se jedná o bity (např. informace nebo software), nebo o hmotné zboží (od toasteru až po kompaktní disky). U elektronického obchodu s daty vzniká řada problémů, které se ještě musí vyjasnit, protože u běžného obchodu se nevyskytly. Jak to například vypadá se zárukou, možnostmi reklamace nebo výměny, když si zákazník z internetu nebo jiné veřejné sítě nahraje proti poplatku softwarový balík (obvykle zkomprimovaný) a pak zjistí, že se nedá rozpakovat nebo spustit, je napaden virem nebo se v něm vyskytují jiné problémy. 3. Bezpečnostní požadavky Bezpečnostní požadavky na elektronický obchod se dají rozdělit do tří základních kategorií: 1. Zabezpečení komunikace 2. Kontrola identity partnera v komunikaci 3. Bezpečnost součástí 3.1 Zabezpečení komunikace K zabezpečení komunikace v systémech elektronického obchodu musí být dosaženy tyto bezpečnostní cíle: -
Manipulace s přenášenými daty, především v oblasti objednávky, platby a dodání, musí být možné rozpoznat, aby transakce byla zrušena,
-
musí být zaručena důvěrnost přenášených dat, především týkají-li se konkrétních osob nebo platby,
-
nesmí být možné znovu použít data ze starých transakcí a
-
nesmí být možné zamlčet objednávku, platbu nebo dodávku zboží.
K zajištění těchto požadavků mohou sloužit následující opatření: -
Zajištění integrity: V zájmu zjištění, zda přenášená data nemohla být náhodně nebo úmyslně zfalšována, mohou být data opatřena zašifrovaným kontrolním součtem. K tomu je možno využít např. MAC (Message Authentication Codes), hashovací postupy nebo digitální podpisy.
-
Zakódování: K zajištění důvěrnosti přenášených dat mohou být využity jak symetrické (např. DES, IDEA) tak asymetrické (např. RSA, eliptické křivky) kódovací metody.
-
Doklad o příjmu: Pokud chce odesílatel mít možnost dokázat, že příjemci něco poslal přes internet, potřebuje od příjemce věrohodný doklad o příjmu. Ten lze získat například tak, že příjemce utvoří z došlých dat hashovanou hodnotu a tu pošle zpátky označenou digitálním podpisem. Odesílatel tak může dokázat, že doklad od příjemce přijde, a že mohl být vytvořen pouze se znalostí doručených dat, takže je příjemce obdržel správně.
3
-
Znemožnění opakovaného nahrání dat: Použitím dynamických klíčů, transakčních čísel nebo časových razítek lze zajistit, že opakovaně nahrané zprávy budou odhaleny a odmítnuty.
3.2 Kontrola identity partnerů v komunikaci Další důležitý bod v otázkách bezpečnosti systémů elektronického obchodu je kontrola identity partnerů. V otevřených sítích, jako je internet, se nelze spolehnout na to, že udaná jména jsou správná, pod adresou www.xy-bank.com se nemusí nutně nacházet banka XY. Proto musí být zaručena vzájemná autentizace všech součástí systému. Používají se k tomu obvykle metody Challenge-Response. Princip, podle kterého se osoba A prokáže osobě B (tzn. počítač A počítači B) jako autentická, zní: B zná jednu z vlastností A, jejímž nositelem je pouze A. Může to být například symetrický klíč známý A i B, nebo ta vlastnost, že osoba A zná tajný klíč k asymetrické kódovací metodě, ke které osoba B zná certifikát s klíčem veřejným. V prvním kroku pošle osoba B osobě A náhodně zvolené číslo. V druhém kroku zpracuje A toto náhodné číslo svým tajným parametrem a pošle výsledek zpět osobě B. B zkontroluje s použitím svých informací, jestli odpověď obsahuje číslo, které vybrala. Pokud ano, ví osoba B, že komunikuje opravdu s osobou A, protože pouze A vlastní potřebné tajné informace. 3.3 Bezpečnost součástí Prodejci pracující se službou elektronického obchodu na internetu musí vzít v úvahu, že jejich ohrožení se podstatně liší od ohrožení uživatelů. Provozují server, který na síti musí být známý a stále dostupný. Tento server může být záměrně napaden s cílem poškodit prodejce. Proto musí prodejce usilovat o ofenzivní ochranu svých počítačů, zatímco zákazník se obecně může chovat defenzivně. Prodejci musí dosáhnout následujících cílů ochrany: -
Služba, čili server, musí být dostupná stále, lze tolerovat pouze krátkodobé výpadky.
-
Veškeré aktivity serveru musí být revisionssicher nachvollziehbar.
-
Musí být vyloučeno zneužití serveru vnitřním nebo vnějším pachatelem.
-
Musí být zaručena integrita a důvěrnost zpracovávaných dat.
K dosažení těchto cílů je nutno aplikovat celou řadu opatření, která zde nemohou být vyčerpávajícím způsobem uvedena, proto načrtneme jen ty nejdůležitější. -
Použití firewall: Server prodejce v elektronickém obchodu může být principiálně umístěn v interní síti prodejce, v screened subnet, nebo na vnější straně firewall. Při screened subnet se jedná o teilnetz mezí sítí, jež má být chráněna, a externí sítí, ve které se součásti firewall starají o kontrolu spojení a balíků. Pro zaručení kontroly serveru i interní sítě prodejce, by server měl stát mimo firewall a být vnímán jako ostatní servery obsažené v externí síti. Jeho správa by měla probíhat buď lokálně, nebo přes speciální časově omezené přístupy z chráněné sítě.
4
-
V této souvislosti chceme poukázat na „Základní příručku o ochraně“ (ITGrundschutzhandbuch) od Spolkového úřadu pro bezpečnost informační techniky. V této knize uživatel najde první podněty a doporučení, jak lze zabezpečit unixový server nebo server Windows NT, a jaké podmínky je třeba zohlednit při výběru a provozu firewall.
-
Kontrola uživatelů a přístupu: Pro bezpečný provoz každého serveru je nevyhnutelně nutné restriktivním způsobem stanovit přístupová a uživatelská práva. K serveru, na němž se provozuje elektronický obchod, by měl mít přístup pouze jeho administrátor. Přitom je třeba dbát také na to, aby se používala komplexní hesla, která není snadné uhodnout, a aby se nastavená hesla měnila.
-
Omezený provoz serveru: Server by měl disponovat bezpečným systémem. K tomu patří mimo jiné to, aby poskytoval pouze služby spojené s elektronickým obchodem. Týká se to především služeb, které umožňují dálkové ovládání nebo údržbu.
-
Systémy zajištěné proti selhání: Server prodejce by měl být podle možností přístupný dvacet čtyři hodin denně. Znamená to jednak, že bude na internetu užitečný, jednak že vyřízené transakce budou moci být bez zpoždění dále zpracovány, obvykle na dalších počítačích umístěných „za“ serverem. Potenciální ohrožení představují technické defekty, sabotáže a záměrné útoky z internetu směřující k zablokování serveru (např. SYNFlooding). Proti chybám techniky lze vybudovat redundantní systémy, proti úmyslným útokům, které nelze vyloučit, musí být použit inteligentní operating, který automaticky nebo ručně rozpozná útoky a provede protiopatření.
-
Bezpečnost hardwaru: Server musí spravovat a bezpečně zálohovat celou řadu kryptografických klíčů, a protože jako server provádí mnoho kryptografických operací, nabízí se možnost vybavit ho částečně autonomním hardwarem pro tyto účely. Jedná se zároveň o ochranu proti zneužití vnitřním pachatelem, popřípadě i proti hackerům.
-
Prevence kritických situací: Server, na němž je provozován elektronický obchod na internetu, se může dostat do nejrůznějších kritických situací. Může mít výpadek kvůli technickému defektu, mohou se kvůli přerušení dodávky proudu ztratit důležité informace nebo nad ním získá kontrolu hacker. Je však také možné, že software vykazuje kritické bezpečnostní nedostatky, takže by bylo třeba reagovat na pokus o zneužití. Lze provést preventivní opatření proti selhání techniky, jako je například redundantní provedení serveru nebo bezpodmínečně nutná instalace sekundárního zdroje proudu. Navíc musí mít prodejce pro potenciální kritické situace vypracovány postupy řešení, jež lze v krátké době aplikovat. K tomu je nutné vyhotovit plán alarmování a koncept řešení kritických situací.
-
Bezpečnostní audit a revize: Aktivity obsluhujícího personálu, úspěšná a neúspěšná připojení uživatelů a transakční data se musí protokolovat. S použitím těchto protokolů by se mělo pravidelně kontrolovat, jestli se v administrativě nevyskytují nepravidelnosti nebo jestli nebyly podniknuty přes internet pokusy o útok. V případech, kdy dojde k přerušení transakce s uživatelem, je navíc možné pomocí protokolů dosáhnout vyjasnění situace.
-
Vhodný personál: Je třeba klást vysoké požadavky na personál obsluhující server a systémy, které mu podléhají. Především musí být velmi spolehlivý, aby se tak redukovalo riziko zneužití vnitřním pachatelem. Navíc musí být dostatečně vyškolen a dále se
5
vzdělávat a tak si udržovat přehled o aktuálním stavu bezpečnosti informačních technologií. 3.4 Zabezpečení uživatele Zákazník očekává od systémů elektronického obchodu, že se jejich využitím nevystaví žádným bezpečnostním rizikům. Nelze u něj předpokládat podrobnou znalost bezpečnostních rizik a protiopatření. Chce mít možnost neomezeně na internetu surfovat, ale obvykle nezná všechna rizika a opatření proti nim. Je sice odpovědný za svůj počítač a jeho zabezpečení, ovšem poskytovatel elektronického obchodu by ho při tom měl podporovat. -
Systémové součásti, které u zákazníka musí být nainstalovány, musí vykazovat adekvátní stupeň bezpečnosti.
-
Musí být snadné systém obsluhovat, aby žádný uživatel nebyl nucen vyhledávat pomoc při krocích, které jsou z hlediska bezpečnosti relevantní.
-
Všechny transakce (objednávky, platby atd.) musí být dokazatelné a zabezpečené proti zfalšování.
-
Systém by měl být zabezpečen proti ztrátám a měl by tolerovat chybné ovládání ze strany zákazníka. Selhání systému ani přerušení spojení nesmí zákazníkovi způsobit finanční újmu.
-
Systém by měl být koncipován tak, aby zaručil ochranu dat zákazníka. Měl by umožnit co nejširší anonymitu a sdělovat o zákazníkovi co nejméně informací.
I když mnoho systémů „electronic money“ razí heslo anonymita, nemusí to vždy znamenat, že platby probíhají naprosto anonymně. Často se pod pojmem anonymita rozumí pouze fakt, že obchodník si nemůže přečíst údaje o zákazníkovu kontu a banka informace o objednávce. Prodejce nemusí mít možnost identifikovat zákazníka, až na to, že potřebuje znát adresu, kam pošle zboží, a ověřuje jeho platební schopnost. Existují ale i systémy, u kterých lze dosáhnout toho, že banka nerozpozná ani na jaké části se bude dělit požadovaná finanční částka, ani na jakou adresu budou částky směřovat. 3.5 Základní bezpečnostní požadavky Při budování systému elektronického obchodu je třeba čelit mnoha ohrožením. Proto musí být provedeno velké množství nejrůznějších bezpečnostních opatření. Aby si všechny navzájem odpovídaly je nanejvýš potřeba popsat je v podrobném bezpečnostním konceptu. Tento koncept musí obsahovat velké množství jednotlivých komponentů i jejich vzájemnou souhru. To zahrnuje širokou škálu problémů, od otázky bezpečnosti elektronických peněz proti padělání až po schluesselmanagement. Podle vlastností těchto jednotlivých komponent je třeba realizovat příslušná opatření organizační, personální, infrastrukturní, a technické povahy, aby tak byly dosaženy stanovené cíle bezpečnosti. Přitom jsou důležité následující body: -
dobrá kryptografie Měly by se používat pouze ty kryptografické algoritmy, které jsou obecně pro dnešek i pro příští léta uznávány jako dostatečně odolné. Proto by se např. místo Single-DES měl už
6
používat jen Triple-DES. Pokud se používá RSA mělo by se pracovat minimálně s délkou 768 bitů, raději však 1024 bitů. -
kontrolní mechanismy Systém musí obsahovat kontrolní mechanismy, s jejichž pomocí lze včas rozpoznat útoky (např. duplikaci hodnotových jednotek), aby bylo možné podniknout odpovídající protiopatření. I zde je třeba vzít v úvahu aspekty bezpečnosti dat, ani kvůli kontrolním mechanismům nesmí být možné vygenerovat profily zákazníků.
-
Hardware a software pro zákazníky Zákazníkům musí být k dispozici jak hardware, tak software pro používání systémů „electronic money“. Software sám nikdy nemůže poskytnout dostatečnou bezpečnost pro uložení citlivých informací, jako jsou kryptografické klíče, PINy, nebo virtuální peníze. Pokud stávající systém „electronic money“ vyžaduje ukládání citlivých dat u zákazníka, musí být tato data ukládána do hardwaru rezistentního proti útokům, jako jsou čipové karty nebo PC-cards. Software by měl být schopen testovat sám sebe, aby se dalo zabránit jeho modifikaci trojskými koni nebo viry. Pokud se v zákazníkově počítači uloží cenné informace, musí být zajištěno, že výpadek systému nepovede k finanční ztrátě.
-
Důvěrnost chráněných informací Všechny chráněné informace musí být spolehlivě zabezpečeny proti manipulaci a neoprávněnému přístupu. K takovým informacím patří PINy a kryptografické klíče, stejně jako čísla kreditních karet a zprávy o objednávkách a platbách. Tato data musí být adekvátním způsobem chráněna ve všech součástech systému, nejen při přenosu, ale i ve všech zúčastněných IT-systémech. Při tom by se mělo už při koncipování systémů „electronic money“ myslet na to, že je snazší zabezpečit chráněné informace v centrálním bankovním systému než ve velkém množství systémů zákazníka a prodejce.
-
nezávislé kontroly bezpečnosti K dosažení bezpečnostních cílů je kromě výběru vhodných opatření zrovna tak podstatné jejich pečlivé aplikování a následné důkladné a pravidelné kontroly. Je zvlášť důležité, aby tyto kontroly prováděla nezávislá pracoviště – už kvůli tomu, že provoz bývá slepý vůči vlastním chybám. Příklady z poradenské praxe BSI stále znovu ukazují, že i uznávaní experti dělají ve velmi komplexních aplikacích pro elektronický obchod chyby už při specifikaci. Čím dříve jsou takové chyby odhaleny, tím snadněji se odstraní.
Bezpečnost je vždy relativní v čase. Co platí jako bezpečné dnes, nemusí příští rok vůbec stačit. Vždy je třeba stále znovu obnovovat zabezpečení podle aktuálního stavu techniky. 4 Resumé Bezpečnostní problémy, které vznikají při vyřizování elektronického obchodu na internetu kvůli komunikaci přes otevřené a nejisté médium, lze dostatečným způsobem minimalizovat použitím vhodných kryptografických metod. Přesto je nutné zajistit počítače zákazníka i
7
prodejce nad rámec kryptografické bezpečnosti. K tomu by měly být zákazníkovi poskytnuty bezpečné a vyzkoušené komponenty, přičemž komponenty podporované hardwarově nabízejí velké bezpečnostní výhody. Je třeba nezanedbat úkol prodejce školit a poučit zákazníky o bezpečném zacházení se systémem.
8