Säkerhetsarkitektur för IoT-lösningar

När du utformar och utformar en IoT-lösning är det viktigt att förstå potentiella hot och inkludera lämpliga skydd. Att förstå hur en angripare kan kompromettera ett system hjälper dig att se till att lämpliga åtgärder finns på plats från början.

Hotmodellering

Microsoft rekommenderar att du använder en hotmodelleringsprocess som en del av din IoT-lösningsdesign. Om du inte är bekant med hotmodellering och livscykeln för säker utveckling kan du läsa:

Säkerhet i IoT

Det är bra att dela upp din IoT-arkitektur i flera zoner som en del av hotmodelleringsövningen:

  • Enhet
  • Fältgateway
  • Gateway för moln
  • Tjänst

Varje zon har ofta egna data och autentiserings- och auktoriseringskrav. Du kan också använda zoner för att isolera skador och begränsa effekten av låg förtroendezoner på högre förtroendezoner.

Varje zon avgränsas med en förtroendegräns, som visas som den streckade röda linjen i följande diagram. Den representerar en övergång av data från en källa till en annan. Under den här övergången kan data utsättas för följande hot:

  • Förfalskning
  • Manipulering
  • Avvislighet
  • Avslöjande av information
  • Denial of Service
  • Behörighetshöjning

Mer information finns i STRIDE-modellen.

A diagram that shows the zones and trust boundaries in a typical IoT solution architecture.

Du kan använda STRIDE för att modellera hoten mot varje komponent i varje zon. I följande avsnitt beskrivs var och en av de komponenter och specifika säkerhetsproblem och lösningar som bör införas.

I resten av den här artikeln beskrivs hot och åtgärder för dessa zoner och komponenter i detalj.

Enhetszon

Enhetsmiljön är det utrymme runt enheten där fysisk åtkomst och lokal nätverks digital åtkomst till enheten är möjlig. Ett lokalt nätverk antas vara distinkt och isolerat från – men potentiellt överbryggt till – det offentliga Internet. Enhetsmiljön innehåller all trådlös radioteknik med kort räckvidd som tillåter peer-to-peer-kommunikation av enheter. Den innehåller ingen nätverksvirtualiseringsteknik som skapar illusionen av ett sådant lokalt nätverk. Det inkluderar inte offentliga operatörsnätverk som kräver att två enheter kommunicerar över offentligt nätverksutrymme om de skulle ange en peer-to-peer-kommunikationsrelation.

Fältgatewayzon

En fältgateway är en enhet, installation eller allmän serverdatorprogramvara som fungerar som kommunikationsaktiverare och eventuellt som ett enhetskontrollsystem och en hubb för bearbetning av enhetsdata. Fältgatewayzonen innehåller själva fältgatewayen och alla enheter som är anslutna till den. Fältgatewayer fungerar utanför dedikerade databehandlingsanläggningar, är vanligtvis platsbundna, är potentiellt föremål för fysiskt intrång och har begränsad driftsredundans. En fältgateway är vanligtvis en sak som en angripare kan sabotera fysiskt om de får fysisk åtkomst.

En fältgateway skiljer sig från en trafikrouter eftersom den har haft en aktiv roll i att hantera åtkomst och informationsflöde. Fältgatewayen har två distinkta ytområden. En vänder sig mot de enheter som är anslutna till den och representerar insidan av zonen. Den andra står inför alla externa parter och är gränsen för zonen.

Molngatewayzon

En molngateway är ett system som möjliggör fjärrkommunikation från och till enheter eller fältgatewayer som distribueras på flera platser. Molngatewayen möjliggör vanligtvis ett molnbaserat kontroll- och dataanalyssystem, eller en federation av sådana system. I vissa fall kan en molngateway omedelbart underlätta åtkomsten till särskilda enheter från terminaler som surfplattor eller telefoner. I molngatewayzonen förhindrar operativa åtgärder riktad fysisk åtkomst och exponeras inte nödvändigtvis för en offentlig molninfrastruktur.

En molngateway kan mappas till ett överlägg för nätverksvirtualisering för att isolera molngatewayen och alla dess anslutna enheter eller fältgatewayer från all annan nätverkstrafik. Själva molngatewayen är inte ett enhetskontrollsystem eller en bearbetnings- eller lagringsanläggning för enhetsdata. gränssnitt med molngatewayen. Molngatewayzonen innehåller själva molngatewayen tillsammans med alla fältgatewayer och enheter som är direkt eller indirekt anslutna till den. Zonens kant är en distinkt yta som alla externa parter kommunicerar genom.

Tjänstzon

