Področje groženj kibernetski varnosti se je s prihodom interneta stvari (IoT) močno razširila na vse tržne segmente. Vsaka IoT naprava, ki je dodana v omrežje, hkrati uvaja novo točko napada ne samo na same naprave, temveč na sisteme, tako lokalne in kot tudi tiste v oblaku, ki se uporabljajo za njihovo upravljanje.
Microchip Technology Inc
Avtor: Xavier Bignalet
2021-302-09
Napadi imajo lahko resne posledice, saj dejanje uspešnega prodora v IoT napravo omogoča, da vanjo naložijo novo ugnezdeno programsko opremo, tako da jo je mogoče zlonamerno uporabiti. Čeprav lahko nekateri napadi preprosto motijo delovanje naprave, tako da jo je mogoče uporabiti na nov način, na primer kot vozlišče v botnetu, ki se uporablja za izvajanje DNS napadov, lahko drugi uporabijo ogroženi sistem za vdor v storitveno operaterjevo omrežje.
Prodor je lažji z uporabo poverilnic za programsko opremo, kot so gesla. Z uporabo teh osnovnih poverilnic bo heker, ki je uspešno ogrozil napravo, te podatke uporabil za dostop do oddaljenih storitev in morda lažje izvedel napade nanje. Varnost, ki jo izvaja strojna oprema, skupaj z varno identiteto zagotavlja mehanizem za preprečevanje izkoriščanja naprav, prav tako pa je verjetnost za začetni napad veliko manjša. S strojno uveljavljeno varnostjo je mogoče veljavno identiteto in kode za dostop za napravo ustvariti le med proizvodnjo z uporabo mehanizmov infrastrukture javnih ključev (PKI). V okviru PKI ima vsaka naprava edinstven zasebni ključ, ki je matematično povezan z znanim digitalnim potrdilom, ki ga varuje proizvajalec. Ta zasebni ključ se uporablja za podpis za edinstveno identifikacijo naprave na katerem koli strežniku, ki ima dostop do ustreznega javnega ključa. Javni ključ je javno viden niz informacij in zato ne predstavlja tveganja, če se ta ključ distribuira nepooblaščenim uporabnikom. V kontekstu IoT naprave je identiteta naprave prikazana z uporabo zasebnega ključa. Povezani javni ključ se uporablja v protokolih, ki določajo, da je zahtevana identiteta veljavna. To identiteto je mogoče uporabljati v celotnem življenjskem ciklu naprave za preverjanje pristnosti vseh posodobitev strojne programske opreme, ki se lahko uporabijo, in identitete naprave pri dostopu do oddaljenih storitev.
Glede na njihovo ključno vlogo v katerem koli kriptosistemu zasebni ključi naprave ne smejo biti ranljivi za fizične napade ali oddaljeno ekstrakcijo. V idealnem primeru so kriptografski ključi shranjeni v varnem elementu, ki postavlja izolirano varno mejo, tako da ključi niso nikoli izpostavljeni. To ni trivialna naloga. Zasnova zahteva zaščito pred posegi in zaščito pred prisluškovalnimi napadi, kot je analiza stranskih kanalov. Ustrezna zaščita ključa na ta način zahteva visoko raven varnostnega strokovnega znanja. Prav tako podaljšuje čas razvoja IoT rešitve. Vendar ni odgovornosti, ki se ji je mogoče odreči. Zaščita ključa je ključna varnostna praksa, ki jo je treba izvajati. Na srečo so proizvajalcem na voljo varni elementi, kot je Microchip Technology ATECC608, z zahtevanimi ravnmi zaščite. Čeprav takšne komponente obstajajo, ostajajo težave z uporabo strojno uveljavljenega upravljanja identitete. Večini proizvajalcev, sistemskih integratorjev in ponudnikov storitev ni bilo lahko doseči potrebe po uporabi varne identitete na način, da je ne more ogroziti napadalec z dobrimi viri. Konvencionalni pristop je konfiguriranje varnega elementa v strojni opremi med proizvodnjo z ustreznimi zasebnimi ključi. Vendar pa so premisleki o logistiki dobavne verige na splošno omejili uporabo tega pristopa na velike razporeditve. Zagotavljanje varne identitete za vsako napravo pomeni prilagajanje proizvodnega procesa: drago prizadevanje, razen če se prilagajanje amortizira na veliko količino enote, tako da je vpliv na stroške glede na napravo minimalen.
Vendar pa je zdaj mogoče zagotoviti stroškovno učinkovito zahtevano konfiguracijo varnega elementa tudi pri najmanjši količini naročila (MOQ) že desetih kosov s predhodno konfiguracijo in vnaprejšnjo oskrbo za naprave interneta stvari. S tem modelom, ki ga podpira platforma Microchip Trust, je mogoče celo osnovno IoT nadzorno kamero, spletni prehod, klimatsko napravo ali podobno napravo zaščititi z vnaprej ustvarjenimi, generičnimi certifikati za naprave, ki so zaklenjeni znotraj varnega elementa za avtonomno preverjanje pristnosti v oblaku. Skupni strošek na napravo za dostavo tega varnega shranjevanja ključev, ki temelji na strojni opremi z generičnim potrdilom, je nižji od tistega, kar lahko ponudijo ponudniki PKI storitev tretjih oseb in certifikatni organi, pristop pa znatno zmanjša zapletenost in čas trženja.
Uvajanje rešitve
Ker imajo majhne do srednje velike količine zdaj dostop do stroškovno učinkovitega načina vgradnje varnega upravljanja identitete v svoje naprave, je naslednji korak konfiguracija varnega elementa na najprimernejši način za njihove primere uporabe. To je zato, ker mora biti naprava opremljena s poverilnicami in drugimi kriptografskimi sredstvi, ki se uporabljajo za dani model preverjanja pristnosti. Poleg identitete osnovne naprave lahko obstajajo dodatni zasebni ključi in skrivnosti, ki jih je treba vnesti v element strojne opreme. Na primer, tisti, ki niso izpeljani iz korenskega ključa, so morda potrebni za preverjanje pristnosti dodatkov, zunanjih naprav, vsebine tretjih oseb in oddaljenih gostiteljev, tako da je mogoče njihove poverilnice upravljati ločeno. Načelo varnega elementa je, da nadzoruje dostop do vitalnih virov in deluje kot preverjanje pred nepooblaščenimi dejavnostmi, kot so poskusi zamenjave ugnezdene programske opreme, ki jo je odobril proizvajalec, z zlonamerno kodo, ki lahko poskuša uporabiti tajne podatke, ki jih ima naprava, za nadaljnje izvajanje napadov.
Ključna zahteva za zagotovitev, da napadalci ne morejo prodreti in reprogramirati naprave, je uporaba strategije varnega zagona, ki je nato zaščitena z varnim elementom. Varen zagon zagotavlja, da lahko IoT naprava izvaja samo pooblaščeno kodo. Pod pogoji varnega zagona lahko naprava naloži samo bloke kode, ki so zgoščeni in podpisani z zasebnim ključem v lasti proizvajalca.
Ko mora mikrokontroler naložiti kodo iz zagonskega ROM-a, mikrokontroler zahteva preverjanje iz resnično nespremenljivega javnega ključa, ki ga hrani varni element. Samo če je to preverjanje uspešno, MCU poskuša naložiti kodo. Če naprava naleti na blok kode, ki je napačno podpisan, preneha nalagati ogroženo programsko opremo in se poskuša vrniti v tovarniško programirano stanje ali, če to ni mogoče, se deaktivirati. Dokler kode zagonskega nalagalnika MCU ni mogoče spremeniti z vstavitvijo v ROM ali zaščiten Flash, same funkcije preverjanja ni mogoče zaobiti. Z vzpostavljeno osnovno varnostjo je mogoče zlahka dodati druge primere uporabe, kot je podpora za preverjanje pristnosti na podlagi potrdil na oddaljenih strežnikih, ki je ključna sestavina za naprave interneta stvari. To oddaljeno preverjanje pristnosti uporablja standardne protokole, kot sta varnost transportnega sloja (TLS) za šifrirano komunikacijo in X.509, ki se uporablja za upravljanje digitalnih potrdil, ki dokazujejo, da je naprava ali storitev pristna.
V skladu s standardom X.509 se vsa digitalna potrdila sklicujejo nazaj na osnovno OEM potrdilo prek hierarhije podrejenih potrdil. Podatki, ki jih nosijo potrdila, zagotavljajo sredstva za identifikacijo zakonitega lastnika vsakega potrdila in iz tega pridobitev javnega ključa potrdila naprej po hierarhiji, tako da je mogoče preveriti podpis odvisnega potrdila.
Ko ustrezno zavarovana IoT naprava komunicira z oddaljenim strežnikom, uporabi informacije v certifikatih, da dokaže, da je veljaven uporabnik storitve. Nasprotno pa strežnik uporablja lasten nabor potrdil, da napravi potrdi, da je tudi ta pristen. Dokler ima naprava zahtevana potrdila, je lahko zagotovljena dvosmerna avtentikacija.
V kontekstu interneta stvari je mogoče digitalna potrdila uporabiti za poenostavitev postopka vgradnje naprav, ko se prvič vklopijo in se poskušajo povezati s svojim ponudnikom storitev prek interneta. To dosežemo s posredovanjem potrebnih potrdil strežnikom, ko je varni element prvič programiran, in s shranjevanjem potrdil, ki jih bo naprava uporabila za preverjanje pristnosti teh strežnikov v elementu poleg osnovnega zasebnega ključa naprave. Kot primer tega pristopa je Microchip sodeloval z Amazon Web Services (AWS), da bi omogočil vgradnjo vseh izdelkov, ustvarjenih s Trust Platform, v storitve AWS IoT. Podpora za standardne protokole in certifikacijske sisteme pomeni, da je enake tehnike mogoče enostavno uporabljati z drugimi storitvami v oblaku, kot je Microsoft Azure, pa tudi z zasebnimi in hibridnimi infrastrukturami v oblaku.
Drug primer uporabe interneta stvari je brezžična posodobitev ugnezdene programske opreme (po zraku – OTA) za IoT naprave. Te posodobitve omogočajo popravek varnostnih ranljivosti, ne da bi tvegali, da bodo naprave ogrožene s samim postopkom posodobitve. Digitalno podpisane posodobitve, poslane preko OTA, je mogoče preveriti na podoben način kot preverjanje pristnosti kode med varnim zagonom, preden se posodobitev lahko uporabi. Ko bo koda shranjena, bo morala ob ponovnem zagonu naprave opraviti tudi teste varnega zagona.
Nadaljnji primeri uporabe vključujejo IP zaščito za preverjanje veljavnosti nadomestnih in izbirnih dodatkov ter zaščito uporabniških podatkov, rotacijo ključev in preverjanje LoRaWAN™ pristnosti. Nekateri proizvajalci bodo morda potrebovali prilagodljive možnosti, ki presegajo te osnovne storitve. Drugi bodo morda potrebovali pristop k varnosti z nižjimi stroški, če ponujajo naprave interneta stvari z omejenimi viri. Pooblastilo za Google Cloud IoT jedro na primer ne zahteva ustvarjanja popolnih digitalnih potrdil. Storitev uporablja ‘spletne žetone JSON’ (JWT), ki so izpeljani iz jedrnega zasebnega ključa, ki je v notranjosti ATECC608B, ki nadomešča običajno prijavo na podlagi gesla.
Prilagodljivost obravnave teh raznolikih primerov uporabe z nizkimi stroški namestitve je možna z Microchip Trust Platformo in njeno podporo za številne različne modele sodelovanja. Prvi model strankam omogoča enostavno pot do pridobivanja naprav z varnimi poverilnicami z uporabo privzetega poteka. V tem modelu se zasebni ključ in generična potrdila varnega elementa ustvarijo med proizvodnjo v varnem obratu podjetja Microchip. Ključ in potrdila ostanejo skrita skozi celoten postopek varne oskrbe, zaklenjena znotraj varnega elementa, kjer ostanejo na varnem med pošiljanjem. Povezane javne poverilnice je mogoče posredovati storitvam za vključitev v oblak ali skupnemu strežniku za LoRaWAN omrežja.
Ker mnogi proizvajalci želijo možnost višje ravni fleksibilnosti preverjanja pristnosti in imajo možnost ustvarjanja in vnašanja potrdil na podlagi lastne verige preverjanja pristnosti, ponuja drugi model angažiranja nabor vnaprej konfiguriranih primerov uporabe, ki zagotavljajo zmožnost izvajanja teh dejanj samodejno. Obsežnejše spremembe so možne pri tretjem modelu angažiranja. Pri tem pristopu, prikazanem na sliki 2, stranka začne z naročilom za napravo praznega varnega elementa in nato uporabi orodja, ki jih ponuja Microchip, ki gradijo korake oskrbe, vključno z XML, ki se uporablja za nadzor dostave zasebnih ključev in potrdil do varnega elementa v varnih prostorih podjetja Microchip.
Skratka, zahvaljujoč najnovejšemu razvoju spletnih orodij in komponentam za varnost, ki temeljijo na strojni opremi, lahko podjetja s katero koli velikostjo projekta zdaj implementirajo varen element v svojih IoT napravah. Odstranjene so bile ovire, ki so podražile konfiguracijo in zagotavljanje varnih elementov. Rezultat postopka je vključevanje varne dobavne verige, kar je omogočilo razširitev varnostnih modelov najboljših praks v celotnem IoT ekosistemu.
Opomba: Ime in logotip Microchip sta registrirani blagovni znamki podjetja Microchip Technology Incorporated v ZDA in drugih državah. Vse druge blagovne znamke, ki so morda tu omenjene, so last njihovih podjetij.