Internet of Things beveiligingsarchitectuur (IoT)

Bij het ontwerpen van een systeem is het belangrijk om inzicht te krijgen in de mogelijke bedreigingen voor dat systeem en de juiste verdediging toe te voegen, omdat het systeem is ontworpen en ontworpen. Het is belangrijk dat u het product vanaf het begin ontwerpt met beveiliging in gedachten, omdat u weet hoe een aanvaller een systeem kan compromitteerd om ervoor te zorgen dat er vanaf het begin geschikte oplossingen zijn.

Beveiliging begint met een bedreigingsmodel

Microsoft gebruikt al lange tijd bedreigingsmodellen voor zijn producten en heeft het threat modeling-proces van het bedrijf openbaar beschikbaar gemaakt. De bedrijfservaring laat zien dat de modellering onverwachte voordelen heeft, behalve dat u direct begrijpt welke bedreigingen het meest van belang zijn. Zo ontstaat er bijvoorbeeld ook een open discussie met anderen buiten het ontwikkelteam, wat kan leiden tot nieuwe ideeën en verbeteringen in het product.

Het doel van threat modeling is om te begrijpen hoe een aanvaller een systeem kan compromitteerd en er vervolgens voor te zorgen dat er geschikte oplossingen zijn. Threat modeling dwingt het ontwerpteam om oplossingen te overwegen omdat het systeem is ontworpen in plaats van nadat een systeem is geïmplementeerd. Dit is van cruciaal belang, omdat het onhaalbaar en foutgevoelig is om beveiligingsbeveiliging te herbouwen op talloze apparaten in het veld en klanten risico lopen.

Veel ontwikkelteams doen uitstekend werk met het vastleggen van de functionele vereisten voor het systeem waar klanten baat bij hebben. Het identificeren van niet-voor de hand liggende manieren waarop iemand het systeem kan misbruiken, is echter lastiger. Bedreigingsmodellering kan ontwikkelteams helpen te begrijpen wat een aanvaller kan doen en waarom. Threat modeling is een gestructureerd proces dat een discussie creëert over de beslissingen voor beveiligingsontwerpen in het systeem, evenals wijzigingen in het ontwerp die worden aangebracht op de manier die van invloed zijn op de beveiliging. Hoewel een bedreigingsmodel gewoon een document is, is deze documentatie ook een ideale manier om de continuïteit van de kennis te waarborgen, de geleerde lessen te bewaren en het nieuwe team snel te helpen onboarden. Ten slotte is het resultaat van threat modeling dat u andere beveiligingsaspecten kunt overwegen, zoals welke beveiligingsverplichtingen u aan uw klanten wilt verstrekken. Deze toezeggingen in combinatie met threat modeling vormen de informatie over en het testen van uw Internet of Things (IoT) oplossing.

Wanneer threat modeling moet worden gebruikt

Threat modeling biedt de grootste waarde wanneer u deze in de ontwerpfase op neemt. Wanneer u ontwerpt, hebt u de grootste flexibiliteit om wijzigingen aan te brengen om bedreigingen te elimineren. Het elimineren van bedreigingen is het gewenste resultaat. Het is veel eenvoudiger dan oplossingen toevoegen, testen en ervoor zorgen dat ze actueel blijven en bovendien is dergelijke verwijdering niet altijd mogelijk. Het wordt moeilijker om bedreigingen te elimineren naarmate een product volwassener wordt en uiteindelijk meer werk en veel moeilijkere afwegingen vereist dan threat modeling vroeg in de ontwikkeling.

Waar u rekening mee moet houden bij threat modeling

U moet de oplossing als geheel bekijken en u richten op de volgende gebieden:

  • De beveiligings- en privacyfuncties
  • De functies waarvan de fouten relevant zijn voor de beveiliging
  • De functies die een vertrouwensgrens raken

Wie voert threat modeling uit

Threat modeling is een proces zoals elk ander proces. Het is een goed idee om het bedreigingsmodeldocument te behandelen zoals elk ander onderdeel van de oplossing en dit te valideren. Veel ontwikkelteams doen uitstekend werk met het vastleggen van de functionele vereisten voor het systeem waar klanten baat bij hebben. Het identificeren van niet-voor de hand liggende manieren waarop iemand het systeem kan misbruiken, is echter lastiger. Bedreigingsmodellering kan ontwikkelteams helpen te begrijpen wat een aanvaller kan doen en waarom.

Threat Modeling uitvoeren

Het threat modeling-proces bestaat uit vier stappen; de stappen zijn:

  • De toepassing modelleren
  • Bedreigingen opsnoemen
  • Bedreigingen beperken
  • De oplossingen valideren

De processtappen

Drie vuistregels om rekening mee te houden bij het bouwen van een bedreigingsmodel:

  1. Maak een diagram buiten de referentiearchitectuur.

  2. Begin breadth-first. Krijg een overzicht en krijg inzicht in het systeem als geheel, vóór deep-diving. Deze aanpak helpt ervoor te zorgen dat u op de juiste plaatsen in de diepte gaat.

  3. Het proces aan te doen, laat u niet door het proces worden aan station. Als u een probleem vindt in de modelleringsfase en dit wilt verkennen, gaat u voor het probleem. U hoeft deze stappen niet per se te volgen.

Bedreigingen

De vier kernelementen van een bedreigingsmodel zijn:

  • Processen zoals webservices, Win32-services en *nix-daemons. Sommige complexe entiteiten (bijvoorbeeld veldgateways en sensoren) kunnen worden geabstraheerd als een proces wanneer technische inzoomen op deze gebieden niet mogelijk is.

  • Gegevensopslag (overal waar gegevens worden opgeslagen, zoals een configuratiebestand of database)

  • Gegevensstroom (waarbij gegevens tussen andere elementen in de toepassing worden verplaatst)

  • Externe entiteiten (alles wat met het systeem communiceert, maar niet onder het beheer van de toepassing valt, voorbeelden zijn gebruikers en satellietfeeds)

Alle elementen in het architectuurdiagram zijn onderhevig aan verschillende bedreigingen; in dit artikel de STRIDE-mnemonic. Lees Threat Modeling Opnieuw, STRIDE voor meer informatie over de STRIDE-elementen.

Verschillende elementen van het toepassingsdiagram zijn onderhevig aan bepaalde STRIDE-bedreigingen:

  • Processen zijn onderhevig aan STRIDE
  • Gegevensstromen zijn onderhevig aan TID
  • Gegevensopslag is onderhevig aan TID, en soms R, wanneer de gegevensopslag logboekbestanden zijn.
  • Externe entiteiten zijn onderhevig aan SRD

Beveiliging in IoT

Verbonden apparaten voor speciale doeleinden hebben een groot aantal potentiële interactieoppervlakken en interactiepatronen, die allemaal moeten worden overwogen om een framework te bieden voor het beveiligen van digitale toegang tot deze apparaten. De term 'digitale toegang' wordt hier gebruikt om onderscheid te maken tussen bewerkingen die worden uitgevoerd via directe apparaatinteractie waarbij toegangsbeveiliging wordt geboden via fysiek toegangsbeheer. Bijvoorbeeld door het apparaat in een ruimte te plaatsen met een vergrendeling op de deur. Hoewel fysieke toegang niet kan worden geweigerd met behulp van software en hardware, kunnen er maatregelen worden genomen om te voorkomen dat fysieke toegang leidt tot systeemstoringen.

Als u de interactiepatronen verkent, bekijkt u 'apparaatbeheer' en 'apparaatgegevens' met dezelfde mate van aandacht. 'Apparaatbeheer' kan worden geclassificeerd als alle informatie die aan een apparaat wordt verstrekt door een partij met het doel het gedrag van het apparaat te wijzigen of te beïnvloeden ten opzichte van de status of de status van de omgeving. 'Apparaatgegevens' kunnen worden geclassificeerd als informatie die een apparaat naar een andere partij stuurt over de status en de waargenomen status van de omgeving.

Als u de aanbevolen procedures voor beveiliging wilt optimaliseren, is het raadzaam om een typische IoT-architectuur te verdelen over verschillende onderdelen/zones als onderdeel van de threat modeling-oefening. Deze zones worden volledig in deze sectie beschreven en omvatten:

  • Apparaat
  • Veldgateway,
  • Cloudgateways en
  • Diensten.

Zones zijn een brede manier om een oplossing te segmenteren; Elke zone heeft vaak zijn eigen gegevens- en verificatie- en autorisatievereisten. Zones kunnen ook worden gebruikt om schade te isoleren en de impact van zones met een lage vertrouwensrelatie op hogere vertrouwenszones te beperken.

Elke zone wordt gescheiden door een vertrouwensgrens, die wordt vermeld als de stippellijn in het volgende diagram. Het vertegenwoordigt een overgang van gegevens/informatie van de ene bron naar de andere. Tijdens deze overgang kunnen de gegevens/informatie onderhevig zijn aan Spoofing, Tampering, Repudiation, Information Disclosure, Denial of Service en Elevation of Privilege (STRIDE).

IoT-beveiligingszones

De onderdelen die binnen elke grens worden weergegeven, zijn ook onderhevig aan STRIDE, waardoor een volledige 360 threat modeling-weergave van de oplossing mogelijk is. In de volgende secties worden alle onderdelen en specifieke beveiligingsproblemen en -oplossingen belichten die moeten worden gebruikt.

