PV157 ­ Autentizace a řízení přístupu Autentizace uživatelů tajnými informacemi Hesla, PINy ap. ˇ Cílem je autentizace (ověření identity) uživatele ­ Co nejjednodušeji pro autorizované uživatele ­ Co nejkomplikovaněji pro neautorizované uživatele ˇ V návaznosti pak nastupuje řízení přístupu ˇ Je potřeba řešit otázky ­ ukládání, ­ průběhu kontroly, ­ ,,kvality" hesel a PINů. Dilema ˇ Lidská paměť (co nejkratší / nejjednodušší) ­ zapamatování versus ˇ Bezpečnost (co nejdelší / nejsložitější) ­ uhodnutí / odpozorování ap. Hesla 1. Skupinová (uživatelská role) ­ málo používané, bezpečnost mizivá 2. Unikátní pro danou osobu (heslo = userid) 3. Neunikátní (používaná společně s userid) 4. Jednorázová (ať už unikátní či nikoliv) ­ Obvykle tajná funkce/souvislost ­ Na papíře nebo pomocí speciálního zařízení Ukládání hesel ˇ V nezašifrované podobě ­ Ochrana na úrovni systému (řízení přístupu pro zápis i čtení!) ­ Absolutní důvěra v administrátora ­ Problém při zkopírování souboru ­ Raději NE ˇ V nečitelné podobě ­ Šifrované ­ Hašované Nečitelná podoba hesel ˇ Pomalá funkce (1x není problém, opakovaně ano) ˇ Nedoporučuje se ukládat zašifrovaná sama o sobě ˇ ,,Solení" ­ v tabulce hesel: userid, sůl, f(sůl, heslo) ­ delší efektivní heslo, také řešení pro stejná hesla DES Klíč = heslo + sůl IV = 0 Hi Hi se použije stejným způsobem vícekrát (25) Nečitelná podoba hesel ˇ V Unixu dříve pomocí funkce crypt, postavená na DES (viz předch. slajd) pro vstup je významných jen prvních 8 znaků (!) ˇ Nyní s využitím hašování MD5 ­ významných 256 znaků Útoky ˇ Slovníkový ˇ Permutace písmen s několika znaky a typickými náhradami ˇ Slova, data, číslice související s uživatelem ˇ Hrubou silou (všechny možné kombinace) passwd squid:*:23:23::/var/spool/squid:/dev/null zriha:Cd7KKI2xoP5rs:23568:700:Zdenek Riha:/home/zriha:/bin/bash ˇ Obsahuje následující informace ­ account ­ userid ­ password ­ UID ­ the numerical user ID ­ GID ­ numerical primary group ID ­ GECOS ­ This field is optional... ­ directory ­ the user's $HOME directory ­ shell ­ the program to run at login... shadow squid:!!:11724:0:99999:7::: zriha:$1$LxSyKziS$D6sEAIBU2p3xbzeGqg.LK.:11760:0:99999:7:::134538348 ˇ Obsahuje následující informace ­ Login name ­ Encrypted password ­ Days since Jan 1, 1970 that password was last changed ­ Days before password may be changed ­ Days after which password must be changed ­ Days before password is to expire that user is warned ­ Days after password expires that account is disabled ­ Days since Jan 1, 1970 that account is disabled ­ A reserved field Úspěšnost útoku hrubou silou Čas platnosti x Počet odhadů za jednotku času Velikost abecedy Délka hesla Čas potřebný k analýze (HAC), crypt na pomalém PC, DES 10 MB/s 3.8 x 108 r5.3 x 106 r23.000 r890 r10 4 x 106 r86.000 r640 r34 r9 42.000 r1.400 r18 r1.3 r8 440 r22 r180 d19 d7 4.7 roku130 dnů120 h17 h6 430 h51 h3.4 h0.67 hod5 95 (kláves.)62 (a/A,alfan)36 (alfan.)26 znakůn c 1984 ­ Gramp & Morris ˇ Systém s min. 6 znaky a jedním nealfabet. znakem ˇ 20 nejpoužívanějších ženských jmen následovaných číslicí ˇ Z těchto 200 hesel bylo vždy alespoň jedno v každém z několika desítek zkoumaných systémů Lámání hesel ˇ 1979 ­ společnost Bell ­ 86% úspěšnost (!) ˇ 1990 ­ DV Klein ­ Analyzoval 13 797 souborů s hesly (Unix) ­ Asi úspěšnost ˇ 1993 ­ ústav Bell-Northern Research 3x % 1993 ­ Zviran & Haga ˇ 106 studentů ˇ Výběr jednoho hesla a přidělení jednoho náhodného hesla ˇ Zapamatovat na 3 měsíce... bez používání(!) ­ Správně zapamatováno 35 % zvolených a 23 % náhodných ­ Poznamenáno 14 % zvolených a 66 % náhodných Problémy při vyžadovaných změnách hesel ˇ MojeHeslo09 v září a MojeHeslo10 v říjnu ˇ Jiné než předchozí ­ uživatelé zjistí délku záznamu historie hesel a ,,vyčerpají" ho: Heslo123 qwre321 jr7*&d Heslo123 ˇ Zákaz změn po nějakou dobu má za následek problém v případě prozrazení hesla Vhodná hesla ˇ Lehce zapamatovatelné, obtížně uhodnutelné! ˇ Heslo založené na delší (lehce, s nějakou pomůckou, zapamatovatelné) frázi ­ psmVTCOo24Z = Polámal Se Mraveneček, Ví To Celá Obora, O Půlnoci Zavolali Komunikace a autentizace heslem ˇ Heslo v čisté podobě je možné odposlechnout ˇ Při autentizaci se neposílá heslo samotné, ale pouze haš hesla ­ Kdo odposlechne haš nezíská automaticky heslo ­ Haš však lze použít pro podvodnou autentizaci haš hesla Protokoly výzva-odpověď ˇ Protokoly typu výzva-odpověď (challenge- response) ­ Odposlechem výzvy i odpovědi útočník moc nezíská ­ Bob se může přesvědčit o identitě Alice, bez získání jejího tajemství číslo Digitálně podepsané číslo Alice Bob výzva odpověď Personal Identification Number ˇ Levnější klávesnice ˇ Obtížněji zapamatovatelné než hesla ˇ Obvykle používány s fyzickým předmětem ˇ Někdy lze změnit podle přání zákazníka ˇ Obvykle 4-8 znaků dlouhé ˇ Procedurální omezení proti útokům hrubou silou ­ Zabavení karty při několika (3) nesprávných PINech ­ Nutnost re-aktivace záložním (delším) PINem po několika nesprávných PINech PIN a bankovní karta ˇ Oba stejnou cestou, v různé dny ˇ Osobní převzetí ­ alespoň jednoho ˇ Vlastní výběr PINu při převzetí karty ˇ On-line verifikace (off-line se z bezpečnostních důvodů nepoužívá) Klíčem bankomatu zašifrované číslo účtu, PIN a částka Zašifrovaná sůl a odpověď A/N M. Kuhn ­ ec-PIN ˇ Publikoval koncem 90. let pravděpodobný (později potvrzen jako správný) mechanismus pro PINy v systému debetních karet EuroCheque ˇ Plnou verzi příspěvku Probability Theory for Pickpockets ­ ec-PIN Guessing lze nalézt na http://www.cl.cam.ac.uk/~mgk25/ec-pin-prob.pdf PIN ve starém systému ec ˇ Nastaven bankou, klient si nemůže volit ˇ Používán německými bankami v letech 1981- 1997 ˇ Postaven na využití šifry DES (její malá síla ale není v tomto případě problém ) ˇ Vstup: část kódu banky, číslo účtu, pořadové číslo karty Výpočet PINu ­ bankomat stejné banky ˇ Posledních pět číslic kódu banky, číslo účtu a pořadové číslo karty se zřetězí ˇ Použije se DES s klíčem banky KI ˇ Využije se 3. až 5. číslice výstupu ˇ Hexa (A-F se nahradí 0-5) ˇ Případná první 0 se nahradí 1 Výpočet PINu ­ bankomat jiné banky ˇ Velmi podobně, jen místo KI je společný klíč v systému EuroCheque KP1 ˇ A podobně klíče záložní KP2 a KP3 ˇ Vypočte se samozřejmě jiný PIN (pokud nejsou KPx a KI shodné ) ˇ Přidá se offset (součet mod 10), takže je třeba na magn. proužku uložit i 3x offset Problémy ˇ Společné klíče jsou známy všem bankám v systému EuroCheque ˇ Offsety na kartě dávají velmi cenné informace ˇ Pro danou kartu a z ní zjištěné informace lze určit PIN s pravděpodobností až 1/105(!) ˇ Pro jakoukoliv kartu a tři pokusy o zadání PINu lze ,,uspět" s pravděpodobností asi 1/150 Závěr cvičení s ec-PIN ˇ Úspěch (3 pokusy) s pravděpodobností asi 1/150 ˇ Dobrý systém by měl mít 1/3000 ­ Možné PINy 1000-9999 a 3 pokusy ˇ Daný ec-PINový systém byl horší než dobrý se 3 číslicemi (1/300) J. Yan a kol. ­ práce s hesly ˇ Publikace ze září 2000 o práci s hesly pozorované na studentech prvního ročníku ˇ University of Cambridge Computer Laboratory Technical Report No. 500 ˇ The memorability and security of passwords ­ some empirical results ˇ Dostupný na http://www.cl.cam.ac.uk/TechReports/ Pokusní králíci (vědomě) ˇ 400 studentů prvního ročníku (přírodověd.) ˇ Nezainteresovaná skupina ­ jediná neprošla školením ˇ Kontrolní skupina ­ heslo s alespoň 8 znaky a jedním nealfabetickým ˇ Náhodná skupina ­ náhodné heslo (A-Z, 1-9) ˇ Skupina vstupní fráze ­ heslo založené na delší (lehce zapamatovatelné) frázi Útoky na uložená hesla ˇ Slovníkový ˇ Permutační ­ na základě slovníkového, permutace s 0-3 číslicemi a záměnami (I ­ 1, S ­ 5 ap.) ˇ Uživatelské informace (userid, jméno atd.) ˇ Hrubou silou (do 6 znaků) Výsledky útoků ˇ Nezainteresovaná skupina ­ 33 % a 2 hrubou silou ˇ Kontrolní skupina ­ 32 % a 3 hrubou silou ˇ Náhodná skupina ­ 8 % a 3 hrubou silou ˇ Skupina vstupní fráze ­ 6 % a 3 hrubou silou Dále... ˇ E-mailový průzkum mezi uživateli ­ Obtížnost na zapamatování ­ Jak dlouho měli na papíru psanou kopii hesla ˇ Záznam o resetu hesla administrátory pro zapomenutá hesla Závěry ˇ Náhodně vybraná hesla se obtížně pamatují ˇ Hesla založená na frázích jsou obtížněji uhodnutelná než naivně zvolená hesla ˇ Náhodná hesla nejsou lepší než ta založená na frázích ˇ Hesla založená na frázích se nepamatují hůře než naivně zvolená hesla ˇ Školení uživatelů nemá za následek výrazný posun v bezpečnosti hesel Doporučení 1. Používat fráze 2. Myslet na délku ˇ Unix (aA) 8, ˇ Netware (a=A) 10 3. Používat nealfabetické znaky 4. Prosazovat danou politiku volby hesel nějakým mechanismem, jinak alespoň 10 % hesel bude slabých Otázky? Vítány!!! Přístí přednáška je 24. 11. 2004 v 18:00 matyas@fi.muni.cz zriha@fi.muni.cz