PB 169 Počítačové sítě a operační systémy1 Bezpečnost v informačních technologiích PB 169 Počítačové sítě a operační systémy PB 169 Počítačové sítě a operační systémy2 Základní pojmy Aktiva Něco co mám a má to pro mne hodnotu Škoda Snížení hodnoty aktiva Útok Útok může způsobit škodu Je realizací hrozby Hrozba Existuje pokud je systém zranitelný Zranitelnost Zranitelné místo + potenciální útočník PB 169 Počítačové sítě a operační systémy3 Základní pojmy Důvěrnost (Confidentiality) Informace jsou srozumitelné / přístupné / sdělené jen těm, kdo jsou k tomu oprávněni Integrita (Integrity) Informace jsou správné, úplné, nebyly neautorizovaně změněny Dostupnost (Availability) Informace / služby jsou autorizovaným uživatelům k dispozici kdykoli to potřebují resp. kdykoli je určeno, že mají být k dispozici PB 169 Počítačové sítě a operační systémy4 Základní pojmy Autentičnost (Authenticity) Integrita + zajištění původu (zpráv, dat, ..) Odpovědnost (Accountability) Kdo za co odpovídá Nepopiratelnost (Nonrepudiation) Nemožnost popřít deklarovaný původ (např. zprávy) PB 169 Počítačové sítě a operační systémy5 Základní pojmy Autentizace proces ověření (a tím i ustavení) identity (s požadovanou mírou záruky). Autorizace udělení určitých práv a určení povolených aktivit. Identifikace rozpoznání určité entity (systémem) v dané množině entit. PB 169 Počítačové sítě a operační systémy6 Kryptologie Fyzická ochrana ­ cena! Kryptografie ­ ochrana významu (informační hodnoty) dat i ,,na dálku" Kryptoanalýza ­ zjišťování slabin kryptografických algoritmů a parametrů Kryptologie ­ kryptografie & kryptoanalýza Steganografie ­ utajení samotné existence dat Vodotisk (watermarking) ­ překryv se steganografií, metody vložení (ochranných) informací do dat PB 169 Počítačové sítě a operační systémy7 Kde kryptografie pomáhá Důvěrnost dat Integrita dat Autenticita dat (integrita a ověření původu) Nepopiratelnost Autentizace a autorizace uživatelů/strojů Dostupnost Prokazatelná zodpovědnost Řízení přístupu ... PB 169 Počítačové sítě a operační systémy8 Tři dimenze kryptografie Druh a parametry klíčů Symetrické = konvenční = sdílené Asymetrické = veřejné & soukromé Bez klíčů (hašovací funkce, RND) Způsob zpracování dat Po blocích V souvislém proudu Druhy použitých operací Substituce Permutace PB 169 Počítačové sítě a operační systémy9 Kerckhoffsův princip Algoritmus ­ postup ­ je všem znám a všemi ověřitelný (jako bezpečný) Klíč ­ tajná informace ­ musí být chráněna před nepovolanými osobami PB 169 Počítačové sítě a operační systémy10 Co je hašování (hashování) "Otisk dat" Malý a jedinečný reprezentant jakkoliv velkých dat 01:A0:7D:2B:76:52:67:05:EC:43:6F:B3:68:CE:20:E7 Hašovací funkce jednosměrnost, bezkoliznost Dnes považovány za bezpečné: SHA-256 a verze vyšší Nedostatečně bezpečné: SHA-1 (160 bit), MD5 (128 bit) PB 169 Počítačové sítě a operační systémy11 Alice Obvyklá označení činitelů Bob Eva Copyright 1996 Terisa Systems, Inc. Šifrovací algoritmus Dešifrovací algoritmus Tajný klíč Otevř. text Zašifr. text Otevř. text Převzato z: Network and Internetwork Security (Stallings) Zjednodušený model konvenčního šifrování Copyright 1996 Terisa Systems, Inc. Šifrovací algoritmus Dešifrovací algoritmus Bobův veřejný klíč Otevř. text Zašifr. text Otevř. text Alice Bobův privátní klíč Bob Převzato z: Network and Internetwork Security (Stallings) Zjednodušený model šifrování veřejným klíčem PB 169 Počítačové sítě a operační systémy14 Alice Šifrování Bob - veřejný klíč Šifrování veřejným klíčem Bob Pošli: kilo masa, litr mléka, alimenty... PošlePošle hjsdkyufdzj cnjkeldhcjd zcndjlszhcj dncjldzncjd zncjklzdxnc kzdx PB 169 Počítačové sítě a operační systémy15 Dešifrování Dešifrování zprávy od Alice Bob privátní klíč hjsdkyufdzj cnjkeldhcjd zcndjlszhcj dncjldzncjd zncjklzdxnc kzdx Bob Pošli: kilo masa, litr mléka, alimenty... PB 169 Počítačové sítě a operační systémy16 Alice Podpis Co je digitální podpis? Milý Bobe, o ty alimenty skutečně žádám já - Alice Alice privátní klíč Certifikát - Alicin veřejný klíč Bob PB 169 Počítačové sítě a operační systémy17 Asymetrická kryptografie Zpráva Ověření podpisu Tvorba podpisu Veřejný klíč B Podepsaná zpráva Uživatel A Soukromý klíč B Uživatel B Autentičnost Integrita Nepopiratelnost původu Dešif- rování Šifrování Šifrovaná zpráva Zpráva Uživatel A Veřejný klíč A Soukromý klíč A Uživatel B Důvěrnost PB 169 Počítačové sítě a operační systémy18 Certifikát certifikát ­ veřejný klíč uživatele podepsaný soukromým klíčem důvěryhodné třetí strany certifikát spojuje jméno držitele páru soukromého a veřejného klíče s tímto veřejným klíčem a potvrzuje tak identitu osoby poskytuje záruku že identita spojená s vlastníkem daného veřejného klíče není podvržená případně také představuje doklad o tom, že totožnost držitele veřejného klíče byla ověřena PB 169 Počítačové sítě a operační systémy19 Elektronický podpis Zákon o elektronickém podpisu č. 227/2000 Sb. (změněn několika novelizacemi). ,,Elektronickým podpisem se rozumí údaje v elektronické podobě, které jsou připojené k datové zprávě nebo jsou s ní logicky spojené a které slouží jako metoda k jednoznačnému ověření identity podepsané osoby ve vztahu k datové zprávě" Elektronickým podpisem tak může být i pouhé jméno napsané na klávesnici. PB 169 Počítačové sítě a operační systémy20 Není podpis jako podpis Elektronický podpis téměř cokoliv Zaručený elektronický podpis v podstatě digitální podpis Zaručený elektronický podpis založený na kvalifikovaném certifikátu digitální podpis, certifikát veřejného klíče vydán kvalifikovanou CA (splnila podmínky zákona a oznamovací povinnost) Zaručený elektronický podpis založený na kvalifikovaném certifikátu od akreditovaného poskytovatele certifikačních služeb také nazýván jako ,,uznávaný podpis" digitální podpis, certifikát veřejného klíče vydán akreditovanou CA (splnila podmínky zákona a získala akreditaci) jen tento podpis je uznáván v komunikaci se státní správou a samosprávou v ČR dnes tři akreditované CA (I.CA, PostSignum a eIdentity) PB 169 Počítačové sítě a operační systémy21 Zaručený elektronický podpis Je jednoznačně spojen s podepisující osobou (jen fyzická osoba!); umožňuje identifikaci podepisující osoby ve vztahu k datové zprávě; byl vytvořen a připojen k datové zprávě pomocí prostředků, které podepisující osoba může udržet pod svou výhradní kontrolou; je k datové zprávě, ke které se vztahuje, připojen takovým způsobem, že je možno zjistit jakoukoliv následnou změnu dat. PB 169 Počítačové sítě a operační systémy22 Elektronická značka Jednoznačně spojena s označující osobou (i právnickou osobou nebo i org. složkou státu) a umožňuje její identifikaci prostřednictvím kvalifikovaného systémového certifikátu; byly vytvořeny a připojeny k datové zprávě pomocí prostředku pro vytváření elektronických značek, které označující osoba může udržet pod svou výhradní kontrolou; jsou k datové zprávě, ke které se vztahují, připojeny takovým způsobem, že je možné zjistit jakoukoli následnou změnu dat. PB 169 Počítačové sítě a operační systémy23 Elektronický podpis vs. značka Elektronický podpis podepisující osoba je fyzická osoba, která je držitelem prostředku pro vytváření elektronických podpisů a jedná jménem svým nebo jménem jiné fyzické či právnické osoby; pro ověření podpisu je vydáván certifikát (veřejného klíče). Elektronická značka označující osobou fyzická osoba, právnická osoba nebo organizační složka státu, která drží prostředek pro vytváření elektronických značek a označuje datovou zprávu elektronickou značkou; pro ověření podpisu je vydáván systémový certifikát (veřejného klíče). PB 169 Počítačové sítě a operační systémy24 Elektronický podpis vs. značka Rozdíl je pouze procedurální ,,Datová zpráva je podepsána, pokud je opatřena elektronickým podpisem. Pokud se neprokáže opak, má se za to, že se podepisující osoba před podepsáním datové zprávy s jejím obsahem seznámila." (§3 odst. 1) ,,Použití zaručeného elektronického podpisu založeného na kvalifikovaném certifikátu a vytvořeného pomocí prostředku pro bezpečné vytváření podpisu umožňuje ověřit, že datovou zprávu podepsala osoba uvedená na tomto kvalifikovaném certifikátu." (§3 odst. 2) ,,Použití elektronické značky založené na kvalifikovaném systémovém certifikátu a vytvořené pomocí prostředku pro vytváření elektronických značek umožňuje ověřit, že datovou zprávu označila touto elektronickou značkou označující osoba." (§3a odst. 1) ,,Pokud označující osoba označila datovou zprávu, má se za to, že tak učinila automatizovaně bez přímého ověření obsahu datové zprávy a vyjádřila tím svou vůli. " (§3a odst. 2) PB 169 Počítačové sítě a operační systémy25 Elektronický podpis a značka Technologicky jde o totéž Jen automatizace použití a správa soukromého klíče je jiná. Viz. §17 a §17a zákona Podle vyhlášky č. 378/2006 Sb. se jedná o klasické algoritmy digitálního podpisu ETSI technical specifications ETSI technical reports PB 169 Počítačové sítě a operační systémy26 Aktuality ,,Kvalifikovaní poskytovatelé certifikačních služeb ukončí vydávání kvalifikovaných certifikátů s algoritmem SHA-1 do 31. 12. 2009. Od 1. 1. 2010 budou tito poskytovatelé vydávat kvalifikované certifikáty podporující některý z algoritmů SHA-2." ,,Kvalifikované certifikáty s hashovací funkcí třídy SHA-2, které začnou vydávat nejpozději od 1. ledna 2010, budou všichni tři poskytovatelé přednostně nabízet s hashovací funkcí SHA-256 v kombinaci s algoritmem RSA s délkou klíče 2048 bitů. Poskytovatel certifikačních služeb může na základě vlastního rozhodnutí a základě požadavků svých zákazníků vydávat kvalifikované certifikáty i s některou z dalších funkcí z rodiny SHA-2, tj. SHA-224, SHA-384 nebo SHA-512." PB 169 Počítačové sítě a operační systémy27 Digitální podpis ­ algoritmy První algoritmy asymetrické kryptografie na začátku 70. let 20. století: Britská tajná služba GCHQ (Clifford Cocks). Veřejné oznámení až koncem 20. století (1997). Aplikaci algoritmů pro autentizaci ­ podpis ­ ,,objevila" později až akademická komunita u svých veřejných algoritmů. První veřejné algoritmy koncem 70. let 20. století (W. Diffie a M. Hellman ovlivněni prací R. Mercla). Nejznámější algoritmus RSA (Rivest, Shamir, Adelman) publikován v roce 1977, patentován v roce 1983 (v současné době patent již vypršel). PB 169 Počítačové sítě a operační systémy28 Digital Signature Algorithm V roce 1994 proběhl v USA výběr Digital Signature Standard (DSS) ­ vyhrál DSA (Digital Signature Algorithm) modifikovaný algoritmus ElGamal, založený na diskrétním logaritmu v Zp. Další algoritmy, mj. založeny i na eliptických křivkách. NIST FIPS 186-3 nyní podporuje RSA (podle PKCS#1), DSA (3072 bitů) a ECDSA (podle ANSI X9.62). PB 169 Počítačové sítě a operační systémy29 Digitální podpis ­ délky klíčů Algoritmus RSA Při jednom z popisů algoritmu (ve ,,Scientific American" v roce 1977) autoři publikovali příklad kryptosystému (prvočísla byla 64- a 65bitová), o kterém věřili, že je bezpečný. Tento příklad byl rozlomen v roce 1994. Koncem roku 1999 došlo k prolomení 512bitového modulo RSA (několik set rychlých počítačů pracovalo přes 4 měsíce), nedávno byl faktorizován 768 bitový RSA klíč. V současné době se používá modulo o délkách 1024 až 4096 bitů. PB 169 Počítačové sítě a operační systémy30 Digitální podpis ­ RSA­ matematika Násobení prvočísel snadné, ale faktorizace čísel výpočetně náročná. Velká prvočísla p a q, n = pq, (n) = (p-1)(q-1). Zvolíme velké e takové, že gcd(e, (n)) = 1. Spočítáme d = e-1 (mod (n)). Veřejný klíč: n, e. Neveřejné parametry: p, q, d. Šifrování: c = we mod n. Dešifrování: w = cd mod n. PB 169 Počítačové sítě a operační systémy31 Výpočetní bezpečnost Bezpečnost RSA je založena na nesnadnosti faktorizace čísel. Je zřejmé, že pouhým ,,vyzkoušením" všech čísel do odmocniny z n se nám podaří n faktorizovat. Bezpečnost RSA je založena na tom, že faktorizovat velká čísla (tím v současné době myslíme čísla o tisících bitů) v rozumném čase neumíme. Pokrok v oblasti faktorizace čísel (například nalezení nového algoritmu) však může znamenat, že z veřejného klíče budeme schopni odvodit klíč privátní. Tento algoritmus je založen na tzv. ,,výpočetní bezpečnosti" (nejen tento algoritmus, ,,výpočetní bezpečnost" je běžně používaný přístup). PB 169 Počítačové sítě a operační systémy32 Hašovací funkce Kryptografická hašovací funkce. Vstup libovolné délky. Výstup pevné délky: n bitů. Funkce není prostá (vznikají kolize). Haš slouží jako kompaktní reprezentace vstupu (nazýváme též otisk, anglicky imprint, digital fingerprint nebo message digest). Hašovací funkce často používáme při zajišťování integrity dat. Spočítáme nejprve haš a pak pracujeme s tímto hašem (například jej podepíšeme). Právě probíhá výběr nového algoritmu SHA-3! PB 169 Počítačové sítě a operační systémy33 Vlastnosti hašovacích funkcí Jednosměrnost Pro libovolné x je snadné spočítat h(x). V rozumném čase nejsme schopni pro pevně dané y najít takové x, že h(x) = y. Bezkoliznost (slabá): pro dané x nejsme schopni v rozumném čase najít x' (x x') takové, že h(x) = h(x'). (silná): v rozumném čase nejsme schopni najít libovolná x, x' taková, že h(x) = h(x'). PB 169 Počítačové sítě a operační systémy34 Příklad hašovací funkce Uvažujme následující hašovací funkci: Jednoduchý součet bajtů modulo 256 . Fixní osmibitový výstup. Pro text ,,ahoj" získáme 97+104+111+106 mod 256 = 162. Tuto funkci je sice jednoduché spočítat, není to však dobrá kryptografická hašovací funkce, neboť nemá vlastnost bezkoliznosti. h(,,ahoj") = h(,,QQ") = h(,,zdarFF") PB 169 Počítačové sítě a operační systémy35 Běžné kryptografické hašovací funkce MD4: výstup 128 bitů ­ dnes se již nepoužívá ­ byly nalezeny slabiny v algoritmu (umožňující nalezení kolizí, snižující efektivní výstup asi na 20 bitů). MD5: výstup 128 bitů ­ dnes ještě používána, ačkoliv byly nalezeny významné slabiny a algoritmus pro nalezení kolizí ­ 128 bitů se již nepovažuje za dostatečně bezpečnou délku! SHA-1 (Secure Hash Algorithm): výstup 160 bitů ­ NIST standard, používána v DSS (Digital Signature Standard), považována za bezpečnou pro jen nejbližší rok(y). ,,SHA-2" ­ SHA-256, SHA-384, SHA-512 (a dodána SHA- 224) ­ doporučuje se používat především tyto funkce! Definovány ve standardu (NIST) FIPS 180-2. PB 169 Počítačové sítě a operační systémy36 Hašovací funkce ­ příklady MD5 Vstup: ,,Autentizace". Výstup: 2445b187f4224583037888511d5411c7 . Výstupem je 128 bitů, zapisujeme hexadecimálně. Vstup: ,,Cutentizace". Výstup: cd99abbba3306584e90270bf015b36a7. Změna jednoho bitu vstupu velká změna výstupu. SHA-1 Vstup: ,,Autentizace". Výstup: dfcee447d609529f0335e67016557c281fc6eb44 . PB 169 Počítačové sítě a operační systémy37 Protokoly vyšší úrovně ­ SSL/TLS Protokol SSL/TLS poskytuje: Autentizaci stran ­ strany jsou autentizovány pomocí certifikátů a protokolu výzva-odpověď Integritu ­ autentizační kódy (message authentication code - MAC) zajišťují integritu a autenticitu dat Důvěrnost ­ po úvodní inicializaci (,,handshake"), je ustaven symetrický šifrovací klíč, kterým je šifrována všechna následující komunikace (včetně přenosu hesel apod.) PB 169 Počítačové sítě a operační systémy38 Principy SSL/TLS Pozice SSL/TLS Mezi aplikační vrstvou a protokolem TCP SSL/TLS nevidí do aplikačních dat SSL/TLS neprovádí elektronické podepisování přenášených dat Aplikační vrstva SSL/TLS TCP/UDP IP Linková vrstva Fyzická vrstva PB 169 Počítačové sítě a operační systémy39 Klíče v SSL/TLS Použití klíčů Klient generuje PreMasterSecret, šifruje veřejným klíčem serveru a posílá serveru Obě strany vytvoří blok klíčů z PreMasterSecret (posílá se šifrovaně) a náhodných čísel ClientHello a ServerHello (posílají se nešifrovaně) Blok klíčů tvoří klíče pro * MAC klient server * MAC server klient * šifrování klient server * šifrování server klient * inicializační vektory PB 169 Počítačové sítě a operační systémy40 SSL/TLS Client Hello Server Hello, ( , Client Cert Request,...) Server Cert Client CertClient Key Exchange, Cipher Spec, ( , ...) Application Data S E C U R E Client Server PB 169 Počítačové sítě a operační systémy41 Autentizace uživatelů tajnými informacemi ,,Něco, co uživatel zná" (a ostatní ne ) Hesla Druhy hesel a jejich použití Správná práce s hesly PINy Výhody a nevýhody těchto autentizačních metod PB 169 Počítačové sítě a operační systémy42 Čas potřebný k analýze NTLM hašů (na anxurovi) n c 26 znaků 36 (alfan.) 62 (a/A,alfan) 95 (kláves.) 5 15 s 1,3 min 19,9 min 2,8 h 6 6,69 min 47,2 min 20,5 h 11 d 7 3 h 1,2 d 55 d 3,1 r 8 3,26 d 44 d 9,6 r 290 r 9 84,8 d 4,5 r 590 r 28000 r 10 7,1 r 180 r 42000 r 3000000 r PB 169 Počítačové sítě a operační systémy43 Autentizace uživatelů tokeny Token ­ ,,něco, co uživatel má" (a ostatní ne) Inteligentní token Základní druhy Jejich princip a použití Čipové karty ­ využití, parametry, bezpečnost Výhody a nevýhody těchto autentizačních metod PB 169 Počítačové sítě a operační systémy44 Nejčastější tokeny v IT/IS Karty S magnetickým proužkem Čipové * Kontaktní / bezkontaktní * Čtečka na straně dotazovatele / kontrolovaného (mobil) Autentizační kalkulátory S tajnou informací S hodinami Způsob vstupu/výstupu PB 169 Počítačové sítě a operační systémy45 Úvod do biometrik ,,Něco, co uživatel je" (a ostatní ne) Měřitelné biologické charakteristiky člověka- uživatele Fyzické ­ parametry částí těla Chování (behaviorální) ­ parametry činnosti Míra tolerance ­ prahová hodnota Nesprávné odmítnutí/přijetí PB 169 Počítačové sítě a operační systémy46 Biometrické autentizační metody Otisk prstu Vzor oční duhovky Vzor oční sítnice Srovnání obličeje Geometrie ruky Verifikace hlasu Dynamika podpisu Dynamika psaní na klávesnici PB 169 Počítačové sítě a operační systémy47 Využití biometrik Problémy biometrik ­ bezpečnost Otázky praktického použití Současná omezení a použitelnost Vhodné použití Nevhodné použití Vztah biometrik a kryptografie