En tjänst i det här sammanhanget är alla programvarukomponenter eller moduler som samverkar med enheter via ett fält eller en molngateway. En tjänst kan samla in data från enheterna och styra enheterna. En tjänst är en medlare som agerar under sin identitet mot gatewayer och andra undersystem för att:

  • Lagra och analysera data
  • Utfärda kommandon till enheter baserat på datainsikter eller scheman
  • Exponera informations- och kontrollfunktioner för auktoriserade slutanvändare

IoT-enheter

IoT-enheter är ofta specialenheter som sträcker sig från enkla temperatursensorer till komplexa fabriksproduktionslinjer med tusentals komponenter inuti sig. Exempel på IoT-enhetsfunktioner är:

  • Mäta och rapportera miljöförhållanden
  • Vridventiler
  • Kontrollera servos
  • Ljudlarm
  • Slå på eller av lampor

Syftet med dessa enheter avgör deras tekniska design och den tillgängliga budgeten för deras produktion och schemalagda livslängd. Kombinationen av dessa faktorer begränsar den tillgängliga driftenergibudgeten, fysiska fotavtryck och tillgängliga funktioner för lagring, beräkning och säkerhet.

Saker som kan gå fel med en automatiserad eller fjärrstyrd IoT-enhet är:

  • Fysiska defekter
  • Kontrollera logikfel
  • Avsiktligt obehörigt intrång och manipulering.

Konsekvenserna av dessa fel kan bli allvarliga, till exempel förstörda produktionslotter, byggnader som bränts ner eller skador och dödsfall. Därför finns det ett högsäkerhetsfält för enheter som gör att saker och ting flyttas eller som rapporterar sensordata som resulterar i kommandon som gör att saker och ting flyttas.

Interaktion mellan enhetskontroll och enhetsdata

Anslut särskilda enheter har ett stort antal potentiella interaktionsytor och interaktionsmönster, som alla måste betraktas som ett ramverk för att skydda digital åtkomst till dessa enheter. Digital åtkomst avser åtgärder som utförs via programvara och maskinvara i stället för direkt fysisk åtkomst till enheten. Fysisk åtkomst kan till exempel styras genom att enheten placeras i ett rum med lås på dörren. Fysisk åtkomst kan inte nekas med hjälp av programvara och maskinvara, men åtgärder kan vidtas för att förhindra att fysisk åtkomst leder till systeminterferens.

När du utforskar interaktionsmönstren kan du titta på enhetskontroll och enhetsdata med samma uppmärksamhetsnivå. Enhetskontroll avser all information som tillhandahålls till en enhet med avsikt att ändra dess beteende. Enhetsdata refererar till information som en enhet sänder ut till någon annan part om dess tillstånd och det observerade tillståndet för dess miljö.

Hotmodellering för Azure IoT-referensarkitekturen

Det här avsnittet använder Azure IoT-referensarkitekturen för att visa hur du tänker på hotmodellering för IoT och hur du hanterar de identifierade hoten:

Diagram that shows the Azure IoT reference architecture.

Följande diagram ger en förenklad vy av referensarkitekturen med hjälp av en dataflödesdiagrammodell:

A data flow diagram derived from the Azure IoT reference architecture.

Arkitekturen separerar funktionerna för enhets- och fältgateway. Med den här metoden kan du använda säkrare fältgatewayenheter. Fältgatewayenheter kan kommunicera med molngatewayen med hjälp av säkra protokoll, som vanligtvis kräver större bearbetningskraft än en enkel enhet, till exempel en termostat, kan tillhandahålla på egen hand. I Azure Services-zonen i diagrammet är Azure IoT Hub-tjänsten molngatewayen.

Baserat på den arkitektur som beskrevs tidigare visar följande avsnitt några exempel på hotmodellering. Exemplen fokuserar på kärnelementen i en hotmodell:

  • Processer
  • Kommunikation
  • Lagring

Processer

Här är några exempel på hot i processkategorin. Hoten kategoriseras baserat på STRIDE-modellen:

Förfalskning: En angripare kan extrahera kryptografiska nycklar från en enhet, antingen på programvaru- eller maskinvarunivå. Den attackerade använder sedan dessa nycklar för att komma åt systemet från en annan fysisk eller virtuell enhet med hjälp av identiteten för den ursprungliga enheten.

Denial of Service: En enhet kan göras oförmöget att fungera eller kommunicera genom att störa radiofrekvenser eller skärtrådar. Till exempel kan en övervakningskamera som avsiktligt slog ut sin ström eller nätverksanslutning inte rapportera data alls.

Manipulering: En angripare kan helt eller delvis ersätta programvaran på enheten. Om enhetens kryptografiska nycklar är tillgängliga för angriparens kod kan den sedan använda enhetens identitet.