In de volgende secties worden standaardonderdelen besproken die doorgaans in deze zones worden gevonden.

De apparaatzone

De apparaatomgeving is de directe fysieke ruimte rond het apparaat waar fysieke toegang en/of 'lokaal netwerk' digitale peer-to-peer-toegang tot het apparaat haalbaar is. Er wordt van uitgegaan dat een 'lokaal netwerk' een netwerk is dat zich onderscheidt van ( maar mogelijk overbrugd naar ) het openbare internet, en bevat draadloze radiotechnologie met een kort bereik die peer-to-peer-communicatie van apparaten mogelijk maakt. Het omvat geen netwerkvirtualisatietechnologie die de lijkt lijkt op een dergelijk lokaal netwerk en omvat ook geen openbare operatornetwerken waarvoor twee apparaten moeten communiceren via openbare netwerkruimte als ze een peer-to-peer-communicatierelatie zouden gaan.

De veldgatewayzone

Field Gateway is een apparaat/apparaat of een algemene servercomputersoftware die fungeert als communicatie-enabler en, mogelijk, als een hub voor apparaatbeheersysteem en apparaatgegevensverwerking. De veldgatewayzone bevat de veldgateway zelf en alle apparaten die eraan zijn gekoppeld. Zoals de naam al aangeeft, werken veldgateways buiten toegewezen faciliteiten voor gegevensverwerking, zijn ze meestal locatiegebonden, zijn ze mogelijk onderhevig aan fysieke indringing en hebben ze beperkte operationele redundantie. Alles om te zeggen dat een veldgateway doorgaans een ding is dat kan worden aanraken en saboteren terwijl u weet wat de functie ervan is.

Een veldgateway wijkt af van een verkeersrouter omdat deze een actieve rol heeft gehad bij het beheren van de toegang en informatiestroom, wat betekent dat het een toepassingsadressentiteit en netwerkverbinding of sessieterminal is. Een NAT-apparaat of -firewall daarentegen komt niet in aanmerking als veldgateways omdat het geen expliciete verbindings- of sessieterminals zijn, maar een route (of blokkeer) verbindingen of sessies die via deze gateways worden gemaakt. De veldgateway heeft twee verschillende oppervlakten. De ene ziet de apparaten die eraan zijn gekoppeld en vertegenwoordigt de binnenzijde van de zone, en de andere gezichten alle externe partijen en is de rand van de zone.

De cloudgatewayzone

Een cloudgateway is een systeem dat externe communicatie mogelijk maakt van en naar apparaten of veldgateways vanaf verschillende sites in openbare netwerkruimte, meestal naar een systeem voor controle en gegevensanalyse in de cloud, een federatie van dergelijke systemen. In sommige gevallen kan een cloudgateway onmiddellijk toegang tot apparaten voor speciale doeleinden vergemakkelijken vanaf terminals, zoals tablets of telefoons. In de hier besproken context is 'cloud' bedoeld om te verwijzen naar een toegewezen gegevensverwerkingssysteem dat niet is gebonden aan dezelfde site als de gekoppelde apparaten of veldgateways. Ook in een cloudzone voorkomen operationele maatregelen gerichte fysieke toegang en zijn ze niet noodzakelijkerwijs blootgesteld aan een 'openbare cloud'-infrastructuur.

Een cloudgateway kan mogelijk worden gekoppeld aan een overlay voor netwerkvirtualisatie om de cloudgateway en alle gekoppelde apparaten of veldgateways te isoleren van ander netwerkverkeer. De cloudgateway zelf is geen apparaatbeheersysteem of een verwerkings- of opslagfaciliteit voor apparaatgegevens; deze faciliteiten interface met de cloudgateway. De cloudgatewayzone bevat de cloudgateway zelf, samen met alle veldgateways en apparaten die er direct of indirect aan zijn gekoppeld. De rand van de zone is een afzonderlijke surface area waarbij alle externe partijen via communiceren.

De serviceszone

Een 'service' wordt voor deze context gedefinieerd als elk softwareonderdeel of elke module die via een veld- of cloudgateway verbinding maakt met apparaten voor het verzamelen en analyseren van gegevens, evenals voor command and control. Services zijn een dienst. Ze handelen onder hun identiteit ten opzichte van gateways en andere subsystemen, slaan gegevens op en analyseren ze, geven autonoom opdrachten aan apparaten op basis van gegevensinzichten of schema's en stellen informatie en controlemogelijkheden beschikbaar voor geautoriseerde eindgebruikers.

Informatieapparaten versus apparaten voor speciale doeleinden

Pc's, telefoons en tablets zijn voornamelijk interactieve informatieapparaten. Telefoons en tablets zijn expliciet geoptimaliseerd voor het maximaliseren van de levensduur van de batterij. Ze schakelen bij voorkeur gedeeltelijk uit wanneer ze niet onmiddellijk interactie hebben met een persoon of wanneer ze geen services bieden zoals muziek afspelen of hun eigenaar naar een bepaalde locatie begeleiden. Vanuit het perspectief van systemen gedragen deze informatietechnologieapparaten zich voornamelijk als proxieën ten opzichte van mensen. Dit zijn 'personenactuators' die acties voorstellen en 'mensensensoren' die invoer verzamelen.

Apparaten voor speciale doeleinden, van eenvoudige temperatuursensoren tot complexe fabrieksproductielijnen met duizenden onderdelen erin, zijn verschillend. Deze apparaten zijn veel meer bedoeld voor het doel en zelfs als ze een gebruikersinterface bieden, zijn ze grotendeels bedoeld om te communiceren met of te worden geïntegreerd in assets in de fysieke wereld. Ze meten en rapporteren omgevingsomstandigheden, draaien kleppen, controleservos, geluidssignaal, switchlichten en voeren veel andere taken uit. Ze helpen bij het werk waarvoor een informatieapparaat te algemeen, te duur, te groot of te verantwoordelijk is. Het concrete doel bepaalt onmiddellijk hun technische ontwerp en het beschikbare financiële budget voor hun productie- en geplande levensduur. De combinatie van deze twee belangrijke factoren beperkt het beschikbare budget voor operationele energie, de fysieke footprint en dus beschikbare opslag-, reken- en beveiligingsmogelijkheden.

Als er iets 'fout gaat' met geautomatiseerde apparaten of apparaten die op afstand kunnen worden bestuurd, bijvoorbeeld fysieke defecten of controlelogicadefecten voor onbevoegde indringing en manipulatie. De productie veel kan worden vernietigd, gebouwen kunnen worden vernietigd of platgemaakt en mensen kunnen worden vernietigd of zelfs om het leven komen. Dit is een heel andere categorie schade dan iemand die de limiet van een gestolen creditcard heeft overschreden. De beveiligingsbalk voor apparaten die dingen verplaatsen, en ook voor sensorgegevens die uiteindelijk leiden tot opdrachten die ervoor zorgen dat dingen worden verplaatst, moet hoger zijn dan in elk e-commerce- of bankscenario.

Interacties tussen apparaatbeheer en apparaatgegevens

Verbonden apparaten voor speciale doeleinden hebben een groot aantal potentiële interactieoppervlakken en interactiepatronen, die allemaal moeten worden overwogen om een framework te bieden voor het beveiligen van digitale toegang tot deze apparaten. De term 'digitale toegang' wordt hier gebruikt om onderscheid te maken tussen bewerkingen die worden uitgevoerd via directe apparaatinteractie waarbij toegangsbeveiliging wordt geboden via fysiek toegangsbeheer. Bijvoorbeeld door het apparaat in een ruimte te plaatsen met een vergrendeling op de deur. Hoewel fysieke toegang niet kan worden geweigerd met behulp van software en hardware, kunnen er maatregelen worden genomen om te voorkomen dat fysieke toegang leidt tot systeemstoringen.

Als u de interactiepatronen verkent, bekijkt u 'apparaatbeheer' en 'apparaatgegevens' met hetzelfde niveau van aandacht tijdens het modelleren van bedreigingen. 'Apparaatbeheer' kan worden geclassificeerd als alle informatie die aan een apparaat wordt verstrekt door een partij met het doel het gedrag van het apparaat te wijzigen of te beïnvloeden ten opzichte van de status of de status van de omgeving. 'Apparaatgegevens' kunnen worden geclassificeerd als informatie die een apparaat naar een andere partij stuurt over de status en de waargenomen status van de omgeving.

Threat Modeling uitvoeren voor de Azure IoT-referentiearchitectuur

Microsoft gebruikt het framework dat eerder is beschreven voor threat modeling voor Azure IoT. In de volgende sectie wordt het concrete voorbeeld van azure IoT-referentiearchitectuur gebruikt om te laten zien hoe u kunt nadenken over threat modeling voor IoT en hoe u de geïdentificeerde bedreigingen kunt aanpakken. In dit voorbeeld worden vier belangrijke aandachtsgebieden geïdentificeerd:

  • Apparaten en gegevensbronnen,
  • Gegevenstransport,
  • Apparaat- en gebeurtenisverwerking, en
  • Stijl

Threat Modeling voor Azure IoT

Het volgende diagram biedt een vereenvoudigde weergave van de IoT-architectuur van Microsoft met behulp van een Data Flow Diagram-model dat wordt gebruikt door de Microsoft Threat Modeling Tool:

Threat Modeling voor Azure IoT met MS Threat Modeling Tool

