L’infrastructure abstraite actuelle des objets connectés est composée de périphériques connectés à une station (dans certain cas, les périphériques jouent également le rôle de station) et celle-ci communique avec un service en ligne afin d’échanger des données comme illustré sur la Figure 1.
Figure 1 : infrastructure IoT standard.
Cette infrastructure est utilisée dans divers domaines : onduleur photovoltaïque SMA, système de surveillance ZEVIZ, déshumidificateur INVENTOR, … L’évolution de marché et les stratégies commerciales poussent les entreprises à développer et proposer rapidement des produits IoT. Ceux-ci sont donc conçus afin d’être fonctionnels et hâtivement disponibles sur le marché sans prêter une attention particulière à la sécurisation de leur solution.
L’état de l’art dans la sécurité des périphériques connectés
Zhao, K., & Ge, L. (2013, December). A survey on the internet of things security. In 2013 Ninth international conference on computational intelligence and security (pp. 663-667). IEEE.
Zhang, Z. K., Cho, M. C. Y., Wang, C. W., Hsu, C. W., Chen, C. K., & Shieh, S. (2014, November). IoT security: ongoing challenges and research opportunities. In 2014 IEEE 7th international conference on service-oriented computing and applications (pp. 230-234). IEEE.
spécifie que la sécurisation de ces dispositifs est principalement articulée autour d’un mécanisme de chiffrement entre la station de base et le serveur distant. Cette station de base communique à travers Internet vers des services en ligne sous forme d’une bibliothèque de services propres au constructeur. Un des problèmes majeurs est qu’une entité malveillante peut s’attaquer directement à la bibliothèque sans passer par les périphériques et ainsi exploiter les services du fournisseur. Par exemple, le constructeur SMA d’onduleur photovoltaïque propose aux installateurs d’obtenir un code Grid Guard qui autorise la personne à changer le paramétrage des phases de courant, la mise à la terre, … Ce mécanisme a été rapidement contourné[1] et SMA a dû réagir a posteriori. Il était alors possible de modifier le fonctionnement d’onduleurs afin de surcharger le réseau et mener à bien une attaque de type déni de service (DoS) sur le réseau électrique.
Actuellement, des plateformes en ligne[2] proposent des services aux constructeurs d’IoT afin de garantir la sécurité de leurs dispositifs. Ces plateformes s’appuient sur le fait que la communication est chiffrée et que chaque opération n’est autorisée que si l’utilisateur (ou périphérique) est authentifié et possède les droits appropriés. De plus, ces plateformes répondent au problème d’un manque de sécurité des bibliothèque en garantissant leur fonctionnement via la mise en œuvre des principes de programmation sécurisée.
La recherche scientifique axée autour de l’IoT et de la sécurité met l’accent sur la validation des actions via une chaîne de blocs.
Singla, K., Bose, J., & Katariya, S. (2018, September). Machine Learning for Secure Device Personalization Using Blockchain. In 2018 International Conference on Advances in Computing, Communications and Informatics (ICACCI) (pp. 67-73). IEEE.
Dorri, A., Kanhere, S. S., Jurdak, R., & Gauravaram, P. (2017, March). Blockchain for IoT security and privacy: The case study of a smart home. In 2017 IEEE international conference on pervasive computing and communications workshops (PerCom workshops) (pp. 618-623). IEEE.
Avec ce procédé, même si une entité malveillante accède à un défaut de la bibliothèque d’un constructeur, il est très difficile d’effectuer des commandes sur d’autres services en ligne ou sur d’autres périphériques IoT. En effet, chaque commande doit être intégrée à tout un processus afin de valider et certifier cette commande.
L’utilisation de l’auto-apprentissage Machine Learning (ML) est intensivement utilisé dans nombreux domaines. C’est également le cas en sécurité informatique et plus particulièrement dans une infrastructure IoT.
Canedo, J., & Skjellum, A. (2016, December). Using machine learning to secure IoT systems. In 2016 14th Annual Conference on Privacy, Security and Trust (PST) (pp. 219-222). IEEE.
Xiao, L., Wan, X., Lu, X., Zhang, Y., & Wu, D. (2018). IoT security techniques based on machine learning: How do IoT devices use AI to enhance security?. IEEE Signal Processing Magazine, 35(5), 41-49.
Nivaashini, M., & Thangaraj, P. (2018, September). A Framework of Novel Feature Set Extraction based Intrusion Detection System for Internet of Things using Hybrid Machine Learning Algorithms. In 2018 International Conference on Computing, Power and Communication Technologies (GUCON) (pp. 44-49). IEEE.
Xiao, L., Wan, X., Lu, X., Zhang, Y., & Wu, D. (2018). IoT security techniques based on machine learning: How do IoT devices use AI to enhance security?. IEEE Signal Processing Magazine, 35(5), 41-49.
Ces articles récents sont représentatifs de l’état de l’art actuel dans la sécurisation de l’IoT. Ils se focalisent tous sur la détection d’anomalies sur le réseau IoT afin de détecter une tentative d’attaque de type réseau spécifique à la communication des périphériques IoT. Ils proposent également de tester ces méthodes sur des données réelles et représentatives, ce qui est difficile d’obtenir. Ils s’appuient donc principalement sur des données disponibles en ligne et qui ont fait l’objet d’une compétition de ML[3].
L’utilisation de ces différentes méthodes est recommandée afin de fournir une infrastructure IoT (article disponible en ligne[4])
Hassija, Vikas, et al. « A Survey on IoT Security: Application Areas, Security Threats, and Solution Architectures ». IEEE Access, 2019, p. 1‑1. DOI.org (Crossref), doi:10.1109/ACCESS.2019.2924045.
Chaque niveau hiérarchique de l’infrastructure IoT est ainsi couvert et la communication des différentes entités est chiffrée et validée par une chaîne de bloc.
Le point de vue du domaine propose une sécurisation en amont mais la falsification de données en aval, directement sur les périphériques n’est pas abordée. En effet, falsifier les données collectées par les périphériques IoT permet de les contrôler et ainsi d’acquérir une entité qui envoie des commandes à travers l’infrastructure sécurisée. Ces commandes sont envoyées de manière chiffrée et directement validée par la chaîne de blocs. Afin d’illustrer ces propos, prenons un thermostat connecté. Celui-ci évalue la température chaque seconde et lorsque la température est inférieure à 16°C, la chaudière se rallume afin de réchauffer la maison. Si la température, donnée collectée, par le thermostat passe de 16°C à -30°C, il y a clairement une anomalie et le système se met en route afin de réchauffer la maison. Un attaquant peut ainsi falsifier les données (-30°C) afin d’activer le système de chauffage. Le projet de recherche propose de détecter ce type d’anomalie afin de protéger directement les périphériques connectés et ainsi garantir la sécurité de toute l’infrastructure IoT mais pas uniquement en amont comme le propose l’état de l’art actuel. Nous proposons d’intégrer un composant peut gourmant en ressources tel que le Intel Movidius Neural Compute Stick 2 et qui permet d’exécuter des algorithmes de ML.
Le projet cherche donc à exploiter/concevoir/adapter des algorithmes de machine learning sur des périphériques IoT disposant d’une faible puissance de calcul et d’une consommation énergétique moindre (batterie). Pour ce faire, nous allons exploiter le Intel Movidius Neural Compute Stick 2 et adapter les algorithmes basés sur les réseaux de neurones artificiels afin de détecter les anomalies des données perçues par les périphériques IoT et également de s’adapter à de nouvelles données. La détection d’anomalie passe par la création d’un profil d’utilisation, c’est-à-dire définir le comportement usuel ce qui permet de mettre en évidence la divergence par rapport au modèle. Ce modèle doit pouvoir évoluer au cours du temps parce qu’un périphérique peut être déplacé, ce qui change son environnement et donc, peut changer son profil.
L’aspect novateur du projet est clairement la sécurisation intelligente des périphériques IoT via une conception d’un algorithme spécifique (peu de ressources) de détection d’anomalies directement sur les périphériques afin de parer les cyberattaques situées en aval des infrastructures IoT, aussi bien chez les particuliers que en entreprise.
[1] https://www.cvedetails.com/vulnerability-list/vendor_id-16802/SMA.html
[2] Par exemple : https://www.kudelski-iot.com
[3] KDD cup dataset : https://www.kdd.org/kdd-cup/view/kdd-cup-1999
[4] https://ieeexplore.ieee.org/stamp/stamp.jsp?tp=&arnumber=8742551