6. maaliskuuta 2019

WebAuthn korvaa salasanat paskalla

W3C on vihdoin vahvistanut WebAuthn-systeemin käytettäväksi netissä ja tietokoneilla. Kyseessä on systeemi, jossa käyttäjän ei tarvitse muistaa, eikä käyttää lainkaan salasanoja, vaan tunnistautuminen hoidetaan käytännössä joko esim. puhelimen biometrisellä tunnistautumisella tai Yubikeyn kaltaisella tietokoneeseen laitettavalla tikulla. Tämä on periaatteessa siis "jotain, jota vain sinulla on" -tunnistautuminen. Kuulostaa kätevältä, mutta on itse asiassa hyvin pitkälti pelkkää tietoturvatonta paskaa.

Ai miksi?

Salasana perustuu "jotain, jota vain sinä tiedät" -periaatteeseen. Se on nupissasi. Sitä ei voi varastaa sieltä suoraan mitenkään, vaan pitää käyttää jotain epäsuoraa keinoa. Salasanan kaappaaminen edellyttää joko salasanan arvaamista (mahdotonta, jos salasana on vaikea), tai fyysistä pääsyä siihen laitteeseen, jolla salasanan näpyttelet (esim. näppäimistö) keyloggerin asentamista varten. Lisäksi voit muuttaa aina salasanaasi, tehden kerran varastetusta salasanasta käyttökelvottoman. Salasanaa voidaan lisäksi käyttää helposti salaamaan esimerkiksi salausavaimet ja muut arkaluontoiset tiedot muodostamalla siitä yksisuuntaisesti salausavain, eikä ole olemassa mitään vippaskonstia päästä sen läpi: Salasana pitää oikeasti tietää, jotta salauksen voi silloin purkaa. Salasanojen luomiseksi, muistamiseksi ja käyttämiseksi voi käyttää esim. LastPass-systeemiä tai vaikkapa KeePass Password Safe -ohjelmaa, jotka ovat molemmat ilmaisia.

Biometrinen tunniste sen sijaan on huijattavissa esimerkiksi yksinkertaisella valokuvalla tai muutoin syöttämällä biometriset tietosi niitä kyselevään härveliin. Et voi ikinä muuttaa omia biometrisiä tietojasi, joten kerran karkuun päässeenä tämä tunnistusmenetelmä on ikuisesti vaarantunut kohdallasi - eli käytännössä jo alunperinkin se on vaarantunut kohdallasi, koska sormenjälkiäsi jne. voi hyökkääjä napsia talteen mistä huvittaa. Biometrisellä tunnisteella ei voi luotettavasti salata yhtään mitään yllä olevista syistä johtuen: Se on helposti muidenkin saatavilla, joten myös siitä luotu salausavain on muiden saatavilla helposti.

Yubikeyn kaltainen systeemi perustuu tikussa olevaan salaiseen avaimeen ja sen aktivointiin painalluksella (turvallinen) tai viemällä se puhelimen lähelle (NFC -> epäturvallinen). Systeemi on sinällään itsessään hyvin turvallinen, sitä ei voi väärentää, ei edes kopioida käytännössä mitenkään ja se mahdollistaa helpon ja tehokkaan tunnistautumisen joka paikkaan. Siinä on vain yksi suuri vika, joka tekee siitä käytännössä käyttökelvottoman: Kuka tahansa voi käyttää sitä, saatuaan sen fyysisesti haltuunsa. Se ei vaadi pin-koodia tai muutakaan, pelkkä napin painallus riittää. Niin, sanot, mutta voihan salasanankin saada haltuunsa jos saa fyysisen pääsyn tietokoneelle, jossa se naputellaan? Niin voi, mutta on eri asia saada fyysinen pääsy kotonasi lukkojen takana olevalle tietokoneelle, kuin saada fyysinen pääsy mukanasi kanniskeltavaan avaimeen! Lisäksi, jos se varastetaan sinulta, et voi peruuttaa sitä mitenkään ja sen varastanut henkilö saa ikuisen pääsyn kaikkiin nettitileihisi, etkä voi edes sulkea häntä mitenkään niistä pois enää ikinä. Periaatteessa tämmöisen tikun salausavaimia voidaan sentään käyttää luotettavaan salaukseen, salaamalla haluttu asia satunnaisella avaimella ja salaamalla tuo salausavain tikun sisältämällä julkisella avaimella (ja säilömällä tuo saatu avain vaikkapa salattavan tiedon mukana).

WebAuthn olisi hyvä systeemi kaksivaiheiseen kirjautumiseen, mutta ei muuhun. Ja kaksivaiheinen kirjautuminenhan meillä on jo olemassa ja käytössä ennestään, joten mitä virkaa WebAuthn on? Ei mitään. Kaksivaiheiseen kirjautumiseenhan esim. Yubikeyta käytetäänkin tänä päivänäkin (U2F). Siinä salasanasi ("Jotain, jota tiedät") LISÄKSI sinun pitää todistaa, että olet sinä käyttämällä "jotain jota sinulla on" (eli se Yubikey). Toinen tehokas kaksivaiheisen tunnistautumisen menetelmä on käyttää TOTP:ia, eli esim. Google Authenticatoria, jossa tietystä salaisesta siemenluvusta luodaan kerran minuutissa, kellonajasta laskien, perustuva 6-numeroinen tunnistusluku kännykässäsi olevassa sovelluksessa. Nämä kaksivaiheiset tunnistautumismuodot suojaavat tehokkaasti tiliäsi myös siinä tapauksessa, että hyökkääjä arvaa tai muutoin saa tilisi salasanan haltuunsa, ne kannattaa ehdottomasti ottaa käyttöön.

Sen sijaan WebAuthn:sta kannattaa pysyä kaukana. Ainakin niin kauan, kunnes joku kehittää Yubikeyn kaltaisen tikun, jossa on turvapiirin kontrolloima pin-koodin syöttö tms. jolloin varastettua tikkua ei voi käyttää tunnistautumiseen sinuna. Ja tämäkin vain siinä tapauksessa, että sinulle jää aina mahdollisuus resetoida tilisi tunnistautumistiedot salasanalla, etkä ole 100%:sti tuon tikun varassa (sehän voi myös vaikkapa kadota).

Ei kommentteja:

Lähetä kommentti