Het is belangrijk te weten dat de architectuur de mogelijkheden van het apparaat en de gateway van elkaar scheidt. Op deze manier kunnen gebruikers gebruikmaken van veiligere gatewayapparaten: ze kunnen communiceren met de cloudgateway met behulp van beveiligde protocollen. Hiervoor is doorgaans meer verwerkingsoverhead vereist die een systeemeigen apparaat, zoals een thermostaat, zelf kan bieden. In de zone Azure-services wordt ervan uitgenomen dat de cloudgateway wordt vertegenwoordigd door de Azure IoT Hub service.

Apparaat- en gegevensbronnen/gegevenstransport

In deze sectie wordt de architectuur beschreven die eerder is beschreven door middel van threat modeling en krijgt u een overzicht van hoe u een aantal van de inherente problemen kunt aanpakken. Dit voorbeeld is gericht op de kernelementen van een bedreigingsmodel:

  • Processen (zowel onder uw beheer als externe items)
  • Communicatie (ook wel gegevensstromen genoemd)
  • Storage (ook wel gegevensopslag genoemd)

Processen

In elk van de categorieën die worden beschreven in de Azure IoT-architectuur, wordt in dit voorbeeld geprobeerd een aantal verschillende bedreigingen te beperken in de verschillende fasen waarin gegevens/informatie bestaat: proces, communicatie en opslag. Hieronder volgt een overzicht van de meest voorkomende bedreigingen voor de categorie 'proces', gevolgd door een overzicht van hoe deze bedreigingen het best kunnen worden vereend:

Spoofing (S): Een aanvaller kan cryptografische sleutelmateriaal extraheren van een apparaat, op software- of hardwareniveau, en vervolgens toegang krijgen tot het systeem met een ander fysiek of virtueel apparaat onder de identiteit van het apparaat van waaruit het sleutelmateriaal is genomen. Een goede illustratie zijn externe besturingselementen die elke tv kunnen draaien en die populaire hulpprogramma's voor het maken van een programma zijn.

Denial of Service (D): Een apparaat kan niet worden weergegeven en kan niet functioneren of communiceren door radiofrequenties of snijkabels te verstoren. Zo kan een bewakingscamera die de stroom of netwerkverbinding opzettelijk heeft verkabeld, helemaal geen gegevens rapporteren.

Manipulatie (T): een aanvaller kan de software die op het apparaat wordt uitgevoerd gedeeltelijk of volledig vervangen, waardoor de vervangen software gebruik kan maken van de legitieme identiteit van het apparaat als het sleutelmateriaal of de cryptografische faciliteiten met sleutelmateriaal beschikbaar waren voor het onrechtmatige programma. Een aanvaller kan bijvoorbeeld gebruikmaken van geëxtraheerd sleutelmateriaal om gegevens op het communicatiepad van het apparaat te onderscheppen en onderdrukken en deze te vervangen door onwaar gegevens die worden geverifieerd met het gestolen sleutelmateriaal.

Openbaarmaking van informatie (I): Als op het apparaat gemanipuleerde software wordt uitgevoerd, kan dergelijke gemanipuleerde software mogelijk gegevens lekken naar niet-geautoriseerde partijen. Een aanvaller kan bijvoorbeeld gebruikmaken van geëxtraheerd sleutelmateriaal om zichzelf in het communicatiepad tussen het apparaat en een controller of veldgateway of cloudgateway te injecteren om informatie te verwijderen.

Verhoging van bevoegdheden (E): Een apparaat dat een specifieke functie heeft, kan worden gedwongen iets anders te doen. Een klep die is geprogrammeerd om halfweg te openen, kan bijvoorbeeld worden lastig te openen.

