Monthly Archives: October 2017

ID-kaardi uuendamisest

Täna kirjeldame, mida täpsemalt kujutab endast ID-kaardi kauguuendamine “teoreetilisest turvaveast lahtisaamiseks”.

Tisklaimer: Käesolev kirjutis EI OLE soovitus kohe uuendama hakata. Enne uuendamist loe viimaseid uudiseid, uuri, kas Sulle eraelus ja tööalaselt vajalikud e-teenused juba töötavad uuendatud sertifikaatidega. Küsi sama ka oma töökoha itimehelt. Kui kahtled, siis ära hetkel veel uuenda, vaid pigem muretse endale alternatiivsed autentimisvahendid (m-ID). Kui Sul on kaks sarnast vahendit (nt ID-kaart ja digi-ID), siis ehk on kaval üht neist uuendada ja teist veel mitte.

Kiire kärtskursus

Enne uuendamist on ID-kaardil (ka digi-ID kaardil, elamisloakaardil, e-residendi kaardil) sellised elemendid:

Pärast uuendamise edukat läbimist on selsamal ID-kaardil (jne) sellised elemendid:

Oluline: et minu e-teenus ID-kaardiga kenasti edasi töötaks, tuleb muudatusi teha nii kaardiomaniku poolel – uuendada ID kaarti – kui ka teenusepakkuja poolel.

RTFM: Palun ära enne tegutse, kui oled KKK läbi lugenud ja õppevideo läbi vaadanud.

Olulisem veel: Uuendamiseks on vaja uusimat ID-kaardi tarkvara – RSA krüptosüsteemilt elliptkurvidele üleminek eeldab ID-kaardi haldusvahendi versiooninumbrit vähemalt 3.12.7.1252. Veendu, et all vasakul nurgas on just see või suurem number.

Kui uuendatud rakendus kaardi uuendamist ei paku, siis pigem on hästi ja ei peagi muretsema. Veel uuendamata kaardi olekut (ROCA turvaveast ohustatud või mitte) saab vaadata siit.

Aeglane sissejuhatus

ID-kaardi kiip on sisuliselt pisike arvuti. Kasutatakse ka termineid protsessor ja mikrokontroller. Tegu on eriotstarbelise arvutiga, mis sobib põhiliselt üheks asjaks – identiteedikandjaks.

Eestis on inimese identiteet kirjas PPA vastavas andmebaasis, kuid identiteedi elektrooniliseks kasutamiseks – sisselogimiseks e-teenustesse või digiallkirjastamiseks väljastatakse inimesele identiteedikandja (vahel isegi mitu – sest on ju ka veel digi-ID ja mID jne).

Identiteedikandja sees hoitakse isiku sertifikaate – kellegi teise poolt välja antud tõestusi kaardikasutaja identiteedi kohta. Ühtlasi hoitakse kaardis krüptograafilisi võtmeid. Sertifikaati saab digitaalselt kasutada vaid koos krüptovõtmetega, mis tema juurde kuuluvad ja võtmeid omakorda (eelkõige privaatvõtit) vaid koos vastava PIN-koodiga.

Täiesti arusaadavalt peab identiteedikandja olema turvaline ning sel otstarbel kasutataksegi krüptograafiat. Konkreetne krüptograafiline algoritm, mis on ID-kaardis juba aastaid tarvitusel, kannab nime RSA, ent nüüdsest tuleb kasutusele uus algoritm – nn elliptkõverad. (Elliptkõverad on laiem mõiste, kui konkreetne krüptoalgoritm – see on üldmõiste, mille alla mahuvad mitmed sama perekonna algoritmid).

Kivi sees

Oleme standardsest kiipkaardist varem põhjalikult kirjutanud.

Lisaks pisikesele arvutusvõimsusele talitleb ID-kaart andmehoidlana. Selles on ette nähtud salvestusruum mõningate tähtsate bitikombinatsioonide talletamiseks. Mõningaid neist andmetest (neid, mis jäävad pildil punasest punktiirist ülespoole) saab kaardist teatud tingimustel ka välja lugeda. Seevastu osad andmetest on kindlalt lukus ega välju kaardist mitte kunagi. Kuid neid saab kaudselt kasutada mõne krüptograafilise operatsiooni – näiteks allkirjastamise – sooritamisel. Kohalelennanud vares krüpto-operatsioone sooritada ei saa – ta ei tea PIN-koode.

