Outil open-source pour le monitoring de réseau avec des dispositifs IoT

Nous vous expliquons ce qu'est IoT Inspector et comment il fonctionne.

Outil open-source pour le monitoring de réseau avec des dispositifs IoT
/ фото PxHere PD

Sur la sécurité de l'internet des objets

Dans le cabinet de conseil Bain & Company (PDF, p.1) indique qu'entre 2017 et 2021, le volume du marché de l'IoT va doubler : de 235 à 520 milliards de dollars. Les dispositifs pour maisons intelligentes représenteront 47 milliards de dollars. Les experts en cybersécurité s'inquiètent de ces taux de croissance.

Selon selon les données d'Avast, dans 40 % des cas, au moins un dispositif intelligent présente une vulnérabilité critique, mettant en danger l'ensemble du réseau domestique. Dans les laboratoires Kaspersky ils ont établi, que durant le premier trimestre de l'année dernière, on a enregistré trois fois plus d'attaques sur les dispositifs intelligents qu'en 2017.

Pour protéger les dispositifs intelligents, les employés des entreprises IT et des universités développent de nouveaux outils logiciels. Une équipe d'ingénieurs de l'université de Princeton a créé la plateforme ouverte Princeton IoT Inspector. C'est une application de bureau qui surveille le comportement et le fonctionnement des dispositifs IoT en temps réel.

Comment fonctionne le système

IoT Inspector suit l'activité des appareils IoT sur le réseau en utilisant la technique ARP-spoofing. Elle peut être utilisée pour analyser le trafic des dispositifs. Le système collecte des informations anonymes sur le trafic réseau afin d'identifier les activités suspectes. Pendant ce temps, des données comme les adresses IP et MAC ne sont pas prises en compte.

Lors de l'envoi de paquets ARP le code suivant est utilisé:

class ArpScan(object):

    def __init__(self, host_state):

        assert isinstance(host_state, HostState)

        self._lock = threading.Lock()
        self._active = True

        self._thread = threading.Thread(target=self._arp_scan_thread)
        self._thread.daemon = True

    def start(self):

        with self._lock:
            self._active = True

        utils.log('[ARP Scanning] Starting.')
        self._thread.start()

    def _arp_scan_thread(self):

        utils.restart_upon_crash(self._arp_scan_thread_helper)

    def _arp_scan_thread_helper(self):

        while True:

            for ip in utils.get_network_ip_range():

                time.sleep(0.05)

                arp_pkt = sc.Ether(dst="ff:ff:ff:ff:ff:ff") / 
                    sc.ARP(pdst=ip, hwdst="ff:ff:ff:ff:ff:ff")
                sc.sendp(arp_pkt, verbose=0)

                with self._lock:
                    if not self._active:
                        return

    def stop(self):

        utils.log('[ARP Scanning] Stopping.')

        with self._lock:
            self._active = False

        self._thread.join()

        utils.log('[ARP Scanning] Stopped.')

Après avoir analysé le réseau, le serveur IoT Inspector établit avec quels sites les appareils IoT échangent des données, à quelle fréquence ils le font et en quel volume ils envoient et reçoivent des paquets. En conséquence, le système aide à identifier les ressources suspectes auxquelles des données personnelles pourraient être envoyées à l'insu de l'utilisateur.

Pour l'instant, l'application fonctionne uniquement sous macOS. Vous pouvez télécharger l'archive zip sur site du projet. Pour l'installation, macOS High Sierra ou Mojave est requis, ainsi qu'un navigateur Firefox ou Chrome. L'application ne fonctionne pas sous Safari. Un guide d'installation et de configuration est disponible sur YouTube.

Cette année, les développeurs ont promis d'ajouter une version pour Linux, et en mai — une application pour Windows. Le code source du projet est disponible sur GitHub.

Potentiel et inconvénients

Les développeurs affirment que le système aidera les entreprises IT à rechercher des vulnérabilités dans les logiciels des dispositifs IoT et à créer des appareils intelligents plus sécurisés. Déjà, l'outil peut détecter des vulnérabilités liées à la sécurité et à la performance.

IoT Inspector trouve des appareils qui échangent des données trop fréquemment, même lorsque personne ne les utilise. De plus, l'outil aide à découvrir des appareils intelligents qui ralentissent le réseau, par exemple en téléchargeant trop souvent des mises à jour.

IoT Inspector présente encore des inconvénients. Étant donné que l'application est expérimentale, elle n'a pas encore été testée sur tous les appareils IoT avec différentes configurations. Par conséquent, l’outil lui-même peut avoir un impact négatif sur la performance des gadgets intelligents. Pour cette raison, les auteurs déconseillent de connecter l'application à des dispositifs médicaux.

Actuellement, les développeurs se concentrent sur la correction de bugs, mais à l'avenir, l'équipe de l'Université de Princeton prévoit d'élargir la fonctionnalité de son application et d'y intégrer des algorithmes d'apprentissage automatique. Cela aidera à augmenter la probabilité de détection des attaques DDoS jusqu'à 99 %. Vous pouvez consulter toutes les idées des chercheurs dans ce rapport PDF.

Autres projets dans le domaine de l'IoT

Un groupe de développeurs américains, collaborant avec Danny Goodman, auteur de livres sur JavaScript et HTML, crée un outil pour surveiller l'écosystème de l'internet des objets — The Thing System.

L'objectif du projet est de rassembler les gadgets IoT pour la maison intelligente dans un réseau unifié et de centraliser leur gestion. Les développeurs affirment que les appareils de différents fabricants ne peuvent souvent pas interagir entre eux et fonctionnent de manière indépendante. Pour résoudre ce problème, les auteurs de l'initiative ont créé un logiciel capable de fonctionner avec différents protocoles réseau, gadgets et applications clients.

Liste des appareils pris en charge est disponible sur le site du projet. Vous y trouverez également le code source et un guide de démarrage rapide.

Un autre projet open source est PrivateEyePi. Les auteurs de l'initiative partagent des solutions logicielles et du code source pour créer un réseau IoT personnalisé basé sur Raspberry Pi. Le site propose de nombreux guides pour construire un réseau sans fil de capteurs de température, d'humidité, ainsi que configurer un système de sécurité pour la maison.

Outil open-source pour le monitoring de réseau avec des dispositifs IoT
/ фото PxHere PD

L'avenir de ce type de solutions

Des projets open source, bibliothèques et frameworks apparaissent de plus en plus sur le marché de l'IoT. À la Linux Foundation, qui travaille également dans le domaine de l'IoT (ils ont créé un système d'exploitation Zephyr), on dit que les outils open source sont considérés comme plus sécurisés. Ce point de vue est lié au fait que le développement de ces outils implique l'«intelligence collective» de la communauté des experts en sécurité informatique. Tout cela conduit à conclure que des projets comme IoT Inspector vont se multiplier et contribuer à sécuriser davantage ce segment d'appareils.

Articles du premier blog sur l'IaaS d'entreprise :

Source : habr.com

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster