Accueil » Sécurité Informatique » La sécurité dans l’Internet des Objets

Ce n’est pas un scoop, nous sommes entrés dans l’ère de l’Internet des Objets. Il s’agit probablement de l’ère qui précède la bio-informatique. Je ne suis pas (encore) là pour parler de la bio-informatique, mais bien de l’Internet des Objets. Nous allons d’abord voir ce que c’est exactement, puis nous étudierons quelques pistes réflexives sur la sécurité de ces objets connectés.

 

Qu’est-ce que l’Internet des Objets ?

Avant de commencer, il nous faut un point de vue historique.

Le début du web est marqué par l’apparition des hyperliens, ou liens hypertextes, permettant de lier les pages web entre elles. C’est ce que l’on appelle communément le « Web 1.0 ».

L’avènement des réseaux sociaux, des blogs et des forums a révolutionné le web. Nous sommes entrés dans l’ère du web dynamique que l’on a cette fois appelé le « Web 2.0 ». Aujourd’hui, nous en sommes encore plus ou moins à ce niveau.

Vous voyez où je veux en venir, et même si le « Web 3.0 » n’est pas encore totalement défini, il s’agirait de l’Internet des Objets, dont les chercheurs parlent déjà depuis des années.

L’Internet comme on se l’imagine naïvement, représente des ordinateurs interconnectés à travers le monde. Parmi ces ordinateurs interconnectés, on peut imaginer que plusieurs petits objets pourraient eux aussi communiquer, entre eux, et avec le reste du réseau Internet. Nous y sommes, cette extension d’Internet à des « objets » physiques est appelée l’Internet des Objets.

Tout cela semble intéressant pour le coup, mais concrètement qu’est-ce que cette évolution nous apporterait ? Voici des pistes à travers certains exemples.

Gestion efficace de la température de la maison

Imaginez un thermostat intelligent,  qui prend en compte les prévisions météo en temps réel, ainsi que l’activité dans la maison durant la journée à l’aide de capteurs pour adapter automatiquement la température. L’économie d’énergie pourrait atteindre 30% par mois. Et ce projet existe déjà.

heating-463904_640

Trouver facilement une place de parking en ville

Après la maison connectée, nous passons à la ville connectée. À l’aide de capteurs installés dans la ville et d’applications web en temps réel, les villes pourront optimiser les places de parking et aider les citoyens à réduire leur impact environnemental en leur proposant directement une place libre. Imaginez une sorte de GPS qui vous conduit directement à une place de parking libre. Ce projet existe également.

parking-1428177_640

Étudier les niveaux de pollution

À l’aide de capteurs permettant de détecter le niveau en NO2 (Dioxyde d’azote) et CO (monoxyde de carbone) dans l’air, les internautes peuvent récupérer des données liées au niveau de pollution actuel proche de leur lieu d’habitation. Et ces mêmes données sont ensuite partagées par la communauté à destination du public. Voici le site de ce projet.

smoke-258786_640

Il existe bien entendu beaucoup d’autres exemples réels, dont les suivants :

  • Applications médicales: surveillance du battement cardiaque ou de la respiration d’un individu à l’aide de capteurs appliqués sur son corps.
  • Retrouver des objets perdus à l’aide d’un porte-clés connecté.
  • Nourrir ou arroser automatiquement vos plantes suivant la météo.
  • Allumage automatique des lumières dans les villes ou dans la maison par détection de mouvement.
  • Applications militaires: surveillance des zones de conflits, localisation des combattants, détection d’intrusion…etc.

 

Si vous voulez en découvrir plus, je vous renvoie vers postscapes.

Certains experts prédisent qu’il y aura entre 50 et 212 milliards d’objets connectés d’ici 2020.

Certains experts prédisent qu’il y aura entre 50 et 212 milliards d’objets connectés d’ici 2020. Click To Tweet

Comment fonctionne l’Internet des Objets ?

Pour avoir un « Internet des Objets », nous avons besoin de plusieurs éléments :

  • Des capteurs
  • Des protocoles permettant d’échanger des données entre capteurs
  • Des moyens d’optimiser le traitement des données suivant diverses contraintes (environnementales, techniques, sécurité, etc…)

Pour créer et harmoniser tout cela, les chercheurs rédigent beaucoup de papiers autour des réseaux de capteurs sans fil. Ces réseaux de capteurs sont au cœur même de l’Internet des Objets. Il s’agit comme son nom l’indique de réseaux formés par un grand nombre de « nœuds » tous équipés de capteurs permettant de détecter un phénomène particulier (lumière, température, pression…etc). Comparé aux solutions utilisant des câbles, le réseau de capteurs présente plusieurs avantages : déploiement plus rapide, coût moindre, plus de flexibilité.

