You are here: TUTWiki>Tietoturva/Tutkielmat>SalonenJ?>2005-08 (revision 1)

Ilkka Jaakkola:

Toimikorttien ja niiden lukulaitesysteemien turvallisuus

Johdanto

Lisääntyvä verkostoituminen ja palveluiden sähköistyminen on ollut auraamassa tietä toimikorteille. Sähköisissä ympäristöissä on saavuttu tilanteeseen, jossa salasanallinen autentikointi ei ole enää tarpeeksi riittävä saavuttamaan luotettavaa käyttäjän todennusta. Teknologian kehityksen myötä tämä aukko tietoturvallisuudessa pystytään korvaamaan toimikorteilla. Niitä käyttämällä todentaminen perustuu vahvempiin kryptografisiin keinoihin, joilla saavutetaan parempi tietoturvallisuus. Niinpä erilaisiin toimikortteihin ja niiden lukulaitteisiin törmää yhä useammin jokapäiväisessä elämässä.

Harjoitustyössä käsitellään toimikorttien ja niiden lukulaitteiden tietoturvallisuutta. Työn tavoitteena on selventää näiden korttien ja laitteiden tietoturvallisuusnäkökulmia olettaen, että lukijalla on tietoturvallisuudesta perustietoja valmiina. Työ painottuu enemmän toimikortteihin ja niiden tekniseen toimintaan sekä niiden tietoturvallisuuteen yleisesti, mutta myös laitesysteemien tekniikkaa ja tietoturvallisuusaspekteja käsitellään. Työn ulkopuolelle on rajattu yksittäisten toimikorttien ja laitesysteemien toiminnat ja yksityiskohdat. Lisäksi laitesysteemejä käsitellään hyvin pinnallisella tasolla. Työ pyrkii siis paneutumaan toimikorttien ja niiden lukulaitteisiin hyvin yleisellä tasolla.

Mitä ovat toimikortit?

Toimikortiksi (älykortiksi) määritellään standardikoon mukainen muovinen kortti, johon on integroitu siru, joka pystyy prosessoimaan tietoa eli tekemään muutakin kuin muistamaan. Sirun prosessorin kantava ajatus on, että se mahdollistaa datan tallennuksen ”read-only”, ”added-only”, ”updated-only” tai ”not acces” muodossa ja siten lisäten tietoturvallisuutta. Se siis mahdollistaa autentikoinnin, todentamisen ja transaktioiden prosessoinnin. Muun muassa kortin mitat, prosessorin paikat ja input/output liitännät ovat tarkasti määriteltyinä ISO 7816 standardissa. [3] Standardisointi onkin välttämätöntä korttien toiminnan ja yhteensopivuuksien kannalta, koska vuonna 2005 kortteja oli yhteensä maailmalla jopa 2,325 miljardia [5].

Toimikorttien jaottelu

Toimikortit voidaan jakaa neljään luokkaan: henkilötunnistuskortit, puhelinkortit, monisovelluskortit ja pienen autentikoinnin antavat kortit. Korttien kaksi suurinta erottavaa tekijää ovat sirun sisältämä muistikapasiteetti ja sirun käyttämä teho. [2] Kuvan 1 nelikenttä havainnollistaa luokittelua.

kuva1.JPG

Toimikorttien ja laitesysteemien tekniset turvallisuusmenetelmät

Toimikortit

Kortit voidaan jakaa ominaisuuksien lisäksi myös teknisten turvallisuusmenetelmien mukaan kahteen osaan. Ne ovat kortin tarjoama tietoturvallisuus ja kortin mahdollistama tietoturvallisuus. Riippuen hieman toimikortista sen tarjoamaa tietoturvallisuutta rajaa hyvin paljon sirun fyysinen koko, joten yleensä ei ole mahdollista implementoida siruun useita algoritmeja. Niinpä tämä yleensä tarkoittaa symmetrisen avaimen algoritmeissa DES:ia ja epäsymmetrisissä avaimen algoritmeissa RSA:ta. [2]

Toimikorttien tekniikka