Manipulering: En övervakningskamera som visar en synlig spektrumbild av en tom hall kan riktas mot ett fotografi av en sådan hall. En rök- eller brandsensor kan rapportera någon som håller en tändare under den. I båda fallen kan enheten vara tekniskt helt betrodd mot systemet, men den rapporterar manipulerad information.

Manipulering: En angripare kan använda extraherade kryptografiska nycklar för att fånga upp och förhindra data som skickas från enheten och ersätta dem med falska data som autentiseras med de stulna nycklarna.

Informationsutlämnande: Om enheten kör manipulerad programvara kan sådan manipulerad programvara potentiellt läcka data till obehöriga parter.

Avslöjande av information: En angripare kan använda extraherade kryptografiska nycklar för att mata in kod i kommunikationsvägen mellan enheten och fältgatewayen eller molngatewayen för att suga av information.

Denial of Service: Enheten kan stängas av eller omvandlas till ett läge där kommunikation inte är möjlig (vilket är avsiktligt i många industriella datorer).

Manipulering: Enheten kan konfigureras om för att fungera i ett tillstånd som är okänt för kontrollsystemet (utanför kända kalibreringsparametrar) och därmed tillhandahålla data som kan feltolkas

Utökade privilegier: En enhet som utför en specifik funktion kan tvingas att göra något annat. Till exempel kan en ventil som är programmerad att öppna halvvägs luras att öppna hela vägen.

Förfalskning/manipulering/avvisning: Om den inte skyddas (vilket sällan är fallet med fjärrkontroller för konsumenter) kan en angripare manipulera tillståndet för en enhet anonymt. En bra bild är en fjärrkontroll som kan stänga av vilken TV som helst.

I följande tabell visas exempel på åtgärder mot dessa hot. Värdena i hotkolumnen är förkortningar:

  • Förfalskning (S)
  • Manipulering (T)
  • Avvisning (R)
  • Avslöjande av information (I)
  • Denial of Service (D)
  • Utökade privilegier (E)
Komponent Hot Åtgärd Risk Implementering
Enhet S Tilldela identitet till enheten och autentisera enheten Ersätta enheten eller en del av enheten med någon annan enhet. Hur vet du att du pratar med rätt enhet? Autentisera enheten med TLS (Transport Layer Security) eller IPSec. Infrastrukturen bör ha stöd för användning av i förväg delad nyckel (PSK) på de enheter som inte kan hantera fullständig asymmetrisk kryptografi. Använd Microsoft Entra ID, OAuth.
TRID Tillämpa manipuleringssäkra mekanismer på enheten, till exempel genom att göra det svårt att omöjligt extrahera nycklar och annat kryptografiskt material från enheten. Risken är om någon manipulerar enheten (fysisk interferens). Hur är du säker på att enheten inte har manipulerats. Den mest effektiva lösningen är en betrodd plattformsmodul (TPM). En TPM lagrar nycklar i särskilda kretsar på kretsen som nycklarna inte kan läsas från, men som bara kan användas för kryptografiska åtgärder som använder nyckeln. Minneskryptering av enheten. Nyckelhantering för enheten. Signera koden.
E Ha åtkomstkontroll över enheten. Auktoriseringsschema. Om enheten tillåter att enskilda åtgärder utförs baserat på kommandon från en extern källa, eller till och med komprometterade sensorer, kan attacken utföra åtgärder som annars inte är tillgängliga. Har auktoriseringsschema för enheten.
Fältgateway S Autentisera fältgatewayen till Cloud Gateway (till exempel certifikatbaserad, PSK eller anspråksbaserad.) Om någon kan förfalska Field Gateway kan den presentera sig som vilken enhet som helst. TLS RSA/PSK, IPSec, RFC 4279. Alla samma viktiga lagrings- och attesteringsproblem för enheter i allmänhet – bästa fall är att använda TPM. 6LowPAN-tillägg för IPSec för stöd för trådlösa sensornätverk (WSN).
TRID Skydda fältgatewayen mot manipulering (TPM) Förfalskningsattacker som lurar molngatewayen att tro att den pratar med fältgatewayen kan leda till avslöjande av information och manipulering av data Minneskryptering, TPM:er, autentisering.
E Åtkomstkontrollmekanism för Field Gateway

Kommunikation

Här är några exempel på hot i kommunikationskategorin. Hoten kategoriseras baserat på STRIDE-modellen:

Denial of Service: Begränsade enheter hotas vanligtvis av DoS när de aktivt lyssnar efter inkommande anslutningar eller oönskade datagram i ett nätverk. En angripare kan öppna många anslutningar parallellt och antingen inte betjäna dem eller betjäna dem långsamt eller översvämma enheten med oönskad trafik. I båda fallen kan enheten effektivt göras obrukbar i nätverket.

Förfalskning, informationsupplysning: Begränsade enheter och särskilda enheter har ofta en-för-alla-säkerhetsfaciliteter som lösenord eller PIN-skydd. Ibland är de helt beroende av att lita på nätverket och beviljar åtkomst till information till alla enheter i samma nätverk. Om nätverket skyddas av en delad nyckel som avslöjas kan en angripare styra enheten eller observera de data som den överför.

Förfalskning: en angripare kan avlyssna eller delvis åsidosätta sändningen och förfalska ursprungsgivaren.

Manipulering: En angripare kan avlyssna eller delvis åsidosätta sändningen och skicka falsk information.

Informationsutlämnande: En angripare kan tjuvlyssna på en sändning och få information utan auktorisering.

Denial of Service: En angripare kan störa sändningssignalen och neka informationsdistribution.

I följande tabell visas exempel på åtgärder mot dessa hot:

Komponent Hot Åtgärd Risk Implementering
Enhets-IoT Hub TID (D) TLS (PSK/RSA) för att kryptera trafiken Avlyssning eller interferering av kommunikationen mellan enheten och gatewayen Säkerhet på protokollnivå. Med anpassade protokoll måste du ta reda på hur du skyddar dem. I de flesta fall sker kommunikationen från enheten till IoT Hub (enheten initierar anslutningen).
Enhet till enhet TID (D) TLS (PSK/RSA) för att kryptera trafiken. Läsa data under överföring mellan enheter. Manipulering av data. Överbelasta enheten med nya anslutningar Säkerhet på protokollnivå (MQTT/AMQP/HTTP/CoAP. Med anpassade protokoll måste du ta reda på hur du skyddar dem. Åtgärden för DoS-hotet är att peer-enheter via en moln- eller fältgateway och att de bara fungerar som klienter mot nätverket. När gatewayen har asynkronat peering kan det finnas en direkt anslutning mellan peer-datorerna.
Extern entitetsenhet TID Stark parkoppling av den externa entiteten till enheten Avlyssning av anslutningen till enheten. Störa kommunikationen med enheten Koppla den externa entiteten på ett säkert sätt till enhetens NFC/Bluetooth LE. Kontrollera enhetens driftpanel (fysisk).
Field Gateway Cloud Gateway TID TLS (PSK/RSA) för att kryptera trafiken. Avlyssning eller interferering av kommunikationen mellan enheten och gatewayen Säkerhet på protokollnivå (MQTT/AMQP/HTTP/CoAP). Med anpassade protokoll måste du ta reda på hur du skyddar dem.
Enhetsmolngateway TID TLS (PSK/RSA) för att kryptera trafiken. Avlyssning eller interferering av kommunikationen mellan enheten och gatewayen Säkerhet på protokollnivå (MQTT/AMQP/HTTP/CoAP). Med anpassade protokoll måste du ta reda på hur du skyddar dem.

Lagring

I följande tabell visas exempel på åtgärder mot lagringshoten:

Komponent Hot Åtgärd Risk Implementering
Enhetslagring TRID Lagringskryptering, signering av loggarna Läsa data från lagringen, manipulera telemetridata. Manipulering av köade eller cachelagrade kommandokontrolldata. Manipulering av konfigurations- eller uppdateringspaket för inbyggd programvara när de cachelagras eller placeras lokalt kan leda till att operativsystem- och/eller systemkomponenter komprometteras Kryptering, kod för meddelandeautentisering (MAC) eller digital signatur. Där det är möjligt stark åtkomstkontroll via listor över resursåtkomstkontroll (ACL: er) eller behörigheter.
Avbildning av enhetsoperativsystem TRID Manipulering av operativsystem /byte av OS-komponenter Skrivskyddad OS-partition, signerad OS-avbildning, kryptering
Field Gateway-lagring (köa data) TRID Lagringskryptering, signering av loggarna Läsa data från lagringen, manipulera telemetridata, manipulera köade eller cachelagrade kommandokontrolldata. Manipulering av uppdateringspaket för konfiguration eller inbyggd programvara (avsedda för enheter eller fältgateway) när cachelagras eller placeras i kö lokalt kan leda till att os- och/eller systemkomponenter komprometteras BitLocker
Os-avbildning för Field Gateway TRID Manipulering av operativsystem /byte av OS-komponenter Skrivskyddad OS-partition, signerad OS-avbildning, Kryptering

Nästa steg

Mer information om IoT-säkerhet finns i: