10. huhtikuuta 2024

Yksinkertainen kysymys sähköpostiosoitteista

Kirjoitin 15 vuotta sitten blogissani "Yksinkertainen kysymys salasanoista", kannattaa lukea se. Mutta kysytään nyt vastaavanlainen kysymys sähköpostiosoitteista: Miksi ihmiset eivät käytä kahta eri sähköpostiosoitetta?

On toki kätevää pitää vain yhtä sähköpostiosoitetta, mallia etunimi.sukunimi@gmail.com. Henkilö löytyy helposti, eikä tarvitse muistella käyttäjätunnuksiaan eri paikkoihin, kun tuo toimii siinäkin. Tuossa tavassa on kuitenkin huomattavia tietoturva- ja yksityisyydensuojaongelmia, joita juuri kukaan ei tunnu ymmärtävän. Koska tuo sähköpostiosoite on semijulkinen ja saatavilla helposti kenestä tahansa, sitä on mahdollista käyttää erilaisiin hyökkäyksiin nettipalveluita vastaan mm. "Yleisimpien nettipalveluiden hakkerointi salasana resetoimalla" ja vaikkapa iPhonen spämmäämiseen salasanan resetointipyynnöillä.

Miksi ihmiset eivät käytä tärkeissä palveluissaan ja varmistussähköpostina toista, jotain satunnaisen oloista sähköpostiosoitetta - johon he eivät normaalioloissa koskaan edes kirjaudu sisälle?

Tämä toinen sähköpostiosoite olisi salainen, sitä ei jaettaisi muille, sitä käytettäisiin korkeintaan tärkeisiin palveluihin käyttäjätunnuksena ja palautussähköpostina kaikille palveluille jne. mallia AppleID ja Protonmail jne. Se olisi mallia satunnainen.satunnainen@protonmail.com. Koska kukaan muu ei tietäisi sitä, he eivät voisi edes yrittää hakkeroida sitä. Myöskään eri palveluiden salasanojen resetointi ei onnistuisi, koska yleensä tässä pitää syöttää ko. käyttäjän käyttäjätunnussähköpostiosoite - joka ei olisi hakkerin tiedossa. Lisäksi kaikki resetointiyritykset menisivät tuonne sähköpostiin - ei siis käyttäjän normaaliin sähköpostiin. Koska tuonne sähköpostiin ei kirjauduttaisi normaalisi sisälle lainkaan käyttäjänkään toimesta, voisi sen salasanankin pitää entistä paremmassa turvassa, vaikka vain salatuissa varmuuskopioissa, jonne tehokkainkaan hakkeri ei millään pääsisi käsiksi koskaan. Mikäli käyttäjän sitten pitää oikeasti resetoida salasanansa johonkin palveluun, liittyä uuteen tärkeämpään palveluun käyttäjäksi tai muuta vastaavaa, hän kaivaisi ko. salasanan varmuuskopioistaan tai muusta varmasta piilosta, kirjautuisi ko. salaiseen sähköpostiinsa turvallisella tietokoneella, hoitaisi asiansa ja kirjautuisi sieltä heti ulos. (Luonnollisesti tämä salainen sähköpostitili pitäisi myös olla suojattu kaksivaiheisella kirjautumisella jne.)

Mitä tuonne salaiseen sähköpostiin sitten ei pidä ohjata ja mihin sitä ei pidä käyttää? No, koska sinne ei ole tarkoitus kirjautua sisään kuin poikkeustapauksessa, normaaleja, vähäpätöisiä nettipalveluita kuten keskustelufoorumien käyttäjätunnuksia, ei pidä laittaa sen taakse. Myöskään viranomaisviestintään sitä ei pidä antaa - viranomainen ei muutenkaan sähköpostise mitään tärkeää kerro, korkeintaan laittaa viestin, että viranomaispalvelussa on luettavana viesti tms. Luonnollisestikaan sitä ei pidä käyttää, kun tilaa jotain tavaraa netin kautta tms. Salaista sähköpostia tulee käyttää vain ja ainoastaan palautussähköpostina tärkeisiin palveluihin, sekä käyttäjätunnuksina tärkeisiin palveluihin, ei muuhun.

Tietoturvan- ja tietosuojan taso nousee huimasti tällä yksinkertaisella vinkillä, joten suosittelen ottamaan tämän käyttöön välittömästi.

