Architecture de sécurité pour les solutions IoT

Lorsque vous concevez et concevez une solution IoT, il est important de comprendre les menaces potentielles et d’inclure les défenses appropriées. Comprendre comment un attaquant peut compromettre un système vous aide à vous assurer que les atténuations appropriées sont en place dès le début.

Modélisation des menaces

Microsoft recommande d’utiliser un processus de modélisation des menaces dans le cadre de la conception de votre solution IoT. Si vous n’êtes pas familiarisé avec la modélisation des menaces et le cycle de vie de développement sécurisé, consultez :

Sécurité des solutions IoT

Il est utile de diviser votre architecture IoT en plusieurs zones dans le cadre de l’exercice de modélisation des menaces :

  • Appareil
  • Passerelle de champ
  • Passerelle cloud
  • Service

Chaque zone a souvent ses propres exigences en matière d’authentification et d’autorisation et de données. Vous pouvez également utiliser des zones pour isoler les dommages et limiter l’impact des zones de faible confiance sur des zones de confiance supérieures.

Chaque zone est séparée par une limite d’approbation, indiquée comme la ligne rouge pointillée dans le diagramme suivant. Il représente une transition de données d’une source à une autre. Pendant cette transition, les données peuvent être soumises aux menaces suivantes :

  • Usurpation
  • Falsification
  • Répudiation (rejet)
  • Divulgation d’informations
  • Denial of service (déni de service)
  • Élévation de privilège

Pour en savoir plus, consultez le modèle STRIDE.

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

Vous pouvez utiliser STRIDE pour modéliser les menaces pour chaque composant dans chaque zone. Les sections suivantes exposent dans le détail les composants, les problèmes de sécurité spécifiques, ainsi que les solutions qui doivent être mises en place.

Le reste de cet article décrit plus en détail les menaces et les atténuations pour ces zones et composants.

Zone d’appareil

L’environnement de l’appareil est l’espace autour de l’appareil où l’accès physique et l’accès numérique au réseau local à l’appareil sont réalisables. Un réseau local est supposé être distinct et isolé de – mais potentiellement ponté vers – l’Internet public. L’environnement de l’appareil inclut toute technologie radio sans fil de courte portée qui permet la communication d’égal à égal des appareils. Il n’inclut aucune technologie de virtualisation de réseau qui crée l’illusion d’un tel réseau local. Il n’inclut pas les réseaux d’opérateurs publics qui nécessitent que deux appareils communiquent entre l’espace réseau public s’ils souhaitent entrer une relation de communication pair à pair.

Zone de passerelle de champ

Une passerelle de champ est un appareil, une appliance ou un logiciel d’ordinateur serveur à usage général qui joue le rôle d’activeur de communication et, potentiellement, en tant que système de contrôle d’appareil et hub de traitement des données d’appareil. La zone de passerelle de champ inclut la passerelle de champ elle-même et tous les appareils qui y sont attachés. Les passerelles de champ agissent en dehors des installations de traitement des données dédiées, sont généralement liées à l’emplacement, sont potentiellement soumises à des intrusions physiques et ont une redondance opérationnelle limitée. Une passerelle de champ est généralement une chose qu’un attaquant pourrait physiquement saboter s’ils ont obtenu un accès physique.

Une passerelle de champ diffère d’un routeur de trafic dans lequel elle a eu un rôle actif dans la gestion de l’accès et du flux d’informations. La passerelle de champ comporte deux surfaces d’exposition distinctes. L’un fait face aux appareils qui lui sont attachés et représente l’intérieur de la zone. L’autre fait face à toutes les parties externes et est le bord de la zone.

Zone de passerelle cloud

Une passerelle cloud est un système qui permet une communication à distance depuis et vers des appareils ou des passerelles de champ déployées sur plusieurs sites. La passerelle cloud permet généralement un système de contrôle et d’analyse des données basé sur le cloud, ou une fédération de ces systèmes. Dans certains cas, une passerelle cloud peut faciliter l’accès immédiat aux appareils à usage spécifique à partir de terminaux comme les tablettes ou les téléphones. Dans la zone de passerelle cloud, les mesures opérationnelles empêchent l’accès physique ciblé et ne sont pas nécessairement exposées à une infrastructure de cloud public.

