IoT-järjestelmiin liitetyt laitteet muodostavat valtavan potentiaalisen hyökkäyspinnan hakkereille ja muille pahantahtoisille toimijoille. Järjestelmän suojaus vaatii luotettavia tapoja tallentaa salattavia tietoja ja todentaa niiden oikeellisuus paljastamatta itse salaista dataa. Tähän päästään hyödyntämällä turvaelementtiä, käy ilmi Microchip Technologyn ETNdigi-lehden artikkelista.
Sulautetun järjestelmän suunnittelu esineiden internetiä (IoT) varten vaatii nettiyhteyden vuoksi erilaisen lähestymistavan kuin perinteisen sulautetun järjestelmän suunnittelu. Pienen sulautetun laitteen odotetaan pysyvän tietotekniikan ja tietoturvan nopeiden muutosten vauhdissa ja samanaikaisesti säilyvän yhtä helppona päivittää kuin PC ja yhtä turvallisena kuin jatkuvasti valvottu datakeskus. Tämä ei ole helppoa, mutta siihen voidaan päästä järjestelmän oikealla suunnittelu- tavalla.
Sulautetussa IoT-järjestelmässä on välttämätöntä tarkastella, kuinka laite sopii koko järjestelmään. Tähän päästään uhkien mallinnuksella ja riskianalyysillä, joilla määritetään laitteen suorituskyky ja mitä se tarvitsee säilyäkseen toiminta- kykyisenä. Riippuen siitä, kytketäänkö laite järjestelmään langallisen vai langattoman yhteyden kautta, sen huoltoväli voi olla 1 – 20 vuotta, jona aikana sitä vastaan voidaan hyökätä. Tämän torjumiseksi tietoturvan on oltava järjestelmän suunnittelun tärkeä painopiste, joka sisältää mahdollisuuden suorittaa kaikki ohjelmistojen ylläpito- ja päivitystoimet turvallisesti.
Tämä tarkoittaa, että suunnittelun alussa on välttämätöntä pohtia, miten laite halutaan liittää nettiin, miltä järjestelmäarkkitehtuuri näyttää, miten voidaan hallita ilmeneviä tapahtumia ja mitä kaikkia asioita voi liittyä laajempaan järjestelmään.
Koska IoT-laite vaatii panostuksia useilta osapuolilta – tietotekniikka, markkinointi, myynti, johtohenkilöt, talous, lainsäädäntö – niiden kaikkien on määriteltävä ja ymmärrettävä selkeästi laitteen tarpeet, odotukset, kustannukset ja toimituskysymykset. Mietittäviä asioita ovat muun muassa tuotteen vaatimustenmukaisuus, vastuukysymykset, tiedonkeruu, varastointi ja käyttö sekä tietojen tai itse järjestelmän koskemattomuuteen liittyvien rikkomusten käsittely. Mikä on sellainen liiketoimintamalli, jolla katetaan pitkän aikavälin kustannukset laitteen käyttämisestä
pilvipalveluun kytketyssä järjestelmässä ja mitä hyötyä se tarjoaa käyttäjälle? Nämä jo alkuvaiheessa tehtävät päätökset vaikuttavat suuresti siihen, kuinka tuote tulee suunnitella ja ylläpitää pitkällä aikavälillä.
Tilanne on muuttunut entistä moni- mutkaisemmaksi uuden lainsäädännön kuten yleisen tietosuojaasetuksen (GDPR) vuoksi. Hyödyllisiä ohjeita on saatavissa esimerkiksi Ison-Britannian hallituksen ’Secure by Design’ -palvelusta, Euroopan unionin verkko- ja tietoturvavirastosta (ENISA) sekä IoT Security - säätiöstä.
Helppokäyttöisyys ja tarve parantaa tietoturvaa ovat suunnittelussa usein ristiriidassa, samoin kuin monimutkaiset salasanat ja laitteen rekisteröintiprosessit. Tämän vuoksi on tärkeää suunnitella tuotteen tieto- turva ja helppokäyttöisyys yhdessä aivan alusta alkaen.
Verkkoon kytketty sulautettu tuote koostuu neljästä piiritason ydinelementistä:
- Suoritin
- Muistiyksikkö
- Tietoliikennepiiri
- Tietoturvapiiri
Mukana on myös erittäin tärkeä viides elementti – ohjelmisto.
Nämä ydinosat ovat yleisiä kaikissa järjestelmissä. Miten ne tarkkaan ottaen toteutetaan, on suunnitteluun liittyvä valinta, joka perustuu tuotteen tulevaan käyttötapaan, riskien arviointiin ja niihin suhtautumiseen, kustannuksiin, kehitysmahdollisuuksiin, turvakysymyksiin ja ylläpidettävyyteen.
Tavoitteena tulisi olla kattava suunnitelma koko järjestelmästä, joka on vankka, luotettava, joustava, palautettavissa, turvallinen, skaalautuva, ylläpidettävä, valmistettava ja käyttökelpoinen. Sen tulisi ylläpitää tuotemerkin eheyttä ja saavuttaa hyväksyttävä kustannus- tavoite, joka vastaa järjestelmälle
asetettuja vaatimuksia. On pidettävä mielessä, että verkkoon liitetyn laitteen suunnittelusta, kehittämisestä ja valmistuksesta aiheutuvat kustannukset sisältävät enemmän kulueriä kuin perinteisellä sulautetulla erillislaitteella, jota ei päivitetä. Jos tuote suunnitellaan oikein, sen pitkällä aikavälillä tarjoama arvo on kuitenkin huomattavasti suurempi kuin siihen käytettyjen komponenttien kustannukset. Joten on taloudellisesti mielekästä kehittää IoT-sovellus alun perin oikein sen sijaan, että yritetään korjata asioita myöhemmin, kun ne menevät pieleen.
LUOTTAMUKSEN LÄHTEET
Suojattu järjestelmä vaatii luotettavia tapoja tallentaa salattavia tietoja ja todentaa niiden oikeellisuus samalla varmistaen, että itse salaista tietoa ei koskaan paljasteta. Tämän tekee ’luottamusankkuri’ yleensä turvallisen elementin muodossa. Nämä elementit tarjoavat useita fyysisiä menetelmiä tunnettujen laitteisto- hyökkäysten estämiseksi lisäämällä järjestelmään toimintoja kuten NIST SP 800 -tasoisia satunnaisluku- generaattoreita (RNG) ja salausalgoritmeja kuten FIPS-yhteensopiva, elliptistä käyrää hyödyntävä digitaalinen allekirjoitus (ECDSA-P256).
Turvaelementin toimintaan kuuluu:
- Laitteen todennus pilvipohjaisiin palveluihin käyttämällä hyvin testattuja ja ymmärrettyjä julkisen avaimen infrastruktuurin (PKI) menetelmiä. Tämä mahdollistaa laitteiden ennakkorekisteröinnin järjestelmään valmistuksen yhteydessä yksilöllisillä varmenteilla kullekin laitteelle sekä QR-koodin luomisen tuotantovaiheessa lopputuotteen linkittämiseksi tiettyyn varmenteeseen. Käyttäjä sitoo sen jälkeen saman QR-koodin omaan tiliinsä käyttöönoton yhteydessä samalla, kun turvallinen taustajärjestelmä linkittää sertifikaatit asiakastiliin ja varmistaa yksinkertaisen, turvatun käyttöönottoprosessin täyttäen samalla lainsäädännölliset vaatimukset.
- Itse asiassa Microchip on hiljattain esitellyt alan ensimmäisen valmiiksi varustetun turva-avainratkaisun, jota toimitetaan myös pienissä erissä (minimi 10). Tämä auttaa kehittäjiä automatisoimaan suojatun pilvi- todennuksen minkä tahansa kokoiselle projektille. Tämä Trust Platform -niminen kolmitasoinen ratkaisu tarjoaa valmiiksi asennetut, esikonfiguroidut tai täysin räätälöitävät turvaelementit ja sillä on kyky todentaa kaikki julkiset ja yksityiset pilvi-infrastruktuurit ja LoRaWAN-verkot.
- Datan todentaminen. Luottamus- ankkuria käyttäen on mahdollista varmistaa, että mittaustulokset ovat kotoisin vain tietystä laitteesta eikä niitä ole muutettu. Tämä auttaa myös havaitseman pilvianalyysin avulla datassa esiintyvät poikkeamat, koska laajaa fyysistä väliintuloa on vaikea toteuttaa.
- Turvallinen käynnistys, jolla tarkoitetaan suojattuun elementtiin tallennetun salaisen tiedon hyödyntämistä, jotta isäntä-MCU- piirin salausallekirjoituksessa ja tallennettujen laiteohjelmistojen päivityskuvissa mahdollisesti ilmenevät muutokset voidaan tunnistaa. Lisäksi ajonaikaisen eheyden varmistamiseen voidaan käyttää menetelmiä Class B Safety - kirjastoista.
- Suojattu laiteohjelmiston langaton FUOTA-päivitys (Firmware Upgrade Over The Air). Toisin sanoen suojattuun elementtiin tallennettua salattua tietoa käytetään tarkistamaan päivityslähteen eheys ja myös laitteelle ennen käynnistystä lähetetyn image- eli levykuvatiedoston allekirjoitus.
- Kloonauksen estäminen. Jos valmistusta hallitaan oikein, turva- elementti auttaa estämään laitteiden kloonauksen ja väärentämisen.
Menetelmät yksittäisen tuotteen salaisen datan säilyttämiseksi piiritason turvaelementissä vaativat kuitenkin, että laitteet myös ohjelmoidaan tietoturvallisessa valmistusympäristössä. Tämä aiheuttaa skaalautuvuuteen ja luottamukseen liittyviä ongelmia monissa tapauksissa alihankkijoiden kohdalla. Valmistuksen joustavuus ja järjestelmän helppo käyttöönotto voidaan varmistaa hankkimalla laitteita, jotka sisältävät toimittajan ennalta turvallisessa ympäristössä ohjelmoimia yksityisiä tietoja. Tämä
antaa myös mahdollisuuden ladata julkiseksi tarkoitettua dataa omaan pilvipalveluun yksinkertaisella, automatisoidulla prosessilla.
PÄIVITYKSET TURVALLISESTI
Laiteohjelmiston päivitykset tehdään yleensä kaapelin kautta suoraan laitteen sarjaporttiin. Näin on toimittu vuosien ajan, mutta miten tämä lähestymistapa voi toimia nettiin kytketyillä laitteilla, jotka ovat mahdollisesti saavuttamattomissa paikoissa ja joita käytetään erittäin laajassa mittakaavassa?
Jos tarvitaan nopeaa päivitystä tavanomaisen huoltosyklin ulkopuolella, fyysistä väliinmenoa vaativaa lähestymistapaa tulisi välttää. Vaihtoehtona on käyttää FUOTA-päivityksiä ja ihannetapauksessa suojattua FUOTA- päivitystä. Koska tämä on kohteeseen koskematon lähestymistapa, järjestelmän on hyödynnettävä suojatun elementin tarjoamaa eheyttä estämään tuntemattomista/epäluotettavista lähteistä tulevat rikolliset päivitysyritykset.
Mutta kuinka itse päivitys suoritetaan? Ihannetapauksessa suojatut FUOTA-päivitykset tulisi suorittaa puuttumatta isäntä-MCU- piirin toimintaan. Päivityksen suorittaminen suoraan flash-muistissa olevaan laiteohjelmaan ilman paikallista varmuuskopiota sisältää kuitenkin riskin ohjelman rikkoutumisesta siinä tapauksessa, että päivityksen aikana tapahtuu virhe, josta ei voi toipua.
Valitun FUOTA-menetelmän tulisi olla varma siirtotien toimivuuden suhteen. Toisin sanoen saman prosessin tulisi selviytyä riippumatta kaistanleveydestä, latenssista, katkoksista ja häviöistä missä tahansa fyysisessä mediassa. Tällä tavoin samaa taustalla toimivaa prosessipalvelinta sekä samaa latauksen, tallennuksen ja eheyden varmistavaa laitetta voidaan käyttää ja ylläpitää useilla eri siirtoteillä.
Väistämättä esiintyy jonkin verran soveltuvuuden vaihtelua tällaiselle ’yksi metodi kaikille’ -tyyppiselle menetelmälle, joka perustuu koko järjestelmän täydelliseen käyttöön- ottoon, mutta pitäytymällä lähellä standardoitua lähestymistapaa ja käyttäen modulaarisia menetelmiä koodin ylläpitäminen helpottuu pitkällä aikavälillä.
TEHONSYÖTTÖKIN HUOMIOITAVA
Jos laitetta käytetään maailman- laajuisesti ja jaetaan kontrolloituja päivityksiä jopa suurille laiteryhmille, on vaikea tietää tarkkaan kunkin laitteen tehontarvetta ja ympäristö- oloja. Yleensä kuitenkin oletetaan, että jokainen laite käyttäytyy täsmälleen samalla tavalla kuin laboratoriotesteissä ja toimii myös ihanteellisissa olosuhteissa.
Mutta entä jos näin ei olekaan? Entä jos esimerkiksi tehonsyöttöön vaikuttava ESD-tapahtuma ilmenee yhdessä laiteryhmässä mutta ei toisessa. Teholähdeosan suunnittelunkin tulisi siksi olla osana ’entä jos’ -skenaarioita ja sen pitäisi kuulua yleiseen joustavuus- ja elpymisstrategiaan.
Artikkeli on ilmestynyt uusimmassa ETNdigi-lehdessä.