Toimikorttien arkkitehtuuri on suhteellisen yksinkertainen, kuten kuva 2 antaa ymmärtää. Toimikorttien oma tekniikka perustuu väylään, johon on sidoksissa yleensä 16-bittinen CPU [7] ja mahdollisesti oheisprosessori kryptografiaa varten [6]. Nykykorteissa muistikapasiteettia on 64kB:n perusmuisteista jopa 1MB flash-muisteihin. Lisäksi siruun yleensä sisällytetään muuttuvaa EEPROM-muistia, jonka avulla pystytään tallettamaan tietoja esimerkiksi avaimia varten. [3] Sirun liityntänä on kahdeksan niin sanottua nastaa, jotka hoitavat sirun operaatiot. Nämä nastat hoitavat mm. käyttöjännitteiden hallinnan ja maadoituksen, prosessien hoidot (esimerkiksi alustukset ja lopetukset, muistinvaraukset) ja kellon [6]. Korttien prosessointi on erittäin nopeaa ja raskainkin kryptografinen operaatio hoituu sirujen prosessoreissa alle sekunnissa. Hitaimmaksi vaiheeksi kortin prosessoinnissa jääkin sen asettaminen lukijaan ja käyttäjän verifiointi esimerkiksi PIN-koodilla. [2]

Kuva2.jpg

Laitesysteemit

Toimikorttityypit voidaan jakaa myös sen mukaan, tarvitseeko kortti fyysisen kontaktin lukijaan vai pystytäänkö lukeminen suorittamaan etäisyyksien päästä. Toimikorttityyppejä ovat etäkortit ja kontaktittomat kortit, jotka voidaan jakaa vielä läheisen kosketuksen vaativiin kortteihin ja kaukokytkentäisiin toimikortteihin. Laitesysteemien päätehtävänä on tarjota energia sirun prosessoimiseen sekä lukea ja operoida sirun kanssa. Laitesysteemejä on monenlaisia PC:hen kiinnitettävistä kotikäyttäjän lukijoista teollisuuden etälukijoihin. [2]

Toimikorttien leviämisen hitauden pääsyynä on infrastruktuurin puuttuminen. Vaikka toimikorttien mahdollisuudet tiedostetaan, siirtyminen perinteisistä magneettikorteista sirullisiin toimikortteihin on ollut hidasta. Syynä hitauteen ovat suuret investointikustannukset infrastruktuuriin varsinkin teollisuudessa. Investointeja ei tosin synny, ennen kuin korteille on kehitetty tarpeeksi liiketoiminnallisia palveluja. Tällä hetkellä palvelut puuttuvat, joten teollisuus ei viitsi investoida infrastruktuuriin. Näin ollaan kierteessä, josta pääsemiseen vaaditaan esimerkiksi palvelu, josta nähdään teollisuudessa selvää konkreettista hyötyä. Näin saataisiin investoinnitkin käynnistymään. Kuitenkin GSM:ssä infrastruktuurin luonti on onnistunut täydellisesti, koska infrastruktuurin (puhelimen) maksaa itse kuluttaja. Näin ollen palveluitakin on syntynyt tiiviiseen tahtiin SIM-kortin ympärille. [2]

Ovatko toimikortit ja laitesysteemit turvallisia?

Kortteihin kohdistuvat uhat

Kuten alussa todettiin, toimikortin tietoturvallisuus voidaan jakaa kortin tarjoamaan tietoturvallisuuteen sekä kortin mahdollistamaan tietoturvallisuuteen. Kortin tarjoamaan tietoturvallisuuteen voidaan pääpiirteittäin luottaa, koska DES ja RSA ovat todettu hyvin luotettaviksi algoritmeiksi [2]. Kortin mahdollistamaan tietoturvallisuuteen voidaan kuitenkin kohdistaa monia hyökkäyksiä ja niitä voidaan jaotella erilailla. Korttiin kohdistuvat hyökkäykset voidaan jakaa esim. fyysisiin, sivukanaviin ja manipuloiviin. Fyysisiin hyökkäyksiin kuuluvat hyökkäykset, joissa sirun muistia pystytään muuttamaan tai tuhoamaan, väylän liikennettä seuraamaan tai ylimääräisiä laitteita liittämään. Uhat ovat kuitenkin kovin teoreettisia, koska ne vaativat erittäin kehittynyttä teknologiaa sekä kemikaaleja ja happoja, jotta siruun pystyttäisiin pureutumaan. [2]