Une passerelle cloud peut être mappée dans une superposition de virtualisation de réseau pour isoler la passerelle cloud et tous ses appareils ou passerelles de champ attachés de tout autre trafic réseau. La passerelle cloud elle-même n’est pas un système de contrôle d’appareil ou une installation de traitement ou de stockage pour les données d’appareil ; interface de ces installations avec la passerelle cloud. La zone de passerelle cloud inclut la passerelle cloud proprement dite ainsi que l’ensemble des passerelles de champ et des périphériques directement ou indirectement connectés à elle. Le bord de la zone est une zone de surface distincte par laquelle toutes les parties externes communiquent.

Zone des services

Un service dans ce contexte est n’importe quel composant logiciel ou module qui s’interface avec des appareils via un champ ou une passerelle cloud. Un service peut collecter des données à partir des appareils et des commandes et contrôler ces appareils. Un service est un médiateur qui agit sous son identité vers les passerelles et d’autres sous-systèmes à :

  • Stocker et analyser des données
  • Émettre des commandes sur des appareils en fonction d’insights ou de planifications de données
  • Exposer des informations et des fonctionnalités de contrôle aux utilisateurs finaux autorisés

Appareils IoT

Les appareils IoT sont souvent des appareils à usage spécial qui vont des capteurs de température simples aux lignes de production complexes d’usine avec des milliers de composants à l’intérieur d’eux. Voici quelques exemples de fonctionnalités d’appareil IoT :

  • Mesurer et signaler les conditions environnementales
  • Vannes tournantes
  • Contrôle des régulateurs
  • Alarmes sonores
  • Allumer ou désactiver les lumières

L’objectif de ces appareils détermine leur conception technique et le budget disponible pour leur fonctionnement de production et de durée de vie planifiée. La combinaison de ces facteurs limite le budget d’énergie opérationnelle disponible, l’empreinte physique et les capacités de stockage, de calcul et de sécurité disponibles.

Les éléments qui peuvent se tromper avec un appareil IoT automatisé ou contrôlé à distance sont les suivants :

  • Défauts physiques
  • Défauts de logique de contrôle
  • Intrusion et manipulation non autorisées.

Les conséquences de ces défaillances pourraient être graves, telles que les lots de production détruits, les bâtiments brûlés, ou les blessures et la mort. Par conséquent, il existe une barre de sécurité élevée pour les appareils qui déplacent des éléments ou qui signalent des données de capteur qui entraînent des commandes qui provoquent le déplacement des éléments.

Interactions du contrôle de périphérique et des données de périphérique

Les périphériques connectés à usage spécifique présentent un nombre important de surfaces d’exposition d’interaction potentielle et de modèles d’interaction, qui doivent être pris en considération pour fournir une infrastructure afin de sécuriser l’accès numérique à ces périphériques. L’accès numérique fait référence aux opérations effectuées par le biais de logiciels et de matériels plutôt que par l’accès physique direct à l’appareil. Par exemple, l’accès physique peut être contrôlé en plaçant l’appareil dans une pièce avec un verrou sur la porte. Si l’accès physique ne peut pas être refusé avec des logiciels et du matériel, des mesures peuvent être prises pour interdire l’accès physique au système.

À mesure que vous explorez les modèles d’interaction, examinez les termes contrôle d’appareil et données d’appareil avec le même niveau d’attention. Le contrôle d’appareil fait référence aux informations fournies à un appareil avec l’intention de modifier son comportement. Les données de l’appareil font référence aux informations qu’un appareil émet à tout autre tiers sur son état et sur l’état observé de son environnement.

Modélisation des menaces pour l’architecture de référence Azure IoT

Cette section utilise l’architecture de référence Azure IoT pour montrer comment réfléchir à la modélisation des menaces pour IoT et comment résoudre les menaces identifiées :