23. helmikuuta 2024

Windows Hello PIN-koodin haavoittuvuus

Windows Hello mahdollistaa Windows-tietokoneelle kirjautumisen esim. PIN-koodia, sormenjälkeä tai kasvokuvaa käyttäen. Tällöin Windows käyttää tietokoneen TPM-sirua käyttäjätietojen suojaukseen ja menetelmä on periaatteessa yhtä turvallinen kuin TPM siru on. Aiemmin on ollut löydöksiä, joissa Windows Hello hyödyntävät sormenjälkilukijat ovat olleet haavoittuvaisia ja mahdollistavat hakkereiden kirjautumisen paikallisesti koneelle sormenjälkilukijoiden haavoittuvuuksia hyväksikäyttäen.

Nyt löysin itse eräällä tietokoneella Windows Helloa testatessani haavoittuvuuden sen PIN-koodin käytöstä, joka on niin lapsellinen, että en tiedä, pitäisikö itkeä, vaiko nauraa: Windows paljastaa käyttäjän valitseman PIN-koodin pituuden kenelle tahansa, joka koettaa näpytellä ko. PIN-koodia tietokoneeseen – yksinkertaisesti hyväksymällä tai hylkäämällä PIN-koodin, kun oikein pituinen PIN-koodi on näpytelty!

Kokeile toki itse: Näpytä sattumanvaraisia numeroita PIN-koodikyselyyn ja laske päässäsi, miten monetta numeroa näpytät. Siinä kohtaa, kun Windows ilmoittaa PIN-koodin olevan oikea tai väärä, olet löytänyt oikein pituisen PIN-koodin sille käyttäjälle ja siihen tietokoneeseen. Luonnollisesti tämä helpottaa oikean PIN-koodin keksimistä huomattavasti ja on täten merkittävä haavoittuvuus Windows Hello PIN-koodisysteemissä.

Pakosta toki alkaa miettimään, MITEN Windows voi tämän edes tehdä? Jos PIN-koodi syötetään ja varmistetaan vain TPM-sirussa, miten Windows voi tietää, että olet syöttänyt “oikeanmittaisen” PIN-koodisi sille ja osaa syöttää sen TPM:ään varmistusta varten? Jos PIN-koodisi on 123456, ei Windows voi lähettää ensin “1”, sitten “12”, sitten “123” jne. TPM sirulle tai se laukaisisi TPM-sirun turvamekanismit, joten Windowsin pitää jollakin tavalla jonnekin kiintolevylle tallentaa oikeasti joko PIN-koodisi tai ainakin sen pituus. Mikä taas on räikeästi vastoin koko turvallisuuskonseptia, että vain ja ainoastaan TPM-siru säilöö ja tietää PIN-koodisi.


PS. Kukaan ei ole vieläkään kyennyt selittämään, miten Windows Hello suojaa EFS salaisen avaimesi, jos käytät sitä Windowsiin kirjautuessasi…salasanaa käyttäessäsi salasanastasi luodaan salausavain, jolla ko. EFS-(salainen)avain salataan ja avataan…mutta mikä ja miten tarkkaan ottaen salaa ko. EFS-avaimen, jos käytetäänkin vain (ja/tai) PIN-koodia (ja/tai) biometristä tunnistetta? TPM? Ei koko em. avain sinne mahdu, puhumattakaan esim. lukuisien eri käyttäjien EFS-avaimista. Ja jos EFS-avain salataan jollain TPM:n omalla avaimella ja tallennetaan kopio kiintolevylle, niin silloinhan kenellä tahansa käyttäjällä jolla on pääsy TPM:n avaamiseen (omalla Windows Hello PIN-koodillaan) on de facto pääsy kaikkien käyttäjien EFS-avaimien avaaviin avaimiin siellä TPM sisältä. Eli miten on? Onko tämäkin homma mokattu Microsoftin toimesta?


Edit:
Surkuhupaisaa, että KOLME PÄIVÄÄ KIRJOITUKSENI JÄLKEEN Microsoftin kehittäjä Raymond Chen otti asian puheeksi blogissaan ja vakuutteli, että kyseessä ei ole tietoturvahaavoittuvuus. Huppista. Eli taas löysin haavoittuvuuden ja taas se jätetään huomioimatta ja kertomatta, kuka sen kertoi. Noh, tämä on tämmköstä.