Sivukanavahyökkäykset tarkoittavat hyökkäystä, jossa korttia kohtaan hyökätään mittaamalla prosessointiaikoja kryptografisiin operaatioihin ja tehon kulutukseen. Mittauksen avulla saadaan selville missä päin prosessointi tapahtuu ja jopa prosessoinnin arvoja pystytään havaitsemaan. Jos esimerkiksi nämä arvot sisältävät yksityisen avaimen osia, aiheuttavat nämä hyökkäykset suuren uhan. Ongelmat ovat tiedostettu ja siruja pyritäänkin kehittämään siten, että sivukanava hyökkäykset olisivat vaikeita toteuttaa. [2]

Fyysisten ja sivukanavahyökkäysten väliltä löytyvät manipuloivat hyökkäykset. Ne pyrkivät vaikuttamaan sirun operointiin siten, että se tekisi jotain sellaista, mitä se ei normaalisti tekisi. Pakottamalla siru tekemään operaatioita, jotka päätyvät esimerkiksi virheeseen, saattavat paljastaa kolmannelle osapuolelle salaista tietoa. Onnistuessaan tämänkaltaiset hyökkäykset voivat olla tuhoisia. [2]

Muita jaotteluja

Toimikorttiin liittyvät uhat voidaan jakaa myös hieman erilaisesta, mutta hyvinkin käytännöllisestä ja reaalimaailmaan sidonnaisesta näkökulmasta. Jako voidaan tehdä kortin suunnittelun aikaisiin uhkiin, valmistuksen uhkiin sekä kortin käytön uhkiin. Uhat ovat siis jaettu kortin elinkaaren mukaan. Tulee myös huomata, että jokaiseen kortin elinkaaren vaiheen uhkaan pystytään puolustautumaan erilaisilla toimenpiteillä. Sekä suunnittelu- että valmistusvaiheessa olennaista on sisäisen tietoturvan varmistaminen. Toimikortin suunnittelussa on muun muassa tärkeää, että suunnittelu on äärimmäisen salaista ja turvattua, jottei kriittistä tietoa leviä ulkopuolisille. Korttien suunnitteluprojektit pidetäänkin hyvin pieninä, jotta kriittisen tiedon omistaa vain muutama henkilö. Valmistuksessa eri prosesseja tekevät eri ihmiset, jotta kenelläkään ei ole mahdollisuutta saada kokonaiskuvaa konkreettisesta toimikortin valmistusprosessista. Ulkoisiin uhkiin varaudutaan suunnittelussa ja valmistuksessa esimerkiksi itsenäisellä verkolla ja tarkoilla kulkulupa- ja valvontamenetelmillä. [4]

Edelliset uhat ja niiden torjunta luokittelut ottivat pääasiassa huomioon uhkia, jotka koostuvat pääasiassa vihamielisestä toiminnasta tai kolmannesta osapuolesta. Toimikortin yleiset uhat voidaan jakaa myös tietoturvallisuuden ulottuvuuksien mukaan. Kortti voi esimerkiksi hukkua tai se voidaan varastaa helposti (luottamuksellisuus). Lisäksi siru altistuu vääntymiselle ja erilaisille ympäristöille (kuumuus, kylmyys, kosteus tms.), joten se ja sisältö saattaa vaurioitua helposti (eheys). Lisäksi kattavan infrastruktuurin puuttuessa toimikortti voi olla käyttökelvoton (saatavuus).

Laitesysteemeihin kohdistuvat uhat

Laitesysteemeihin kohdistuvat uhat ovat hieman erilaisia ja eivät niin teknisiä kuin toimikortteihin kohdistuvat uhat. Laitesysteemien tietoturvallisuusheikkoudet voidaan johtaa niiden käyttämästä tekniikasta. Toimikortteihin, jotka pystyvät toimimaan etäältä, kohdistuu luonnollisesti suurempia uhkia kuin kortteihin, jotka vaativat fyysisen kontaktin. Voi olla hyvin mahdollista, että siru on yhteydessä useampaankin lukulaitteeseen yhtä aikaa. Tällainen yhteys vaatii yhteyden eheysprotokollalta (Mifare) paljon ja onkin mahdollista, että tulevaisuuden etäkortit kohtaavat samankaltaisia ongelmia kuin esimerkiksi matkapuhelinten Bluetooth-yhteydet nyt. [2]

