010627000 Tietoturvan Perusteet Autentikointi Pekka Jäppinen 10. lokakuuta 2007 Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007
Autentikointi Aidoksi/oikeaksi tunnistaminen Tarvitaan esimerkiksi oikeuksien myöntämiseen Luottamuksellisuus Erialisia kohteita Henkilö, yritys, laite, tuote Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 1/38
Reaalimaailman autentikointi 1. Henkilön tunnistaminen Luottamussuhde Reaalimaailmassa: naama, eleet, tavat... 2. Kaupan tunnistaminen Kaupan nimi Tuotteet ikkunalla Tuttu myyjä 3. Tuotteiden tunnistaminen Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 2/38
Onko raha aito? Onko tuote se mitä haluttiin Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 3/38
Digitaalinen autentikointi 1. Henkilön tunnistaminen Ei fyysisiä tunnisteita suoraan käytössä. Salasanat, digitaaliset allekirjoitukset, varmenteet, biometriikka. (a) Henkilön tunnistaminen paikallisesti (b) Henkilön tunnistaminen etänä 2. Kaupan tunnistaminen Kuinka tunnistaa rehellinen verkkokauppa huijarista Entä kauppias? huuto.net, ebay Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 4/38
Varmenteet Autentikoinnin toteutukseen paljon erilaisia ratkaisuja Kaksi eri perustyyppiä 1. Yhteyden autentikointi (esim. verkkopankki) 2. Tapahtuman autentikointi (kaupassa maksu) Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 5/38
Uhat autentikointia vastaan Toisena esiintyminen URL huijaukset (osoite huijaukset) Tunnistetietojen väärentäminen Autentikointi tietojen väärinkäyttö Hyökkäys autentikointia vastaan voi olla tuottoissa Muiden luottokortilla ostelu Väärennetyillä henkilötiedoilla lisäoikeuksien hankkiminen Autentikointi tietojen myynti Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 6/38
Käyttäjän autentikointi: Yleinen malli Ennen autentikointia, täytyy käyttäjän tunnistetieto olla tallennettuna tietokantaan taholla joka hoitaa autentikoinnin Autentikointi voidaan tehdä lokaalisti tai kolmannen osapuolen avulla. Yleensä kaksiosainen tapahtuma: 1. Ensin käyttäjän tunnistus (identification): Esimerkiksi käyttäjätunnuksen kirjoitus 2. Käyttäjän varmistus(autentikointi): Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 7/38
salasanan kirjoittaminen, haasteeseen vastaus, biometrisen tiedon toimittaminen Tulosta vertaillaan tietokannassa oleviin tietoihin Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 8/38
Salasanat Perustuvat johonkin mitä käyttäjä tietää Esim. salasana korkeakoululla Salasanasta yleensä hash tallennettuna, käyttäjätunnus suojaamatta Unix käyttää DESiä 13 kierroksella, jonka seedinä on salasana Ongelmat: Salasanan pituus Bruteforce. sanakirja hyökkäykset vrt. avaimet. Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 9/38
Kuinka muistaa pitkä salasana? Konetehot ovat jo niin isoja, että riittävän pitkän salasanan muistaminen. on vaikeaa Tämän päivän turvallinen salasana on huomisen heikko salasana. Vaikeat salasanat kirjoitetaan yleensä lapulle ylös, joka on itsessään riski. Salasana lappua tulee säilyttää turvassa Tutkimus tuloksia: 16 prosenttia salasanoista oli 3 merkkiä tai lyhyempiä 86% salasanoista oli helppo selvittää Salasanojen varastaminen on helppoa Samoja salasanoja käytetään useassa paikassa Paikan A salasana kirjoitetaan vahingossa paikkaan B yritettäessä Ihmiset antavat helposti tietoja käyttämistään järjestelmistä kun luvataan alennuksia tai muita etuja. Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 10/38
Salasanoja jaetaan helposti muille Ystävät, työtoverit, ylläpito, puhelinlaitos jne. Yleensä työn tai toiminteen helpottamiseksi Käyttäperspektiivi: (ei näin) Ei tarvitse juosta karhua nopeammin, ainoastaan mukana olijoita Turvallisuuden takaamiseksi salasana tulisi vaihtaa säännöllisesti Brute force hyökkäystä varten hyökkääjä varten tarvitsee tiedoston jossa salasanat ja tunnukset ovat salattuna PIN koodi on lyhyt Käsin mahdollisuuksienläpikäynti on kuitenki iso urakka. Varashälyttimessä ainoastaan 10 sekunttia aikaa syöttää oikea tunnus. Toimii, koska hyökkäystä ei voida automatisoida Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 11/38
Salasanojen ja avainten turvallisuus Brute-force hyökkäys (raa an voiman hyökkäys) Symmetriset algoritmit ja tavalliset salasanat Käydään mahdolliset avaimet läpi kunnes oikea löytyy 8 bitin avain: 2 8 = 256 mahdollista avainta 8 merkkiä pitkä avain (kuvataan 64 bitillä) pienet kirjaimet: 29 8 = 5.00246413 10 11 Pienet ja isot kirjaimet(29 2) 8 = 1.28063082 10 14 kaikkimahdolliset bittikuviot 2 88 = 2 64 = 1.84467441 10 19 Asymmetriset algoritmit Etsitään salainen avain julkisen avaimen pohjalta Etsitään suuren luvun tekijät (RSA) Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 12/38
Diskreetit logaritmien ongelman selvittäminen Purkunopeuden arviointi paljon vaikeampaa 1977 Ron Rivest (R kirjain RSA:ssa) laski 125-numeroisen luvun tekijöihin jakoon menevän 40 quadriljoonaa vuotta 1994 129-numeroinen luku jaettiin tekijöihin Kone tehon kasvaessa avainten läpikäynti aika pienenee Hyvä salasana Sanakirja hyökkäys ei toimi Tarpeeksi pitkä Hyökkäjä ei jaksa odottaa vuosia salasanan selviämistä Pitkä salasana vaikea muistaa, kuinka tallettaa salasana turvallisesti, jos sitä ei muista? Entropia Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 13/38
Epävarmuustekijä Mitä enemmän mahdollisuuksia (satunnaisuutta) sitä suurempi entropia Mitä tasaisemmin satunnaisuus jakautuu kaikkien mahdollisten tapahtumien kesken, sitä suurempi entropia Kirjaimen esittämiseen käytetään 8 bittiä Englannin kielessä yhden kirjaimen entropiaksia on laskettu alle 1.3 Pelkkiä kirjaimia käytettäessä tarvitaan pitempi salasana, kuin jos mukana on myös erikoismerkit Sanakirja hyökkäys. L0phtcrack - ohjelma käy 400 MHZ:n quad pentiumilla 8 Megatavun sanakirjan läpi muutamassa sekunnissa 128 bitin suojaus NT:ssä Heikkoutena salasana Algoritmi voi hyväksy 128 bittiä, mutta salasana ei anna niin paljon > Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 14/38
suojaus ei ole 128 bittiä. Avain lauseet Käyttävät yksisuuntaisia funktioita Käyttökelpoisia myös julkisen avaimen systeemien kanssa Mikä lause on tarpeeksi pitkä Informaatioteorettinen nyrkkisääntö : 5 sanaa tuottaa 4 tavua (32bittiä) salasanaa (englannin kielessä) Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 15/38
Brute-force vuoden 1995 koneteholla salasanoja vastaan Salasanan pituus 4 5 6 7 8 Pienet kirjaimet (26) 0.4 sec 12 sec 5 min 2.2 h 2.4 d pienet kirjaimet ja numerot (36) 1,7 sec 1 min 36 min 22 h 33 d alfanumeeriset kirjaimet (64) 15 sec 15 min 16 h 41 d 6.9 y tulostettavat merkit (95) 1.4 min 2.1 h 8.5 d 2.2 y 210 y ASCII merkit (128) 4.5 min 9.5 h 51 d 18 y 2300 y 8-bittiset ASCII merkit(256) 1.2 h 13 d 8.9 y 2300 y 580000 y Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 16/38
Yhdistelmä salaimissa symmetrisen ja asymmetrisen avaimen tulisi olla yhtä vahvoja. Järjestelmän vahvuus on yhtäsuuri kuin sen heikoin lenkki Symmetrinen Asymmetrinen (RSA) 56 512 64 768 80 1024 112 1792 128 2560 Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 17/38
Termodynamiikka Toinen näkökulma avaimen pituuteen. Eli kuinka suurista luvuista onkaan kyse. Termodynamiikan 2. laki: informaation esittämiseen tarvitaan tietty määrä energiaa Yhden bitin tilanvaihdos vaatii kt verran energiaa (k= boltzmannin vakio, t = lämpötila) k = 1.38 10 16 erg/kelvin Maailmankaikkeutta ympäröivä llämpötila on 3.2 Kelviniä Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 18/38
Ideaalitietokone kuluttaa 1.38 10 16 erg 3.2K = 4.4 10 16 erg energiaa, joka bitin vaihtoon 3.2 kelvinin lämpötilassa Aurinko tuottaa energiaa 1.21 10 41 erg vuodessa Antaa energiaa 2.7 10 56 yksittäiseen bitin siirtoon 2 187 1.96 10 56 riittää 187 bittisen avain avaruuden läpikäyntiin (2 188 3.92 10 56 ) Dysonin kehä auringon ympärillä keräisi 32 vuodessa ilman häviötä energiaa määrän joka riittäisi 192 bittisen avain avaruuden läpikäyntiin 2 5 = 32, 187 + 5 = 192 Supernovan räjähdys tuo energiaa 10 51 erg Pekka Jäppinen, Lappeenranta University of Technology: October 10, 2007 19/38
Riittää 219 bittisen avain avaruuden läpikäyntiin PGP:n symmetrinen avain on 256 bittiä 2 256 1.16 10 77 Perinteiselle tietokoneelle riittävä raakaa voimaa vastaan Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 20/38
Biometriikka Tunnistus tapa: jotakin mitä olet Ääni, verkkokalvo, sormenjälki, käsiala Reaalimaailmassa tunnistus perustuu toisen ulkoisiin piirteisiin. Puhelimessa henkilö tunnistetaan äänen perusteella Passissa tunnistus perustuu kuvaan Digitaalisessa maailmassa biometrinen tunnistus perustuu hahmon tunnistukseen naaman piirteet: silmien etäisyydet, kasvojen muodot jne. 3d kasvojen mallit tutkimuksen alla. Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 21/38
Sormenjäljet ja käden geometria Retina ja Iris Ääni Fyysinen allekirjoitus, kävely tyyli jne. Tunnistamisessa biometriikka tieto muutetaan digitaaliseen muotoon Sensori lukee fyysisen informaation, josta erotetaan autentikoinnin kannalta oleelliset piirteet Myös biometrisessä tunnistuksessa tulee tunnistetieto olla tallennettuna tietokantaan kuten vaikka salasana Sormenjäljestä ei voi tunnistaa henkilöä, jos ei ole mitään mihin annettua jälkeä verrataan Biometrisen informaation luonnolliset muutokset vaikeuttavat tunnistusta Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 22/38
Hiusten kasvattaminen, silmälasit, sormen hikoilu Informaatio ei siis ole täysin sama Harmaa alue Hyväksytäänkö lähellä oleva sormenjälki, joka on melkein varmasti A:n vai hylätäänkö se. Jotkin ohjelmistot antavat mahdollisuuden valita mikä todennäköisyys riittää autentikointiin. Kynävarastoon pääsemisessä on parempi kallistua väärän positiivisen puoleen (eli mielummin päästetään väärä henkilö sisään kuin estetään oikean henkilön pääsy.) Ydinohjusten lähetyksessä väärä negatiivinen lienee parempi vaihtoehto (eli mielummin otetaan riski että oikea henkilö ei pääse järjestelmään, kuin että väärä henkilö pääsisi sisälle) Digitaalinen biometriikkaan perustuva tunnistus kehittyy kokoajan. Muutosten vaikutusta tunnistamiseen voidaan pienentää. Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 23/38
Hyvät puolet Biometriikkaa on vaikea väärentää Autentikointi menetelmä on käyttäjällä yleensä helppo. Huonot puolet Tiedot helppo varastaa Webbikameran kuva autentikoinnissa: voidaan ottaa A:sta tavallinen kuva ja lähettää se omana kuvana. Tarkistuksessa verrataan vain kuvia, ei tarkisteta onko kuva juuri lähettäjän. Faxatun allekirjoituksen voi kopioida toisesta dokumentista. Sormenjälkitunnistus verkon ylitse: voidaan väärentää lähtevä sormenjälkidata, sormenjäljen sijaan Sekä tiedot että menetelmä varmistettava eli varmistetaan: 1. Tietojen kuuluvan lähettäjälle Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 24/38
2. Tiedot vastaavat tallennettuja tietoja Ei selviä virhetilanteista hyvin Varastettu sormenjälkitieto on varastettu lopullisesti. A ei voi vaihtaa omaa sormenjälkeään. Automaattinen valvonta biometriikalla Esim kasvontunnistus järjestelmä jolla varmuus 98,8% Chicagon O hare lentokentäälä 250000 ihmistä päivässä 3000 väärää tunnistusta päivässä ->125 tunnissa ~ huti/30sek, eikä liikennettä edes ole täyttä 24 tuntia Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 25/38
Poletit (Token) Perustuu johonkin mitä omistaa Kuninkaan sinettisormus, Hotellihuoneen reikäkortti avain, upseerin univormu Ongelmat Tunnistaa ainoastaan poletin, ei poletin omistajaa Varastetulla poletilla pääsee sisään kuka vain Poletti voidaan kopioida Avaimen voi viedä suutarille kopioitavaksi Pitää pystyä todistamaan, että poletti on oikeasti käytössä Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 26/38
Vrt. biometriikka Luottokortti on vaikea kopioida. Luottokortin tiedot on helpompi varastaa ja käyttää niitä hyväkseen Laiskat ihmiset pitävät poletin kokoajan sisällä Esim. henkilökorttia pidetään kokoajan lukulaitteessa koneen vieressä. Polettiin yleensä yhdistetään salasana, jolla varmistetaan poletin omistajan oikeus polettiin Pankkikortit, Kännykän SIM Mikäli ei ole poletin lukijaa käytössä, on kaksi vaihtoehtoista poletin tunnistetapaa 1. Haaste - vastaus (challenge-response) Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 27/38
Kone antaa haasteen. Käyttäjä syöttää haasteen polettiin Poletti antaa vastauksen haasteeseen, jonka käyttäjä syöttää koneelle 2. aika pohjainen Poletissa pyörii tekstiä. Käyttäjä syöttää poletissa tunnistus hetkellä olevan tekstin koneelle SecurID token toimii näin. Täydessä systeemissä näiden lisäksi voidaan käyttää vielä lisä salasanaa Tärkeää on, ettei hyökkääjä voi tietää miten haasteen vastaus lasketaan, tai kuinka poletin teksti riippuu ajasta. Lukijaton systeemi on yhtä vahva kuin poletin lähdekoodi Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 28/38
Reverse engineering suurin uhka. Salasanan kirjoittaminen paperille muuttaa salasanan poletiksi Jotain mitä tietää muuttuu jotain mitä omistaa Salasana muuttuu omistetuksi paperipalaksi. Samat ongelmat kuin muillakin poleteilla. Salasanalista Turvallisuus riippuu paperin säilytys tavasta. Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 29/38
Asymmetrinen salaus autentikoinnissa Haaste-vastaus malli Lähetetään haaste salattavaksi salaisella avaimella (tai salattuna julkisella avaimella) Vastauksena salattu/purettu haaste Satunnaisten viestien salaus on tietoturva riski. Lasketaan haasteesta hash joka salataan Lasketaan puretusta haasteesta hash Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 30/38
Julkisen avaimen infrastruktuuri (PKI, Public Key infrastrucuture) Julkisten avaintenvarmistus järjestelmä Yhdistetään julkinen avain ja identiteetti toisiinsa eli julkisen avaimen autentikointi Kolmas luotettu osapuoli varmentaa avaimen kuulumisen tietylle henkilölle Sertifikaatti Kolmannen osapuolen (CA), certificate authority) allekirjoittama tiedosto joka pitää sisällään tunnistetiedot ja julkisen avaimen Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 31/38
Mukana usein myös voimassa olo aika. CRL (Cerfitificate Revocation List) Lista käytöstä poistetuista sertifikaateista, vrt. kadonneet luottokortit. Erilaisia malleja X.509, PGP, SPKI Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 32/38
Autentikointimenetelmien yhteiskäyttö Esimerkiksi PAM (pluggable authentication module) Käyttöjärjestelmä tarjoaa autentikointi palvelun jonka kautta eri ohjelmille voidaan määritellä eri autentikointi menetelmät Autentikoinnin onnistumiseksi voidaan määritellä että käyttäjän täytyy läpäistä usempi menetelmä Useamman menetelmän yhteiskäyttö lisää oikein toteutettuna turvallisuutta. Useamman menetelmän yhteiskäyttö joissa riittää että vain joku menetelmistä läpäistään heikentää turvallisuutta Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 33/38
Useampi mahdollinen kohde jota huijata Turva on yhtä vahva kuin heikoin lenkki Esim. Biometrisessä passissa ei biometriikka tiedosta ei hyötyä, jos tullimies päästää läpi kuvan pohjalta biometrisen tunnistuksen epäonnistuessa. Turvallista menetelmää ei pidä pystyä ohittamaan turvattomalla Esim. Unohtuneen salasanan saanti tai muuttaminen tietämällä äidin serkun kaiman nimen. Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 34/38
SSO (single sign-on) Autentikointi yhteen palveluun/laitteeseen joka hoitaa autentikoinnin muualle Helpottaa käytettävyyttä Vähemmän salasanoja muistettavana Tietoturvariskit kasvavat Pääautentikointi menetelmän murtuessa hyökkääjä pääsee hyödyntämään murrettua identitettiia useassa paikassa Luottamus kysymykset ongelmia Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 35/38
mihin/kehen voi luottaa toisen henkilön identiteetin varmistuksessa Erilaisia ratkaisuja eritasolla Project Liberty /Liberty alliance (palvelut autentikoivat asiakkaansa toisilleen) Kerberos (erillinen autentikointi palvelu) Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 36/38
Autentikointiprotokollat Perusmalli 1. A kirjoittaa käyttäjä tunnisteen ja salasanan asiakasohjelmalle, joka lähettää tiedot palvelimelle (a) Palvelin tarkistaa tietokannasta että käyttäjätunnus ja salasana pari on oikein. Ongelmana on, että salasana on näkyvänä tietokannassa Ratkaisu: lasketaan salasanasta hash joka talletetaan Salasana liikkuu kuitenkin suojaamatta Ratkaisu: salataan yhteys ennen autentikointia Kerberos malli Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 37/38
A ja B omistavat pitkäikäisen salaisuuden, joka on jaettu kerberos palvelimen kanssa 1. A lähettää pyynnön Kerberos palvelimelle, että voi kirjoittautua sisään B:n palvelimelle 2. Kerberos palvelin tarkistaa että A:lla on oikeus päästä B:n koneelle 3. Kerberos palvelin lähettää A:lle tiketin, jonka A voi antaa B:n palvelimelle, sekä yhteysavaimen jolla A voi todistaa olevansa A 4. A käyttää yhteysavainta luodakseen autentikaattorin 5. A lähettää autentikaattorin ja tiketin Bobille 6. B tarkistaa kaiken. Jos kaikki on ok, B päästää A:n sisään Pekka Jäppinen, Lappeenranta University of Technology: 10. lokakuuta 2007 38/38