Onderdeel Bedreiging Oplossing Risico Implementatie
Apparaat S Identiteit toewijzen aan het apparaat en het apparaat verifiëren Het apparaat of een deel van het apparaat vervangen door een ander apparaat. Hoe weet u dat u met het juiste apparaat praat? Het apparaat authenticeren met behulp van Transport Layer Security (TLS) of IPSec. Infrastructuur moet ondersteuning bieden voor het gebruik van vooraf gedeelde sleutels (PSK) op apparaten die geen volledige asymmetrische cryptografie kunnen verwerken. Gebruikmaken van Azure AD, OAuth
TRID Pas manipulatiemechanismen toe op het apparaat, bijvoorbeeld door het moeilijk te maken om sleutels en ander cryptografische materiaal van het apparaat te extraheren. Het risico is dat iemand met het apparaat knoeien (fysieke interferentie). Hoe weet u zeker dat er niet met dat apparaat is geknoeid? De meest efficiënte oplossing is een TPM-mogelijkheid (Trusted Platform Module) waarmee sleutels kunnen worden opgeslagen in speciale on-chip-circuits van waaruit de sleutels niet kunnen worden gelezen, maar die alleen kunnen worden gebruikt voor cryptografische bewerkingen die gebruikmaken van de sleutel, maar nooit de sleutel bekendmaken. Geheugenversleuteling van het apparaat. Sleutelbeheer voor het apparaat. De code ondertekenen.
E Toegangsbeheer van het apparaat. Autorisatieschema. Als het apparaat afzonderlijke acties kan uitvoeren op basis van opdrachten van een externe bron of zelfs aangetaste sensoren, kan de aanval bewerkingen uitvoeren die niet anderszins toegankelijk zijn. Een autorisatieschema voor het apparaat
Veldgateway S De veldgateway bij cloudgateway (zoals op certificaten, PSK of claim gebaseerd) authenticeren. Als iemand Field Gateway kan vervalsen, kan deze zich presenteren als elk apparaat. TLS RSA/PSK, IPSec, RFC 4279. Alle dezelfde problemen met betrekking tot sleutelopslag en attestation van apparaten in het algemeen. Het beste is TPM gebruiken. 6LowPAN-extensie voor IPSec ter ondersteuning van draadloze sensornetwerken (WSN).
TRID De veldgateway beveiligen tegen manipulatie (TPM) Spoofing-aanvallen waardoor de cloudgateway denkt te praten met de veldgateway, kan leiden tot openbaarmaking van informatie en onrechtmatige manipulatie van gegevens Geheugenversleuteling, verificatie van TPM.
E Toegangsbeheermechanisme voor Field Gateway

Hier zijn enkele voorbeelden van bedreigingen in deze categorie:

Adresvervalsing: een aanvaller kan cryptografische sleutelmateriaal extraheren van een apparaat, op software- of hardwareniveau, en vervolgens toegang krijgen tot het systeem met een ander fysiek of virtueel apparaat onder de identiteit van het apparaat waaruit het sleutelmateriaal is genomen.

Denial of Service: een apparaat kan niet functioneren of communiceren door radiofrequenties te verstoren of kabels te knippen. Zo kan een bewakingscamera met een opzettelijke stroom- of netwerkverbinding helemaal geen gegevens rapporteren.

Manipulatie: een aanvaller kan de software die op het apparaat wordt uitgevoerd gedeeltelijk of geheel vervangen, waardoor de vervangen software gebruik kan maken van de legitieme identiteit van het apparaat als het sleutelmateriaal of de cryptografische faciliteiten met sleutelmateriaal beschikbaar waren voor het onrechtmatige programma.

Manipulatie: een bewakingscamera met een zichtbaar spectrumbeeld van een lege mand kan worden gericht op een foto van een dergelijke foto. Een brand- of brandsensor kan rapporteren dat iemand er een lichter onder heeft. In beide gevallen kan het apparaat technisch volledig betrouwbaar zijn ten opzichte van het systeem, maar wordt gemanipuleerde informatie rapporteert.

Manipulatie: een aanvaller kan gebruikmaken van geëxtraheerd sleutelmateriaal om gegevens op het communicatiepad van het apparaat te onderscheppen en te onderdrukken en te vervangen door onwaar gegevens die worden geverifieerd met het gestolen sleutelmateriaal.

Openbaarmaking van informatie: als op het apparaat gemanipuleerde software wordt uitgevoerd, kan dergelijke gemanipuleerde software mogelijk gegevens lekken naar niet-geautoriseerde partijen.

Openbaarmaking van informatie: Een aanvaller kan geëxtraheerd sleutelmateriaal gebruiken om zichzelf in het communicatiepad tussen het apparaat en een controller of veldgateway of cloudgateway te injecteren om informatie te verwijderen.

Denial of Service: het apparaat kan worden uitgeschakeld of omgezet in een modus waarin communicatie niet mogelijk is (wat opzettelijk is op veel industriële machines).

Manipulatie: het apparaat kan opnieuw worden geconfigureerd om te werken in een status die onbekend is voor het controlesysteem (buiten bekende kalibratieparameters) en zo gegevens te verstrekken die onjuist kunnen worden geïnterpreteerd

Verhoging van bevoegdheden: een apparaat dat een specifieke functie heeft, kan worden gedwongen iets anders te doen. Een klep die is geprogrammeerd om halfweg te openen, kan bijvoorbeeld worden lastig te krijgen om helemaal te openen.

Spoofing/Tampering/Repudiation: Als dit niet wordt beveiligd (wat zelden het geval is bij externe besturingselementen van consumenten), kan een aanvaller de status van een apparaat anoniem bewerken. Een goede illustratie zijn externe besturingselementen die elke tv kunnen draaien en die populaire hulpprogramma's voor het maken van een programma zijn.

Communicatie

Bedreigingen rond het communicatiepad tussen apparaten, apparaten en veldgateways, en apparaat- en cloudgateway. De volgende tabel biedt enkele richtlijnen voor open sockets op het apparaat/VPN:

Onderdeel Bedreiging Oplossing Risico Implementatie
Apparaat IoT Hub TID (D) TLS (PSK/RSA) om het verkeer te versleutelen De communicatie tussen het apparaat en de gateway meeluisteren of verstoren Beveiliging op protocolniveau. Met aangepaste protocollen moet u na gaan hoe u deze kunt beveiligen. In de meeste gevallen vindt de communicatie plaats van het apparaat naar de IoT Hub (het apparaat initieert de verbinding).
Apparaat naar apparaat TID (D) TLS (PSK/RSA) om het verkeer te versleutelen. Het lezen van gegevens die onderweg zijn tussen apparaten. Knoeien met de gegevens. Het apparaat overbelasten met nieuwe verbindingen Beveiliging op protocolniveau (MQTT/AMQP/HTTP/CoAP. Met aangepaste protocollen moet u na gaan hoe u deze kunt beveiligen. De oplossing voor de DoS-bedreiging is om apparaten te peeren via een cloud- of veldgateway en deze alleen te laten fungeren als clients in de richting van het netwerk. De peering kan resulteren in een directe verbinding tussen de peers nadat deze door de gateway zijn brokered
Extern entiteitsapparaat TID Sterke koppeling van de externe entiteit met het apparaat De verbinding met het apparaat meeluisteren. De communicatie met het apparaat verstoren De externe entiteit veilig koppelen aan het NFC/Bluetooth LE van het apparaat. Het operationele deelvenster van het apparaat beheren (fysiek)
Field Gateway Cloud Gateway TID TLS (PSK/RSA) om het verkeer te versleutelen. De communicatie tussen het apparaat en de gateway meeluisteren of verstoren Beveiliging op protocolniveau (MQTT/AMQP/HTTP/CoAP). Met aangepaste protocollen moet u na gaan hoe u deze kunt beveiligen.
Apparaatcloudgateway TID TLS (PSK/RSA) om het verkeer te versleutelen. De communicatie tussen het apparaat en de gateway meeluisteren of verstoren Beveiliging op protocolniveau (MQTT/AMQP/HTTP/CoAP). Met aangepaste protocollen moet u na gaan hoe u deze kunt beveiligen.

Hier zijn enkele voorbeelden van bedreigingen in deze categorie:

Denial of Service: beperkte apparaten staan doorgaans onder DoS-bedreiging wanneer ze actief luisteren naar binnenkomende verbindingen of ongevraagde datagrammen in een netwerk, omdat een aanvaller veel verbindingen parallel kan openen en deze niet traag kan bedienen of bedienen, of omdat het apparaat kan worden overspoeld met ongevraagd verkeer. In beide gevallen kan het apparaat in het netwerk effectief onbruikbaar worden gemaakt.

Adresvervalsing, openbaarmaking van informatie: beperkte apparaten en apparaten voor speciale doeleinden hebben vaak één voor alle beveiligingsvoorzieningen, zoals wachtwoord- of pincodebeveiliging, of ze zijn volledig afhankelijk van het vertrouwen van het netwerk, wat betekent dat ze toegang verlenen tot informatie wanneer een apparaat zich in hetzelfde netwerk en dat netwerk vaak alleen wordt beveiligd door een gedeelde sleutel. Dit betekent dat wanneer het gedeelde geheim naar het apparaat of netwerk wordt vrijgegeven, het mogelijk is om het apparaat te controleren of gegevens te observeren die van het apparaat zijn afkomstig.

Spoofing: een aanvaller kan de uitzending onderscheppen of gedeeltelijk overschrijven en de oorspronkelijke persoon vervalsen (man in het midden).

Manipulatie: een aanvaller kan de uitzending onderscheppen of gedeeltelijk overschrijven en valse informatie verzenden.

Openbaarmaking van informatie: een aanvaller kan een uitzending meeluisteren en informatie verkrijgen zonder autorisatie.

Denial of Service: een aanvaller kan het broadcastsignaal vastlopen en de distributie van informatie weigeren.

Storage

Elk apparaat en elke veldgateway heeft een vorm van opslag (tijdelijk voor het in de wachtrij opslaan van de gegevens, de opslag van de installatieafbeelding van het besturingssysteem).

Onderdeel Bedreiging Oplossing Risico Implementatie
Apparaatopslag TRID Storage voor het ondertekenen van de logboeken Het lezen van gegevens uit de opslag (PII-gegevens), knoeien met telemetriegegevens. Knoeien met opdrachtbeheergegevens in de wachtrij of in de cache. Knoeien met configuratie- of firmware-updatepakketten die lokaal in de cache of in de wachtrij worden geplaatst, kan ertoe leiden dat het besturingssysteem en/of systeemonderdelen worden aangetast Versleuteling, MAC (Message Authentication Code) of digitale handtekening. Waar mogelijk sterk toegangsbeheer via toegangsbeheerlijsten (ACL's) of machtigingen voor resources.
Afbeelding van het besturingssysteem van het apparaat TRID Knoeien met besturingssysteem /vervangen van de onderdelen van het besturingssysteem Alleen-lezen besturingssysteempartitie, ondertekende besturingssysteemafbeelding, versleuteling
Field Gateway Storage (de gegevens in de wachtrij) TRID Storage voor het ondertekenen van de logboeken Het lezen van gegevens uit de opslag (PII-gegevens), knoeien met telemetriegegevens, knoeien met opdrachtbeheergegevens in de wachtrij of in de cache. Knoeien met configuratie- of firmware-updatepakketten (bestemd voor apparaten of veldgateway) terwijl deze lokaal in de cache of in de wachtrij worden geplaatst, kan ertoe leiden dat het besturingssysteem en/of systeemonderdelen worden aangetast BitLocker
Afbeelding van veldgateway-besturingssysteem TRID Knoeien met besturingssysteem /de onderdelen van het besturingssysteem vervangen Alleen-lezen besturingssysteempartitie, ondertekende besturingssysteemafbeelding, versleuteling

Apparaat- en gebeurtenisverwerking/cloudgatewayzone

Een cloudgateway is een systeem dat externe communicatie mogelijk maakt van en naar apparaten of veldgateways vanaf verschillende sites in openbare netwerkruimte, meestal naar een systeem voor controle en gegevensanalyse in de cloud, een federatie van dergelijke systemen. In sommige gevallen kan een cloudgateway onmiddellijk toegang tot apparaten voor speciale doeleinden vergemakkelijken vanaf terminals, zoals tablets of telefoons. In de hier besproken context is 'cloud' bedoeld om te verwijzen naar een toegewezen gegevensverwerkingssysteem dat niet is gebonden aan dezelfde site als de gekoppelde apparaten of veldgateways, en waar operationele maatregelen gerichte fysieke toegang verhinderen, maar niet noodzakelijkerwijs een openbare cloudinfrastructuur is. Een cloudgateway kan mogelijk worden gekoppeld aan een overlay voor netwerkvirtualisatie om de cloudgateway en alle gekoppelde apparaten of veldgateways te isoleren van ander netwerkverkeer. De cloudgateway zelf is geen apparaatbeheersysteem of een verwerkings- of opslagfaciliteit voor apparaatgegevens; deze faciliteiten interface met de cloudgateway. De cloudgatewayzone bevat de cloudgateway zelf, samen met alle veldgateways en apparaten die er direct of indirect aan zijn gekoppeld.

Cloudgateway is voornamelijk op maat gemaakte software die wordt uitgevoerd als een service met beschikbaar gemaakte eindpunten waarmee veldgateway en apparaten verbinding maken. Als zodanig moet het worden ontworpen met het oog op beveiliging. Volg het SDL-proces voor het ontwerpen en bouwen van deze service.

Serviceszone

Een besturingssysteem (of controller) is een softwareoplossing die interfaces maakt met een apparaat, een veldgateway of cloudgateway voor het beheren van een of meer apparaten en/of voor het verzamelen en/of opslaan en/of analyseren van apparaatgegevens voor presentatie- of daaropvolgende beheerdoeleinden. Controlesystemen zijn de enige entiteiten in het bereik van deze discussie die direct interactie met personen mogelijk kunnen maken. De uitzonderingen zijn tussenliggende fysieke controleoppervlakken op apparaten, zoals een switch waarmee een persoon het apparaat kan uitschakelen of andere eigenschappen kan wijzigen en waarvoor geen functioneel equivalent beschikbaar is dat digitaal toegankelijk is.

Tussenliggende fysieke controleoppervlakken zijn gebieden waar het beheer van logica de functie van het fysieke controleoppervlak beperkt, zodat een equivalente functie op afstand kan worden gestart of invoerconflicten met externe invoer kunnen worden vermeden. Dergelijke tussenliggende besturingsoppervlakken zijn conceptueel gekoppeld aan een lokaal besturingselementsysteem dat gebruik maakt van dezelfde onderliggende functionaliteit als elk ander extern controlesysteem waar het apparaat parallel aan kan worden gekoppeld. De belangrijkste bedreigingen voor cloud-computing kunnen worden gelezen op de pagina Cloud Security Alliance (CSA).

Aanvullende bronnen

Raadpleeg voor meer informatie de volgende artikelen:

Zie ook

Lees meer IoT Hub beveiliging in Toegang tot IoT Hub in de ontwikkelaarshandleiding IoT Hub voor ontwikkelaars.