Un réseau de capteurs typique est composé de plusieurs nœuds « capteurs », mais aussi d’un nœud « puit » qui a souvent pour rôle de gérer les autres capteurs et de récupérer puis traiter les informations envoyées par ceux-ci. Les nœuds de façon générale sont composés d’un microprocesseurs, d’une mémoire RAM, d’une mémoire Flash ainsi que d’un émetteur radio pour communiquer avec d’autres capteurs.

 

Comment sécuriser l’Internet des Objets

Toutes les possibilités offertes par l’IoT sont bien prometteuses, mais mettre en place ces architectures pose divers problèmes, de l’aspect purement technique à l’aspect juridique, en passant par la sécurité informatique.

Nous avons vu que les capteurs sont par nature moins chers à produire et plus souples à mettre en place. Seulement, cela pose de gros désavantages.

Parmi les risques de sécurité potentiels, on note :

  • Écoute clandestine des communications (eavesdropping)
  • Accès non autorisé
  • Modification/falsification de données
  • Déni de service
  • Accès physique aux capteurs

Autres scénarios cauchemardesques possibles

Vous pensez en avoir enfin fini avec lui, vous avez dû changer d’adresse mail, de téléphone, de comptes sur les réseaux sociaux et avez même perdu des amis. Seulement rien n’est terminé pour vous, le GPS de votre voiture, les cartes de fidélité des grandes enseignes entre autres vous espionnent encore plus, et encore plus facilement…

gangster-539993_640

Après une dure journée au travail, vous vous installez confortablement dans votre voiture autonome, vous montez le son et fermez vos yeux. Mais quelque chose se passe mal, vous ne reconnaissez pas l’endroit, la voiture ne tourne pas où il faudrait, vous essayez d’activer le contrôle manuel mais tout est bloqué, même les portes. Avant même de penser à briser une vitre, la musique se coupe, une voix sort du haut-parleur pour vous dire de rester calme. Vous venez d’être enlevé(e), et Liam Neeson n’est pas dans les environs…En effet, des capteurs piratés permettant de modifier les coordonnées GPS ou de désactiver des fonctions vitales d’une voiture pourraient très bien transformer un retour de travail en cauchemar.

nissan-885309_640

Vous vous réveillez le matin, non pas parce-que votre réveil vient de sonner mais parce que quelqu’un spamme votre réveil avec des pubs pour produits nettoyants. Vous avez chaud car visiblement la clim s’est éteinte, vous vous dirigez donc vers le réfrigérateur pour vous désaltérer, mais là encore des publicités apparaissent sur l’écran de contrôle qui se trouve verrouillé. Il est évident que ces périphériques n’étaient pas protégés contrôles les hackers. L’entreprise de frigo connectés vous renvoie vers l’entreprise qui a fait l’écran de contrôle, qui vous renvoie vers le constructeur de la puce, qui vous dit que le problème vient finalement de vous-même, qui avez oublié de changer le mot de passe par défaut…Bienvenue dans votre maison connectée hors de contrôle.

icon-1480926_640

La sécurité informatique appliquée à l’Internet des Objets

Pour éviter les problèmes de sécurité, on se repose sur les quatre grands piliers de la sécurité informatique :

  • Authentification
  • Confidentialité
  • Intégrité
  • Disponibilité

Il n’est pas question dans cet article de proposer des solutions concrètes de sécurisation, mais plutôt de faire un état de l’art sur les problématiques de sécurité appliquées aux réseaux de capteurs.

Gérer l’authentification dans les réseaux de capteurs

L’authentification est la première barrière de sécurité qui permet d’empêcher un utilisateur non autorisé d’accéder aux nœuds.

Une personne non autorisée pourrait très bien accéder à un nœud donné, sans attendre qu’il envoie des données à un nœud puits. Il est donc requis d’avoir une authentification forte auprès de chaque nœud.

Parmi les menaces qui pèsent sur l’authentification, on notera :

  • Le fait de deviner le mot de passe: comme pour les pages web actuelles, si un mot de passe utilisateur est trop faible, il est possible de le trouver facilement.
  • L’attaque par usurpation d’utilisateur : un pirate réutilise une requête d’authentification après l’avoir capturée.
  • L’attaque par usurpation d’un nœud: un pirate peut se faire passer pour un nœud après avoir récupéré une valeur secrète utilisée par les nœuds durant la procédure d’authentification.
  • Les sessions en parallèle: un pirate démarre une session en parallèle à la session légitime d’un utilisateur, il peut ensuite utiliser les messages envoyés par l’utilisateur pour obtenir des privilèges.
  • L’extraction des données: un pirate peut dérober un nœud pour y extraire des données sensibles et casser le mécanisme d’authentification.

 

