Weeve tanúságtétel – Megbízható lépés a gépgazdaság biztonsága felé

(Gaurav Tiwari) (2020. május 6.)

Az adatokat olyan árukhoz hasonlították, mint az olaj vagy az arany. Ebben az összekapcsolt világban egyre több minőségi adat teszi lehetővé a gyárban telepített gépek vagy a házainkba telepített különféle modulok intelligens döntéshozatali folyamatát. De nagy kihívás áll előttünk – hogyan lehet a minőségi és megbízható adatokat biztonságosan, skálázható és automatizált módon átadni? A csúcskategóriás beágyazott eszközök iparági vezetői keményen dolgoznak azon, hogy a csúcskategóriás eszközökön széles körben elérhető legjobb hardver- és szoftverbiztonsági gyakorlatot hozzák le ezekre a mikrovezérlő eszközökre. A mikrovezérlők korlátozott erőforrásai, valamint a sok operációs rendszer és megoldási halmaz összetett és kihívást jelentő teret eredményez a beágyazott biztonság számára.

Az adatvédelmi forgatókönyveket a következőképpen kategorizálhatjuk:

  • Nyugalmi adatok
  • Adatok szállítás közben
  • Használt adatok

A Weeve-nél a mikrokontroller alapú IoT-eszközök adatbiztonságához igazított megoldásokat fejlesztünk.

  • Védjük a nyugalmi állapotban lévő adatok megbízható tárolási megoldást használ. Ezek az adatok kriptográfiai eszközöket tartalmaznak, például kulcsokat, vagy néhány digitális eszközt, például virtuális érméket stb.
  • adatok átvitele közben, kifejlesztettük a Weeve MQTTS-t, egy könnyű és biztonságos közzétételi-feliratkozási lehetőséget, amely az MQTT protokollra épült, alacsony kategóriájú eszközökhöz igazítva. Ez az MQTT alternatívája a TLS-en keresztül, amely több energiaforrást fogyaszt a szélén.
  • A használatban lévő adatokhoz foglalkozunk az IoT eszközön futó folyamat integritásával. Ez a folyamat hasznos adatok gyűjtése szenzorok segítségével, vagy adatfeldolgozási lépés végrehajtása, vagy akár üzleti logika végrehajtása működtető eszköz esetén. A legfontosabb itt a folyamat szoftveres sebezhetőségének felderítése és megelőzése. Fejlesztjük a Weeve Testimony egy valós idejű ellenőrzési tanúsító alkalmazást, amely a blogsorozat témája.

Mielőtt bemutatnánk a Weeve Testimony-t, itt van egy kis technikai háttér a megoldott problémákról és a megoldásunkban használt technológiákról.

C-program sebezhetősége

Szinte az összes alacsony szintű beágyazott szoftver és firmware a C programozási nyelven készült. C-nek a rendeltetésszerűen lefoglalt memória megfelelő határellenőrzésének hiánya nagy biztonsági fenyegetéseket okoz. A puffertúlcsordulás mellett a C-program egész szám-túlcsordulást, karakterlánc-formátumú sebezhetőséget, a visszatérési cím felülírásait stb. Szenved. A C-program biztonsági fenyegetéseinek új osztálya is található, például return-to-libc , és általánosabb return-orientált programozás (ROP) , amelyek nagyon hatékonyak az általános mérséklési technikákkal szemben, mint pl. Az adatfuttatás megelőzése és a kód aláírása. A statikus és dinamikus alkalmazásbiztonsági eszközökkel végzett megfelelő kódellenőrzés csökkentheti az ilyen biztonsági rések súlyosságát. Az eszközlánc egyéb technikái, például a verem-szétverés-védelem, magában a hardverben, például az adatszegmensekhez beállított NX-bitek, futás közben léteznek, például a címterek elrendezésének véletlenszerűsítése (ASLR). De a program még mindig messze áll a sérülékenységtől mentes méltányos garanciától. A mikrokontroller alapú alacsony kategóriájú eszközökkel összefüggésben az ASLR leghatékonyabb mérséklési technikája a gyakorlatiasság miatt nem valósul meg a futási idejű betöltő elkerülése érdekében.

Megközelítésünk a C-program biztonsági réseinek csökkentésére

A C-program sebezhetőségének kezeléséhez feltételezzük, hogy a programban mindig vannak biztonsági hibák, és ezért megkíséreljük őket futási időben észlelni. Egy kiváltságosabb, elszigetelt őrzési folyamat létét képzeljük el, amely ellenőrzi és tanúskodik egy futó C-program (az MCU firmware) viselkedéséről. A védelmi folyamatot el kell különíteni és kiváltságosabbak, mint a normál firmware, mert ha ugyanannak a folyamatnak vagy hasonló privilégiumszintnek felel meg, mint a normál firmware-nek, akkor a hacker képes lesz feltörni az őrzési folyamatot, és kihasználni ugyanazt a biztonsági rést a normál firmware-ben . Azt is elképzeljük, hogy szükség van egy távoli tanúsító entitásra, amely előre (a profilkészítő eszközünk segítségével) ismeri a normál firmware-futtatás összes érvényes végrehajtási pillanatképét, és rendszeresen tanúskodik ezekről a pillanatképekről.

Vélemény, hozzászólás?

Az email címet nem tesszük közzé. A kötelező mezőket * karakterrel jelöltük