Pilt illustreerib Eesti ID-kaardi sees paiknevaid olulisi elemente (bitikombinatsioone).

Kõiki neid elemente saab ka elektrooniliselt uuendada. Maailmas on tavaline, et kaardi sisu saab uuendada väljaandja (ingl k issuer) juures, kelleks meil on PPA. Eestis on ka tore lisavõimalus – inimene saab uuendusprotsessi käivitada ka ise, kodust, üle Interneti.

Kauguuendamise sügav sisu

Uuendamine käivitatakse ID-kaardi haldusvahendiks nimetatud tarkvara abil. Seda programmi on kõik ID-kaardi kasutajad kindlasti ammu näinud – seda vajatakse näiteks PIN-koodide vahetamiseks. Juhul kui programm jõuab järeldusele, et lugejasse sisestatud kaart tõepoolest vajabki uuendamist, siis tekib aknasse nupp nimega “Uuenda”.

Hoiatus: kui “Uuenda” nupule kord ära vajutada, siis hakkab kell turvakaalutlustel tiksuma ning uuendus tuleb nüüd kindlasti mingi mõistliku aja jooksul (mõni nädal) lõpuni viia.

Uuendamine on oluline otsus, mida tuleb enne planeerida ja alles siis teoks teha. Kogu lihtkasutajale vajalik info on küsimuste-vastuste vormingus esitatud siin.

Lisainfo itimeestele, häkkeritele ja muudele huvilistele

Tähelepanu! See peatükk ei ole mõeldud lihtkasutajale!!! Seda peatükki loevad spetsialistid ja tugiisikud, et nad oskaksid vigu leida ja olukorda lihtkasutajatele selgitada.

Sel hetkel, kui kasutajalt küsitakse (ja saadakse) õige PIN-kood, saab moodustada krüpteeritud SSL tunneli uuendusserveri suunas. Tunneli moodustab küll arvutiprogramm, kuid selle loomise vajatakse vältimatult ID-kaardi erioskusi. Olulise turvameetmena on tunnel isikustatud ehk siis tal on eemaldamatult küljes ID-kaardi omaniku krüptograafiline identiteet. See kaitseb enamike pealtkuulamis- ja vahelthaaramisvõtete eest, lisaks hoiab selge identiteet ära mõttetud häkkimiskatsed – sest kes ikka sooviks omaenda nime alt võõraid servereid näppida 😉

SSL tunneli puhul on tegemist täpselt samasuguse kaitsega, kui internetisirvikus HTTPS veebilehtede puhul (tabalukk ja need muud värgid), ainult et vahelt puudub sirvik koos kõigi oma puuduste ja kiiksudega.

Tunneli teine ots maandub spetsiaalsesse uutmisserverisse, mis on turvalisuse mõttes erakordselt hästi kaitstud ja valvatud ning mis omakorda pöördub uuendamiseks vajalike alamteenuste poole. Kindlasti on vaja suhelda järgmiste serveritega:

  • SK ID Solutions AS – sest seal tembeldatakse uusi võtmeid ja allkirjastatakse need isiku uueks sertifikaadiks;
  • PPA – sest seal asub isikut tõendavate dokumentide andmekogu;
  • Gemalto koosseisu kuuluv AS Trüb – sest seal genereeritakse parooliümbrikud.

Liiga palju PIN-koode

Hetkel, mil kasutajalt küsitakse PIN-koodi teist korda, on ühendus ära moodustatud ning kasutajalt tahetakse juriidilist nõusolekut toimuma hakkavaks. Selle PIN-koodiga autendib kasutaja end konkreetsele alamteenusele, mis hakkab sooritama ID-kaardi uutmist. Kui nõusolek antud ja PIN sisestatud, siis siitmaalt enam tagasiteed pole – ID-kaart läheb uude olekusse, kus ta ei talitle mitte enam ID-kaardina, vaid turvalise uuendussüsteemi otspunktina.

Nüüd on ID-kaart valmis peaaegu täielikuks mäluvahetuseks. Sellest olekust saab välja nüüd juba vaid ühel moel – uuendust õnnelikult lõpetades. Võrguhäire, sidekatkestuse, kaardi väljatõmbamise vms vea puhul jääb võib ID-kaart jääda olekusse, kus inimene ise teda enam elektrooniliselt kasutada ei saa. Kui Haldusvahend enam sertifikaate ei näita, siis aitab vaid isiklik kohalevantsimine PPA teeninduspunkti. [täpsustatud 2017-10-27T1114]