Diagram that shows the Azure IoT reference architecture.

Le diagramme suivant fournit une vue simplifiée de l’architecture de référence à l’aide d’un modèle de diagramme de flux de données :

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

L’architecture sépare les fonctionnalités de l’appareil et de la passerelle de champ. Cette approche vous permet d’utiliser des appareils de passerelle de champ plus sécurisés. Les appareils de passerelle de champ peuvent communiquer avec la passerelle cloud à l’aide de protocoles sécurisés, ce qui nécessite généralement une puissance de traitement supérieure à celle d’un appareil simple, tel qu’un thermostat, peut fournir elle-même. Dans la zone des services Azure dans le diagramme, le service Azure IoT Hub est la passerelle cloud.

En fonction de l’architecture décrite précédemment, les sections suivantes présentent quelques exemples de modélisation des menaces. Les exemples se concentrent sur les éléments principaux d’un modèle de menace :

  • Processus
  • Communication
  • Stockage

Processus

Voici quelques exemples de menaces dans la catégorie des processus. Les menaces sont classées en fonction du modèle STRIDE :

Usurpation : un attaquant peut extraire des clés de chiffrement d’un appareil, au niveau logiciel ou matériel. L’attaque utilise ensuite ces clés pour accéder au système à partir d’un autre appareil physique ou virtuel à l’aide de l’identité de l’appareil d’origine.

Déni de service : un appareil peut être dans l’incapacité de fonctionner ou de communiquer en raison d’interférences avec des fréquences radio ou d’une rupture de câbles. Par exemple, une caméra de surveillance qui avait sa puissance ou sa connexion réseau intentionnellement frappée ne peut pas signaler de données, du tout.

Falsification : un attaquant peut remplacer partiellement ou entièrement le logiciel sur l’appareil. Si les clés de chiffrement de l’appareil sont disponibles pour le code des attaquants, elles peuvent ensuite utiliser l’identité de l’appareil.

Falsification : une caméra de surveillance montrant une image visible d’un couloir vide pourrait être destinée à une photographie d’un tel couloir. Un capteur de détection de fumée ou d’incendie peut signaler la présence d’une personne utilisant un briquet. Dans les deux cas, l’appareil peut s’avérer techniquement tout à fait fiable pour le système, alors qu’il rapporte des informations manipulées.

Falsification : un attaquant peut utiliser des clés de chiffrement extraites pour intercepter et supprimer les données envoyées à partir de l’appareil et les remplacer par de fausses données authentifiées par les clés volées.

Divulgation d’informations : si l’appareil exécute des logiciels manipulés, ceux-ci peuvent potentiellement créer une fuite des données vers des tiers non autorisés.

Divulgation d’informations : un attaquant peut utiliser des clés de chiffrement extraites pour injecter du code dans le chemin de communication entre l’appareil et la passerelle de champ ou la passerelle cloud pour désactiver les informations.

Déni de service : l’appareil peut être désactivé ou transformé en mode où la communication n’est pas possible (qui est intentionnelle dans de nombreuses machines industrielles).

Falsification : l’appareil peut être reconfiguré de manière à fonctionner dans un état inconnu du système de contrôle (hors des paramètres d’étalonnage connus), et donc fournir des données qui peuvent être mal interprétées

Élévation de privilège : un appareil qui exécute une fonction spécifique peut être contraint d’en exécuter une autre. Par exemple, une vanne programmée pour s’ouvrir à mi-chemin peut à tort s’ouvrir tout le temps.

Usurpation d’identité/Falsification/Répudiation : si l’appareil n’est pas sécurisé (ce qui est souvent le cas avec les télécommandes grand public), une personne malveillante peut manipuler l’état d’un appareil de façon anonyme. Une bonne illustration est un contrôle à distance qui peut désactiver n’importe quel téléviseur.

Le tableau suivant présente des exemples d’atténuations de ces menaces. Les valeurs de la colonne de menace sont des abréviations :

  • Usurpation d’identité (S)
  • Falsification (T)
  • Répudiation (R)
  • Divulgation d’informations (I)
  • Déni de service (D)
  • Élévation de privilège (E)