Dès 2004, des chercheurs ont mis au point le protocole d’authentification TinyPK. Attention partie technique en vue :

Le but du protocole TinyPK est de satisfaire le critère d’authentification via un échange de clés entre une entité externe et un réseau de capteurs.

Afin de prendre en compte les problèmes de ressources et de rendre viable le protocole, il y a seulement les opérations sur la clé publique (chiffrement des données et vérification de la signature) qui sont effectuées sur le capteur.

Le mécanisme d’authentification commence dès lors que l’entité externe souhaite communiquer avec le réseau de capteur. Pour cela cette entité envoie deux éléments. Le premier est sa clé publique chiffrée par la clé privée d’une autorité de certification et le deuxième est un couple (timestamp, checksum) chiffré par la clé privée de l’entité. Le timestamp permettant d’éviter de rejouer l’authentification une deuxième fois et le checksum vérifiant l’intégrité du message.

Lors de la réception du message, le capteur utilise la clé publique de l’autorité de certification préchargée par un logiciel (avant de déployer le réseau). Il extrait la clé publique de l’entité communicante et l’emploie pour découvrir le couple (timestamp, checksum). Si le checksum est valide et le timestamp (horodatage) n’est pas postérieur à un timestamp précédent, l’authentification est valide.

Le capteur envoie enfin une clé de session chiffrée avec la clé publique de l’entité communicante que cette dernière pourra déchiffrer avec sa clé privée, et qu’elle pourra sauvegarder pour un accès futur.

sécurité internet des objets avec tinypk

Source :

http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.88.6742&rep=rep1&type=pdf

Bien que le protocole semble tout à fait viable de façon théorique, des problèmes se posent. Tout d’abord il y a le problème de révocation des clés, je cite « we have no recovery mechanisms for compromise of private keys ». Il faudra également que les capteurs puissent gérer plusieurs clés de sessions sans utilisation accrue des ressources, qui rendrait le travail précédent inutile.

En 2006, un autre protocole a été proposé par Wong et son équipe, qui utilisait cette fois des identifiants de connexion.

Je vous passe les détails, voici plus d’informations :

http://ieeexplore.ieee.org/xpl/login.jsp?tp=&arnumber=1636182&url=http%3A%2F%2Fieeexplore.ieee.org%2Fxpls%2Fabs_all.jsp%3Farnumber%3D1636182

Seulement, ce protocole présentait aussi des faiblesses, car il autorisait notamment plusieurs utilisateurs à utiliser les mêmes identifiants de connexion.

Depuis les chercheurs continuent à proposer des nouveaux protocoles d’authentification avant qu’un nouveau papier de recherche démontre les faiblesses du protocole précédent.

  • Les solutions à considérer : mitiger les attaques par déni de service : Il s’agit d’un gros problème dans les réseaux de capteurs dû aux ressources limitées des capteurs.
  • Détection et révocation de nœuds compromis : l’authentification des utilisateurs doit mettre en place des mécanismes pour détecter activement et ainsi révoquer un nœud compromis

Source :

« User authentication schemes for wireless sensor networks: A review Saru Kumari a, Muhammad Khurram Khan, Mohammed Atiquzzaman »

 

Gérer la confidentialité des données et l’intégrité dans le réseau de capteurs

Pour ce qui concerne la confidentialité, un autre problème se pose : les algorithmes de chiffrement consomment rapidement trop de ressources (et donc de batterie). L’idée est alors de choisir des algorithmes de chiffrement à la fois robustes et léger en consommation de ressources.

On sait également que les algorithmes de chiffrement à clé publique comme RSA consomment beaucoup d’énergie.  Le chiffrement RSA 2048 bits prendrait plus d’une minute sur un processeur ATmega128, tandis que d’autres algorithmes de chiffrement ne prendraient que quelques secondes voire même moins d’une seconde.

Source :

« Security in Wireless Sensor Networks Jaydip Sen »

 

Les mécanismes 6LoWPAN/IPSEC (réseaux sans fils IPv6 de faible énergie) s’intègrent bien aux réseaux de capteurs sans fils.

Ils implémentent des chiffrements AES-CTR et AES-XBC-MAC-96 rapides et économes en énergie. IPSec tient sur des très petits nœuds.

 

Assurer la disponibilité des capteurs