Fyysisistä kontaktia vaativat lukulaitteet ovat luonnollisesti tietoturvallisempia. Yleensä käyttäjä pystyy näkemään, valvomaan ja todentamaan operoinnin itse, joten peukaloinnin osuus uhista jää pienemmäksi. Kuitenkaan fyysistä kosketusta vaativien lukulaitteiden tietoturvallisuutta ei saa ohittaa välinpitämättömästi. Operoidessa kortilla tulee olla tietoinen, että toimikortti syötetään vain ja ainoastaan haluttuun lukulaitteeseen. Uhkakuva toteutui Suomessa muutama vuosi sitten kun raha-automaatteja käyttäneet syöttivät korttinsa automaattiin tietämättään, että automaatissa oli ulkopuolisen asettama lukija, jonka avulla sirun tietoja pystyttiin lukemaan. Lukulaitteessa tapahtuvat häiriöt saattavat myös altistaa tiedon pääsyn ulkopuolisille tai laitteet saattavat virhetilanteissa jopa tuhota kortin.

Yhteenveto

Toimikorttien yleistyessä myös niiden kohdistuvat tietoturvallisuusvaatimukset kasvavat. Korttien toimintamahdollisuuksien lisääntyessä ja palvelujen monimutkaistuessa, tullaan kohtaamaan uusia tietoturvallisuusongelmia toimikortteihin ja niiden laitesysteemeihin liittyen. Jälleen kerran heikoin lenkki toimikorttien tietoturvallisuudessa on itse käyttäjä, joten järkevällä ja hallitulla korttien käytöllä pystytään toimimaan turvallisesti. Tällä hetkellä toimikortit voidaankin luokitella erittäin turvalliseksi tavaksi esimerkiksi suorittaa autentikointi, kunhan on tietoinen myös niihin liittyvistä riskeistä. Tulevaisuus näyttää säilyykö kuluttajien ja teollisuuden luottamus toimikortteihin. Tavoitteen saavuttamiseen vaaditaan määrätietoista kehitystyötä ja valistusta toimikortteihin liittyvistä tietoturvallisuus näkökohdista.

Lähteet

Artikkelit

  • [1] Paradinas, P. & Vandewalle, J-J, 1995. New Directions for Integrated Circuit Cards Operating Systems. Communications of the acm. Vol. 29, No. 1. Verkkoartikkeli
  • [2] Paterson, K. G., Piper, F., Robshaw, M., 2002. Smart Card and the Associated Infrastructure Problem. Information Security Technical Report, Vol. 7, No. 3. Verkkoartikkeli
  • [3] Shelfer, K., M. & Procaccino, D., J., 2002. Smart Card Evolution. Communications of the acm. Vol. 45, No. 7. Verkkoartikkeli
  • [4] Wolfgang, Rankl, 2003. Overview about attacks on smart cards. Information Security Technical Report, Vol. 8 No. 1. Verkkoartikkeli

Verkkosivut

-- JarnoSalonen? - 19 Sep 2009
Topic attachments
I Attachment Action Size Date Who Comment
Kuva2.jpgjpg Kuva2.jpg manage 31.8 K 19 Sep 2009 - 13:24 UnknownUser Toimikortin arkkitehtuuri yleisellä tasolla
kuva1.JPGJPG kuva1.JPG manage 23.7 K 19 Sep 2009 - 13:20 UnknownUser Toimikorttien luokittelu
Print version |  PDF  | History: r3 < r2 < r1 | 
Topic revision: r1 - 19 Sep 2009 - 13:28:34 - JarnoSalonen?
 

TUTWiki

Copyright © by the contributing authors. All material on this collaboration platform is the property of the contributing authors.
Ideas, requests, problems regarding TUTWiki? Send feedback