ID-kaart on uuendamise hetkil üksainuke suur kõrv, mis täidab teenuseserverist turvalist tunnelit pidi saadud käske. Käskude hulk, mida sealt saab anda, on ülimalt piiratud, käsud on turvatud veel täiendava krüptograafiakihiga, mida me siinkohal arusaadavatel põhjustel ei käsitle. Ühesõnaga, häkkeritel selle tegevuse juurde asja ei ole.

Total recall

Kaardi uuendamise käigus toimuvad järgmised tegevused.

  • Kontrollitakse, kas kaardil paiknev rakendus on ajakohane. Kui mitte, siis see uuendatakse (asendatakse). Krüptosüsteemi vahetamise puhul nagu meil parasjagu käsil, tuleb rakendus vahetada vältimatult.
  • Kaardil kästakse genereerida uued võtmed (avalik ja privaatne). Kui varemalt genereeris uuendus lihtsalt uued RSA võtmed, siis seekord toimub ühtlasi üleminek elliptkõverate krüptosüsteemile.
  • Krüptotunnelit pidi saabub teenusepakkuja juurest ümbrik uute PIN-koodidega. Ümbrik on omakorda krüptograafiline, see tuleb dekrüpteerida. Muide, pärast õnnelikku uutmist saab inimene PIN-koodi alati haldusvahendiga ära vahetada, seega pole üldse oluline, et koodid saabuvad üle (mis siis, et mitmekordselt turvatud, aga ikkagi avaliku) sideliini. NB! Vanu PIN-koode tagasi vahetada on ebaturvaline ja ebailus.
  • Kaardis loodud avalik võti saadetakse krüptotunnelit pidi sertifitseerimisteenuse osutaja juurde. Meie praegustes oludes on selleks SK ID Solutions AS.
  • SK sooritab ettenähtud toimingud (isikupäringud, vanade sertifikaatide peatamine vms).
  • Seejärel SK lisab kaardist saabunud avalikule võtmele mõningast lisainfot ning allkirjastab tulemuse omaenda võtmega – saadut nimetatakse sertifikaadiks.
  • Kaart tõmbab SKst endasse kehtiva korra kohaselt valmendatud sertifikaadi ja salvestab selle edaspidiseks
  • Hetk enne õnnelikku lõppu toimub veel ka käepigistus PPAga – et nende tark identiteediandmebaas ikka teaks, et vana plastiku sees asuvad nüüd tutikad värsked sertifikaadid (seerianumbritega X ja Y).

Kuivõrd kaardis sisaldub ju tegelikult kaks komplekti võtmeid+sertifikaate –  üks autentimiseks, teine allkirjastamiseks – siis viiakse kirjeldatud operatsioonid läbi mõlemi komplektiga. Kasutaja mugavuseks käsitletakse võtmeid kenasti paralleelselt, mitte järjest.

Ent miks küsitakse uutmise käigus PIN1-koodi nii palju kordi (kõigest viis)? Põhjus on lihtne. Uutmiseelsed küsimised on selleks, et erinevate serveritega ühendusi moodustada, uutmine juriidiliselt vormistada ning teenusepakkujalt saadud parooliümbrik dekrüpteerida.

Uutmisjärgsed (uute PIN-koodide) küsimised annavad juriidilise aluse uute sertifikaatide moodustamiseks ning aluse PPA-le uute sertifikaatide juriidiliseks sidumiseks vana isikuttõendava dokumendiga. Vähemaga lihtsalt ei saa hakkama – muidu tuleks PIN-kood vahepeal kusagile salvestada ning see poleks enam ei turvaline ega kasutaja seisukohast aus.

Kontrollküsimused

Sa ju ikka teadsid, et PIN-koode ei saadeta mitte kunagi ühelegi serverile, et need on vajalikud privaatvõtme toimingu käivitamiseks kaardi sees? PIN-koodid liiguvad juhetpidi kaardini (ja klaviatuuriga lugeris satuvad sinna suisa otse – ükski pank ega e-teenus neid koode ei näe).

Ning kindlasti Sa aimasid, et uutmisprogramm on põhjalikult turvatestitud?!