Keskiviikkona Euroopan komissio julkisti mobiilisovelluksen(uusi ikkuna), joka on suunniteltu antamaan ihmisten todistaa ikänsä verkossa ilman, että heidän tarvitsee jakaa henkilötietojaan alustoille. EU-viranomaiset sanoivat sovelluksen olevan valmis ja täyttävän korkeimmat yksityisyysstandardit, ja viittasivat sen avoimen lähdekoodin ohjelmistoon todisteena läpinäkyvyydestä.

Muutamassa tunnissa tietoturvatutkijat alkoivat kuitenkin purkaa avoimen lähdekoodin koodia. Torstaihin mennessä tietoturvakonsultti Paul Moore oli ohittanut sovelluksen suojaukset alle kahdessa minuutissa(uusi ikkuna).

Kuvankaappaus EU:n iänvarmistussovelluksesta

Muut vahvistivat hänen havaintonsa. Sovelluksen nopeudenrajoitustoiminnot oli tallennettu muokattavaan tiedostoon, biometrinen tunnistautuminen voitiin poistaa käytöstä yksinkertaisella määritysmuutoksella ja arkaluonteiset kirjautumistiedot olivat saatavilla ilman suojattua laitteistosuojausta.

Komissio vähätteli löydöksiä ja kutsui julkaisua demoversioksi. Sekä Moore että ranskalainen kryptografi Olivier Blazy vastustivat tätä ja kertoivat Politicolle(uusi ikkuna) testanneensa koodin uusinta versiota löytäessään viat.

Myöhemmin komissio ilmoitti, että ongelma on korjattu, mutta tapaus osoittaa silti, kuinka haavoittuvaisia nämä iänvarmistusjärjestelmät ovat.

Mitä EU:n iänvarmistussovellus tekee ja mikä meni vikaan

EU:n iänvarmistussovelluksen avulla ihmiset voivat vahvistaa ikänsä käyttämällä passia, kansallista henkilökorttia tai luotettua palveluntarjoajaa, kuten pankkia. Alustat voivat sitten pyytää sovellusta tarkistamaan, onko joku tietyn iän ylittänyt, ilman että ne pääsevät käsiksi varsinaisiin henkilötietoihin, mikä tunnetaan myös nollatietotodistuksena.

Toteutus heikensi kyseistä rakennetta. EU:n iänvarmistussovellus tallensi salatun PIN-koodin laitteella olevaan muokattavaan määritystiedostoon, joka on erillään arkaluonteisia tietoja säilyttävästä henkilöllisyysholvista. Poistamalla muutaman arvon ja käynnistämällä sovelluksen uudelleen hyökkääjä voi asettaa uuden PIN-koodin ja käyttää samalla edellisen profiilin kirjautumistietoja.

Toistuvat arvausyritykset estävät nopeudenrajoitustoiminnot oli tallennettu samaan tiedostoon yksinkertaisena laskurina, joka voidaan palauttaa nollaksi, mikä pyyhkii kaikki tiedot epäonnistuneista yrityksistä. Biometristä tunnistautumista hallittiin yhdellä boolean-lipulla; sen kytkeminen tosi-tilasta epätosi-tilaan ohitti tarkistuksen kokonaan.

Rakennettu tarkistamaan ikiä, mutta ei turvallisesti

Kun tutkijat olivat käyttäneet koodia paljastaakseen sen viat, viranomaiset nimesivät sovelluksen uudelleen demoversioksi.

Useat kehittäjät huomauttivat, että arkaluonteiset tiedot olisi pitänyt tallentaa suojattuun enklaaviin (secure enclave), joka on nykyaikaisissa älypuhelimissa käytettävissä oleva laitteistotason suojaus ja joka tekee tällaisista hyökkäyksistä huomattavasti vaikeampia.

Haavoittuvuudet paljastavat kuitenkin ongelman, joka ulottuu tätä nimenomaista sovellusta pidemmälle. Iän varmistaminen ei ole turvallista suunnittelultaan, koska se edellyttää todellisen henkilöllisyyden yhdistämistä verkkotoimintoon. Kyseinen linkki on tallennettava jonnekin, vaikka vain lyhyeksi aikaa, ja missä tahansa se sijaitsee, siitä tulee kohde hakkereille, hallituksille ja kaikille, jotka saavat luvattoman pääsyn taustalla oleviin tietoihin. Mitä keskitetymmäksi ja uudelleenkäytettävämmäksi linkki muuttuu, sitä suuremmaksi kohde kasvaa.

EU:n iänvarmistuslain on tarkoitus olla yhtenäinen, yksityisyyden säilyttävä standardi, joka korvaa jäsenvaltioissa muotoutumassa olevan lakien tilkkutäkin, mutta komission luottamus sovelluksen valmiuteen osoittautui ennenaikaiseksi. Yli 400 yksityisyys- ja tietoturvatutkijaa kirjoitti komissiolle maaliskuussa(uusi ikkuna) pyytäen lykkäystä käyttöönotolle, kunnes iänvarmistusteknologiaa koskeva tieteellinen tutkimus vakiintuu.