Paranna tietoturvaasi kaksivaiheisella tunnistautumisella

Photo by Gilles Lambert on Unsplash

Kaksivaiheisella tunnistautumisella (englanniksi two-factor authentification tai 2FA) tarkoitetaan tunnistautumismenetelmää, jossa käyttäjän normaali kirjautuminen käyttätunnuksella ja salasanalla vahvistetaan vielä jollakin muulla tavalla. Tuo lisävahvistus voi olla esimerkiksi numerosarja, joka toimitetaan tekstiviestillä tai generoidaan TOTP-sovelluksella. Kaksivaiheinen tunnistautuminen parantaa tietoturvaa. Sen ollessa käytössä pelkkä käyttäjätunnuksen ja salasanan vuotaminen ei vielä riitä käyttäjätilin kaappaamiseen.

Tässä artikkelissa esittelemme TOTP-sovelluksen käyttöä ja kerromme miksi TOTP on monia muita vaihtoehtoja parempi menetelmä kaksivaiheiseen tunnistautumiseen. Lopuksi esittelemme vielä kuinka TOTP-sovellus Google Authenticator otetaan käyttöön Googlen palveluissa.

Mikä on TOTP?

TOTP on aikaan perustuva kertakäyttöinen salasana-algoritmi (Time-based One-Time Password algorithm). TOTP-sovellusta voidaan käyttää kaksivaiheisessa tunnistautumisessa korvaamaan esimerkiksi tekstiviestit tai koodilistat. TOTP-sovellus antaa ajoittain vaihtuvan numerosarjan, jolla vahvistetaan kirjautuminen.

TOTP:n toiminta perustuu kryptografisiin funktioihin. Kun TOTP otetaan käyttöön, palvelu antaa avaimen (shared secret), joka skannataan QR-koodina tai kirjoitetaan merkkijonona TOTP-sovellukseen. Kryptografiset funktiot käyttävät tätä avainta ja meneillään olevaa ajanhetkeä syötteenä kirjautumiskoodien generointiin. Generointi toimii siis myös ilman nettiyhteyttä.

Puhelimeen asennettu TOTP-sovellus on turvallisempi kuin monet muut kaksivaiheisen kirjautumisen menetelmät, kuten esimerkiksi tekstiviestillä tai sähköpostilla toimitettavat vahvistuskoodit. Tekstiviestin kaappaaminen vaatii hyökkääjältä vaivannäköä, mutta on kuitenkin mahdollista. Myös sähköpostitili voi joutua hyökkääjän käsiin, varsinkin jos sähköpostitilin salanasana on käytössä muissakin palveluissa.

TOTP-avain on hyvä varmuuskopioida joko tekstimuodossa tai kuvakaappauksena, ettei vahingossa lukitse itseään tililtä ulos puhelimen hävitessä. Varmuuskopiota tulee säilyttää vastaavalla huolellisuudella kuin salasanaa, sillä avaimen avulla kuka tahansa voi generoida kirjautumiskoodeja. Kaikki palvelut eivät näytä avainta tekstimuodossa.

Google Authenticator on suosittu ja helppokäyttöinen TOTP-sovellus, mutta se ei varsinaisesti tue varmuuskopiointia. Sovellukseen lisättävät avaimet on siis lisäämisvaiheessa varmuuskopioitava itse muualle. Sovelluksessa on toiminto tilien siirtämistä varten, mutta se soveltuu lähinnä kopiointiin vanhasta puhelimesta uuteen. Vanhan puhelimen näytölle generoituvan QR-koodin kuvakaappaaminen on estetty, eikä sen hyödyntäminen varmuuskopiointiin ole mutkatonta. Google Authenticator on saatavilla Androidille ja iOS:lle.

Muita TOTP-sovelluksia ovat esimerkiksi Authy, Duo Mobile, FreeOTP ja andOTP. Authy ja Duo Mobile mahdollistavat varmuuskopioinnin pilveen. FreeOTP ei tue varmuuskopiointia, mutta andOTP:sta voi kopioida avaimet JSON-muodossa (plain-text tai kryptattu) haluamaansa paikkaan.

Google-tilin valmistelu kaksivaiheiseen kirjautumiseen

Seuraavaksi tutustumme miten kaksivaiheinen kirjautuminen otetaan käyttöön Googlen palveluissa. Sen jälkeen asennamme Google Authenticatorin ja linkitämme sen Google-tiliin. Tässä ohjeessa kirjaudutaan Google-tilin asetuksiin tietokoneen selaimella, sillä tämä menettely mallintaa parhaiten miten käyttönotto toimii muissakin palveluissa.

1. Kirjaudu Google-tilillesi ja etene valikoissa seuraavasti: Tietoturva > Googleen kirjautuminen > 2-vaiheinen vahvistus.

2. Mikäli Google-tililläsi on jo käytössä jokin kaksivaiheisen vahvistuksen menetelmä, pitäisi sivulla näkyä suoraan vaihtoehto ”Google Authenticator”. Tässä tapauksessa voit edetä tässä artikkelissa suoraan Google Autheticatorin asennus- ja käyttöönotto-ohjeisiin. Muussa tapauksessa jatka näiden ohjeiden seuraamista.