Composant Menace Correction Risque Implémentation
Appareil S Affectation d’une identité au périphérique et authentification de ce dernier. Remplacement du périphérique ou d’une partie du périphérique par un autre périphérique. Comment savez-vous que vous parlez au bon appareil ? Authentification du périphérique à l’aide du protocole TLS (Transport Layer Security) ou IPSec. L’infrastructure doit prendre en charge l’utilisation de la clé présharedée (PSK) sur ces appareils qui ne peuvent pas gérer le chiffrement asymétrique complet. Utilisez l’ID Microsoft Entra, OAuth.
TRID Application de mécanismes inviolables à l’appareil, par exemple, en rendant difficile, voire impossible, l’extraction de clés et d’autres éléments de chiffrement de cet appareil. Falsification du périphérique (interférence physique) par un tiers. Comment êtes-vous sûr, cet appareil n’a pas été falsifié. L’atténuation la plus efficace est un module de plateforme sécurisée (TPM). Un module TPM stocke les clés dans des circuits spéciaux à puce à partir desquels les clés ne peuvent pas être lues, mais ne peuvent être utilisées que pour les opérations de chiffrement qui utilisent la clé. Chiffrement de la mémoire du périphérique. Gestion des clés du périphérique. Signature du code.
E Disposer du contrôle d’accès du périphérique. Schéma d’autorisation. Si l’appareil permet d’effectuer des actions individuelles basées sur des commandes provenant d’une source externe, voire de capteurs compromis, il permet aux personnes malveillantes d’effectuer des opérations non accessibles par ailleurs. Avoir un schéma d’autorisation pour l’appareil.
Passerelle de champ S Authentification de la passerelle de champ auprès de la passerelle cloud (par ex. basée sur les certificats, clé prépartagée, basée sur les revendications...) Si quelqu’un peut usurper l’identité de la passerelle de champ, elle peut alors se présenter comme un périphérique. TLS RSA/PSK, IPSe, RFC 4279. Mêmes préoccupations de stockage et d’attestation de clés des périphériques en général ; la meilleure approche consiste à utiliser le module de plateforme sécurisée. Extension 6LowPAN pour IPSec afin de prendre en charge des réseaux de capteurs sans fil (WSN).
TRID Protection de la passerelle de champ contre la falsification (TPM) Les attaques d’usurpation d’identité qui trompent la passerelle cloud pensant qu’elle parle à la passerelle de champ pourraient entraîner la divulgation d’informations et la falsification des données Chiffrement de la mémoire, TPM, authentification.
E Mécanisme de contrôle d’accès pour la passerelle de champ

Communication

Voici quelques exemples de menaces dans la catégorie de communication. Les menaces sont classées en fonction du modèle STRIDE :

Déni de service : les appareils contraints sont généralement sous menace DoS lorsqu’ils écoutent activement les connexions entrantes ou les datagrammes non sollicités sur un réseau. Un attaquant peut ouvrir de nombreuses connexions en parallèle et ne pas les traiter ou les traiter lentement, ou inonder l’appareil avec du trafic non sollicité. Dans les deux cas, le périphérique peut être effectivement rendu inutilisable sur le réseau.

Usurpation d’identité, divulgation d’informations : les appareils limités et les appareils à usage spécial ont souvent des installations de sécurité uniques, telles que la protection par mot de passe ou par code confidentiel. Parfois, ils s’appuient entièrement sur l’approbation du réseau et accordent l’accès aux informations à n’importe quel appareil se trouve sur le même réseau. Si le réseau est protégé par une clé partagée qui est divulguée, un attaquant peut contrôler l’appareil ou observer les données qu’il transmet.

Usurpation d’identité : un attaquant peut intercepter ou remplacer partiellement la diffusion et l’usurpation d’identité de l’expéditeur.

Falsification : un attaquant peut intercepter ou remplacer partiellement la diffusion et envoyer de fausses informations.

Divulgation d’informations : un attaquant peut intercepter une diffusion et obtenir des informations sans autorisation.