Les faibles ressources des capteurs posent d’énormes problèmes dans tous les domaines de recherche sur les WSNs, dont la sécurité bien sûr. Le Déni de Service abusant justement des ressources des systèmes semble être l’attaque parfaite pour une personne mal-intentionnée.

On a déjà du mal à se protéger des dénis de service distribués avec les serveurs web…Il est encore plus facile de faire tomber un réseau de capteurs.

Faut-il utiliser des systèmes de migration pour détourner le trafic malveillant ?

Les recherches se focalisent surtout sur la détection de Ddos pour le moment, mais voici quelques attaques classiques jouant sur la disponibilité des capteurs :

Niveau physique

  • Brouillage (jamming) : interférence des fréquences radio que les nœuds utilisent pour communiquer.
  • Altération : accès physique au capteur dans le but de causer des dommages irréversibles, modifier le contenu du capteur, ou simplement l’étudier.

Niveau liaison de données (link layer)

  • Collision : deux nœuds essayent de transmettre à la même fréquence en même temps
  • Expiration des ressources : si le nœud essaye de renvoyer des données jusqu’à réussir à le faire…mais n’arrive jamais à le faire

Niveau réseau

Usurpation (spoofing) : un pirate rejoue, altère ou usurpe des informations de routage dans le réseau, augmenter les erreurs et donc retardant les communications.

  • Refus de coopérer : un nœud ne transmet pas des informations à ces voisins comme prévu.
  • Inondation : Envoi de données inutiles dans le réseau pour surcharger les nœuds.

Source :

 

L’un des mécanismes parmi les plus performants pour luter contre les dénis de service fonctionne de la façon suivante :

Le nœud qui veut attaquer doit être authentifié avant de pouvoir communiquer. S’il n’est pas authentifié, aucun nœud ne l’écoutera, économisant ainsi leur batterie.

Source:

« Conservation of energy in wireless sensor network by preventing denial of sleep attack Swapna Naika , Dr Narendra Shekokarb« 

13 Commentaires

  1. bonjour, je suis un abonné, j aimerai apprendre a programmer en java est ce possible
    merci

  2. excellent article comme d’habitude. mais je me demande si c’est une bonne chose de vouloir tout relier à internet

    • Merci Debian,
      Oui effectivement c’est souvent le même débat qui se pose lorsqu’on passe à des nouvelles technos : Ok ça nous simplifie la vie, mais en échange de quoi ? de quels risques ? 🙂

  3. Excellent article bravo 🙂

    Je pense qu’il ne faut pas avoir peur du changement et encore moins de l’avancé technologique. Simplement, avant de sortir n’importe quel object connecté, il faudra s’assurer qu’il soit protéger au maximum des attaques extérieures, surtout pour les objects connectés dans la médecine, dans la maison et dans la voiture ! Malgré tout les antivirus ne sont pas infaillible comme on peut le voir déjà aujourd’hui sur les PC et sur nos smartphones.

    • Bonjour,
      Effectivement l’internet des objets soulève deux problèmes majeurs dont celui que vous mentionnez avec les objets connectés dans la médecine (dans nos corps) mais aussi celui de la faiblesse des capteurs par rapport aux attaques informatiques. Merci à vous 🙂

    • Le problème est que sécuriser ce type de dispositif coûte beaucoup de temps et d’argent. Or, à l’heure actuelle, c’est un marché de niche et les entreprises n’ont qu’un but, conquérir le marché et vendre le plus de produits possible.
      Je veux dire par là que sécuriser « correctement » ses produits = plus d’argent et moins de productivité, donc les entreprises ne le font pas, et laissent la sécurité de côté, puisque de toute façon, une très petite minorité peut exploiter ceci..

  4. eric yeo a écrit:

    bonjour michel franchement j aime ce que vous faites pour nous qui voulions apprendre beaucoup sur la programmation et surtout sur les tics.merci encore et bonne continuité.

  5. Bjr Michel, je vous remercie pour cet article , vos infos font de moi une perle rare ici à libreville….bonne continuation

  6. Les objets connectés se démocratisent depuis quelques années et quand je vois les problèmes qu’ils engendrent. Il n’y a qu’à voir la cyber attaque du 21 octobre orchestrée par des objets connectés principalement.

    Malheureusement dans ce genre de création, la sécurité est toujours relayer en dernier voir pas du tout aborder. Je trouve ça fort dommage personnellement car on reproduit bêtement les erreurs du passé avec cette nouvelle vague de technologies 🙁

Laisser un commentaire

Lire plus :
sécurité sur internet
Apprendre à utiliser Google

Bien trop de personnes ne savent pas utiliser Google. Autrement dit elles ne savent pas rechercher des informations. Un bon...

Fermer