Google on avannut ikkunan, jossa esitellään kaksivaiheista vahvistamista. Voit lukea sivun läpi ja klikata sitten eteenpäin.

3. Seuraavalla sivulla valitaan puhelin, jota halutaan käyttää. Mikäli et näe haluamaasi puhelinta listalla, tulee sinun lisätä kyseinen Google-tili haluttuun puhelimeen:

Android: Mene Settings > Accounts > Add account > Valitse Google ja kirjaudu sisään.

iOs: Asenna Google-sovellus ja kirjaudu sisään Google-tilillesi.

4. Google ei anna suoraan valita Google Authenticatoria kaksivaiheiseen vahvistamiseen ja ensin täytyy ottaa käyttöön Google Prompt (oletus), security key, tekstiviesti tai puhelut. Google Prompt on puhelimeen aukeava ponnahdusruutu, johon vastataan kyllä tai ei. Pidä oletusvalinta ja mene eteenpäin.

5. Paina kyllä puhelimeesi aukeavaan ponnahdusruutuun. Tämän jälkeen pitää vielä varmuuden vuoksi asettaa varalle toinen tapa vahvistuskoodien toimittamiseen. Valitse tekstiviesti tai puhelu ja kirjoita saamasi koodi seuraavan sivun kenttään. Tekstiviestien saapuminen kestää välillä kauan, joten puhelu voi olla nopeampi tapa (puhelussa koodi tulee ääninauhalta).

6. Tämän jälkeen kysytään vielä kerran haluatko kytkeä kaksivaiheisen vahvistuksen päälle. Vastaa siihen kyllä.

Google Authenticatorin asennus ja käyttöönotto

1. Google Authenticator -sovelluksen asentaminen älypuhelimeen on suoraviivaista. Sovelluksen voi asentaa sovelluskaupasta kuten minkä tahansa muunkin sovelluksen. Sovellus on ilmainen ja toimii asennuksen jälkeen myös offline-tilassa.

2. Sovelluksessa aukeaa ensimmäisellä käynnistyksellä muutamia ohjenäyttöjä. Selaa ne loppuun ja pääset näkymään, jossa voi lisätä avaimen sovellukseen. Nyt Google Authenticator on asennettu ja se on valmiina vastaanottamaan avaimen. Jätä puhelin odottamaan tähän tilaan.

3. Tietokoneen selain pitäisi olla tässä vaiheessa Google-tilin asetuksissa sivulla ”2-vaiheinen kirjautuminen” (Tietoturva > Googleen kirjautuminen > 2-vaiheinen vahvistus). Selaa kohtaan Authenticator-sovellus ja klikkaa ”määritä”. Aukeavassa ikkunassa voit valita puhelimesi tyypin:

4. Tämän jälkeen aukeaa näkymä, josta puhelimeen voi skannata viivakoodin. Valitse nyt puhelimestasi ”Skannaa viivakoodi”.

Skannauksen jälkeen voit halutessasi painaa vielä ”Eikö lukeminen onnistu?” -linkkiä saadaksesi tekstimuotoisen avaimen. Skannattuasi avaimen Google Authenticatoriin, sovelluksen pitäisi näyttää kutakuinkin tältä:

Vahvistuskoodin perässä näkyy pienenevä piirakkakuvio, joka kertoo kauanko kyseinen koodi on vielä voimassa. Uusi koodi generoituu oletuksena 30 sekunnin välein.

5. Etene tämän jälkeen Googlen puolella sivulle, joka pyytää vahvistuskoodia ja näppäile siihen puhelimen Google Authenticatorissa näkyvä koodi. Koodin syöttämisen jälkeen tulee painaa ”Vahvista” ennen kuin kyseinen koodi vanhenee puhelimen näytöllä.

Google Authenticator on tämän jälkeen otettu käyttöön.

Jatkossa Google-tilille sisäänkirjautumisen yhteydessä täytyy siis antaa vahvistuskoodi Google Authenticatorista. Koodin saamiseksi riittää sovelluksen avaaminen ja vahvistuskoodi on heti näkyvissä. Uusia avaimia voi lisätä näytön alareunan punaisesta pluspainikkeesta.

Huom! Jos haluat poistaa kaksivaiheisen tunnistautumisen käytöstä, tulee se tehdä ensin Googlen (tai muun käytössä olevan palvelun) asetuksista. Google Authenticatorin tai avaimen poistaminen sovelluksesta ei poista kaksivaiheista tunnistusta käytöstä.

Nyt olet parantanut merkittävästi Google-tilisi tietoturvaa. Seuraavaksi kannattaa tarkistaa tukevatko muut käyttämäsi palvelut kaksivaiheista tunnistautumista. Tutustu myös kaksivaiheinen tunnistautuminen käyttöönottoon WordPress-sivustolla ja hyvän salasanahygienian periaatteisiin.