Déni de service : un attaquant peut bloquer le signal de diffusion et refuser la distribution des informations.

Le tableau suivant présente des exemples d’atténuations de ces menaces :

Composant Menace Correction Risque Implémentation
IoT Hub de périphérique TID (D)TLS (PSK/RSA) pour chiffrer le trafic Écoute électronique ou interférence de la communication entre le périphérique et la passerelle. Sécurité au niveau du protocole. Dans le cas de protocoles personnalisés, vous devez déterminer comment les protéger. Dans la plupart des cas, la communication s’effectue du périphérique vers l’IoT Hub (le périphérique établit la connexion).
Appareil vers appareil TID (D)TLS (PSK/RSA) pour chiffrer le trafic. Lecture des données en transit entre les périphériques. Falsification des données. Surcharge du périphérique avec de nouvelles connexions. Sécurité au niveau du protocole (MQTT/AMQP/HTTP/CoAP). Dans le cas de protocoles personnalisés, vous devez déterminer comment les protéger. La prévention des attaques par déni de service consiste à homologuer des périphériques via une passerelle cloud ou de champ et à les faire agir comme des clients pour le réseau. Une fois que la passerelle répartit le peering, il peut y avoir une connexion directe entre les pairs.
Périphérique d’entité externe TID Couplage fort de l’entité externe au périphérique. Écoute électronique de la connexion au périphérique. Interférence de la communication avec le périphérique. Couplage sécurisé de l’entité externe au périphérique NFC/Bluetooth LE. Contrôle du panneau de commandes de l’appareil (physique).
Passerelle de champ Passerelle cloud TID TLS (PSK/RSA) pour chiffrer le trafic. Écoute électronique ou interférence de la communication entre le périphérique et la passerelle. Sécurité au niveau du protocole (MQTT/AMQP/HTTP/CoAP). Dans le cas de protocoles personnalisés, vous devez déterminer comment les protéger.
Passerelle cloud de périphérique TID TLS (PSK/RSA) pour chiffrer le trafic. Écoute électronique ou interférence de la communication entre le périphérique et la passerelle. Sécurité au niveau du protocole (MQTT/AMQP/HTTP/CoAP). Dans le cas de protocoles personnalisés, vous devez déterminer comment les protéger.

Stockage

Le tableau suivant présente des exemples d’atténuation des menaces de stockage :

Composant Menace Correction Risque Implémentation
Stockage du périphérique TRID Chiffrement du stockage, signature des journaux d’activité. Lecture des données à partir du stockage, falsification des données de télémétrie. Falsification des données de contrôle de commande en file d’attente ou mises en cache. La falsification des packages de configuration ou de mise à jour de microprogramme alors que des données sont mises en cache ou en file d’attente peut entraîner la compromission des composants du système d’exploitation et/ou des composants système Chiffrement, code d’authentification de message (MAC) ou signature numérique. Si possible, contrôle d’accès renforcé via des listes de contrôle d’accès aux ressources (ACL) ou des autorisations.
Image de système d’exploitation de périphérique TRID Falsification du système d’exploitation/remplacement des composants du système d’exploitation. Partition de système d’exploitation en lecture seule, image de système d’exploitation signée, chiffrement
Stockage de passerelle de champ (mise en file d’attente des données) TRID Chiffrement du stockage, signature des journaux d’activité. Lecture des données à partir du stockage, falsification des données de télémétrie, falsification des données de contrôle de commande mises en file d’attente ou mises en cache. La falsification des packages de configuration ou de mise à jour de microprogramme (destinés aux appareils ou à la passerelle de champ) alors que des données sont mises en cache ou en file d’attente peut entraîner la compromission des composants du système d’exploitation et/ou des composants système BitLocker
Image de système d’exploitation de passerelle de champ TRID Falsification du système d’exploitation/remplacement des composants du système d’exploitation. Partition du système d’exploitation en lecture seule, image du système d’exploitation signée, chiffrement.

Étapes suivantes

Pour en savoir plus sur la sécurité IoT, consultez :