L’avenir du tout connecté dans la sécurité, l’ouverture des « ports » de l’enfer, bonjour Satan ! Le fameux « Port Forwarding » ou encore « Port Mapping » tant détesté des installateurs est devenue avec l’avènement du tout connecté un rituel nécessitant quelques formules issues d’un grimoire pour ne pas s’arracher les cheveux à la moindre mise à jour de nos chères Box internet. On ne remerciera jamais assez Orange et sa Livebox Pro armée de ses mises à jour castratrices à la limite du cruel évinçant sans préavis notre travail méticuleusement orchestré lors d’une config’ d’alarme ou de vidéosurveillance… Le routage des ports est devenu quasi-anecdotique de nos jours et presque délaissé par de nombreux usagers, principalement en milieu résidentiel en raison des produits utilisant des connectivités P2P – Peer To Peer.
Aujourd’hui, les protocoles de type P2P et UPnP facilitent l’intégration des périphériques au sein d’un réseau LAN/WAN. Pourtant cette pseudo « facilité » n’est pas sans risques et si l’on se penche avec plus d’attention dans le principe de fonctionnement de ce type de protocoles, on se rendra vite compte qu’il s’agit souvent de méthodes un brin barbares à utiliser avec pragmatisme. P2P où « Hole Punching » (Perforateur de Trou) résume bien, de par son appellation la situation dans certains cas. Dans cet article nous allons ainsi traiter toutes ces méthodes de connexion dite « facile » et comprendre qu’un retour aux sources peut être opportun. De vraies valeurs, celles qui nous ont fait rêver tel un Port Forwarding sur un bon vieux routeur Netgear le tout couplé à une Box internet « bridgé » avec un filtrage strict des connexions entrantes et sortantes. Une recette qui s’apprécie à sa juste valeur peu avant le dessert… Il est encore temps de récupérer vos objets connectés au pied du sapin avant cette nouvelle année.
Technologie P2P : simple et rapide pour le raccordement d’objets connectés. Adieu sessions de Port Forwarding !
Le P2P est un allié précieux des installateurs/clients. P2P Pair à Pair dans les années 2000 c’était surtout l’excitation d’avoir Interstella 5555 en une grosse journée, le tout de manière peu légale à travers les très célèbres et ô combien regrettés réseaux Edonkey. Aujourd’hui P2P est une méthode appelée également « Hole Punching » traduite en mauvais français par « Perforateur de trou ». Le célèbre logiciel Voix IP Skype pour ne citer que lui utilise cette méthode avec brio depuis toujours. Déployé principalement au sein de petite structure ou dans des installations de type résidentielles, P2P permet une mise en service simple et aisée des caméras de surveillance de vidéophone ou de tout autre appareil de type « IoT » compatible P2P allant du simple jouet connecté au NAS, en passant par caméras de surveillance, système d’alarme et bien plus encore. P2P permet de simplifier grandement le paramétrage et évite les sessions d’ouverture de ports de manière manuels, et/ou la translation d’une IP dynamique vers une IP fixe avec un résultat parfois sporadique surtout pour cette dernière. P2P exploite le trafic sortant très souvent non bloqué par les routeurs [box internet, routeur paramétré sans restriction] afin d’établir une connexion de type « Tunnel » entre l’utilisateur final et les caméras.
Le Hole Punching permet d’établir des connexions UDP avec des équipements de type : caméra, NVR, systèmes d’alarme, objet connecté ou tout autre périphérique se trouvant derrière un NAT –Network Adress Translation. Cette « brèche » est rendue possible grâce à la flexibilité des connexions UDP. A contrario des connexions TCP qui incluent des informations de connexion supplémentaire à chaque octet envoyé, la connexion UDP elle, passe plus facilement à travers les Firewalls qui ne voit que les adresses IP et les ports des équipements sources/cibles. L’avènement du tout IP a permis aux solutions P2P et principalement, aux caméras P2P de s’imposer telles un standard et de devenir à ce jour généreusement utilisé par les particuliers et professionnels dans de nombreux domaines. P2P permet aux néophytes une utilisation quasi immédiate de ses équipements sans nécessité de connaissance particulière en réseau. La technologie P2P offre un excellent niveau de fiabilité avec une grande tolérance aux pannes aidées par la redondance des serveurs/serveurs relais apportant à l’usager une connexion fiable et quasi-constante à ses équipements source.
La technologie P2P va effectuer une liaison quasi constante dite « HeartBeat » entre l’équipement connecté sur le réseau local (caméra P2P et NVR Vidéo par ex.) et le/les serveurs P2P distants par l’envoi de petits paquets de quelques dizaines d’octets. Lorsque l’usager souhaite accéder à ses caméras P2P la connexion se fera directement vers le serveur principal qui obtient à son tour l’adresse du serveur relais à laquelle la/les caméra(s) ou tout autre équipement y sont « raccordés ». C’est à ce moment que la connexion s’effectuera à travers un tunnel entre l’application de l’utilisateur et les caméras. Les flux vidéo transmis ne transitent pas par le serveur hormis en cas d’échec dans la création d’un tunnel de connexion. Dans ce cas de figure, les flux vidéos seront transités entre le serveur et l’usager de manière totalement cryptée (selon certaines marques hein !)… Comme tout plaisir, celui-ci n’est jamais sans conséquence et bien sûr, des déviances existent. Ainsi, certains objets connectés ou caméras grand public de piètre qualité (!) ont la fâcheuse tendance à émettre des connexions UDP [en texte clair parfois, oui oui !] vers de nombreux serveurs et ce, de manière exagérée avec à la clef une augmentation du « trafic sortant » de plus de 60% sur un réseau domestique type. Des connexions sortantes qui peuvent être observées depuis l’administration de son routeur ou à travers divers logiciels dédiés tel l’excellent WireShark pour ne citer que lui. Cet afflux d’IP visibles depuis l’administration peut être « démasqué » à l’aide d’un simple « Reverse IP » afin d’y observer la localité des serveurs en question…
Technologie P2P : Comprendre les différences fondamentales qui opposent les protocoles de communications TCP et UDP
Les protocoles TCP & UDP sont des protocoles de communications qui font partie de la couche transport du modèle « OSI » Open Systems Interconnection. Initiés au début des années 80, TCP & UDP ont été adoptés le premier janvier 1983 par le réseau Aparnet. L’ère du « monde internet » venait de démarrer… TCP est un protocole orienté « connexion » particulièrement serviable avec un haut niveau de fiabilité et une excellente qualité dans la transmission. En environnement TCP l’échange entre plusieurs machines est de type bidirectionnel avec à la clef, une information d’échange et une confirmation de la bonne réception des paquets transmis. Les données échangées sont parfaitement contrôlées par le contrôle « CRC » ce qui permet de validé ou non la bonne réception. *Découvrir CRC – Article Vulnérabilités des systèmes d’alarme. A contrario de TCP, UDP lui, n’offre aucune garantie dans l’échange des paquets échangés avec des pertes possibles. Les paquets sont envoyés sans demande d’accusé de réception et surtout sans contrôle de l’intégrité des données. La technologie P2P utilise ce protocole plus permissif qui nécessite moins de traitement et bien sûr permet d’outrepasser les règles NAT d’une Box internet…
Technologie UPnP : Le danger du facilitateur d’intégration UPnP : Plug aNd Play pas toujours pour les bonnes raisons !
UPnP Universal Plug and Play est comme son nom l’indique, un standard qui permet de rendre Plug And Play l’installation, la configuration et le contrôle des périphériques y compris les services présents sur le réseau. UPnP est capable de permettre une communication entre différents périphériques tout en s’affranchissant de toute notion de réseau ou de paramétrage tout comme le P2P. Un dispositif UPnP qu’il soit de type caméra de surveillance, détecteur vidéo, téléviseur, imprimante ou autres objets dits « connectés #IoT » va être capable de procéder de manière automatique à des « Mapping/Redirections » des ports du routeur sans aucune intervention humaine et sans avertissement notable pour ce dernier. Ce transfert de « responsabilité » alloué aux équipements n’est pas sans risque ni sans conséquence pour la pérennité d’un réseau domestique ou professionnel. En 2012, bien avant l’essor des objets connectés, Rapid7 [experts-chercheurs en sécurité] avait comptabilité près de 80 millions d’adresses IP rendues publiques grâce à des requêtes UPnP effectuées depuis internet…
Aujourd’hui, ce sont véritablement les Botnets qui mènent la vie difficile aux objets connectés. En effet, De plus en plus de Botnets semblent exploiter les failles UPnP pouvant transformer n’importe qu’elle objet connecté en « zombie » aux services des Botnets. Une vraie armée recrutée à votre insu… Persirai, Mirai, Brickerbot ou le très discutable Hajime censé protéger les objets connectés en sont des preuves tangibles que le IoT Internet Of thing est encore bien trop fragile pour avoir une confiance aveugle dans les réglages par défauts. Le rendu public sur différents forums spécialisés du code source des Botnets offre une base solide à la consécration de nouveaux Botnets aux performances décuplées. UPnP est une passoire à tout type de Malwares IoT et nécessite bien sûr sa désactivation sur la partie routeur/périphérique. Il est à noter que bon nombre de systèmes ayant subi les affres des Botnets dans le monde post-Mirai-bot sont malheureusement des périphériques de mauvaise qualité, paramétrés de manière sporadique avec des identifiants laissés par défauts, des services tels que Telnet, UPnP ou autre laissés activés et bien sur, des produits non mis à jours avec le dernier firmware fabricant.
www.shodan.io : un moteur de recherche basé sur la recherche des objets connectés vulnérables présents sur la toile
Fondé en 2009 par John Matherly, Shodan (nom repris au célèbre jeu vidéo System Shock sortie en 1994) est un outil web cherchant/scannant sur la toile tous les objets connectés vulnérables. Des objets connectés vulnérables par un combo admin/admin, admin/1234, root/1234 ou même aucun mot de passe pour certains ! Shodan fut à sa sortie qualifié par le CNN de « moteur de recherche le plus effrayant au monde » … Autant dire le moteur de recherche Shodan est sujet à controverse par cette indexation d’objets connectés vulnérables à la vue de tous. Pourtant, en y réfléchissant avec un peu plus de pragmatisme, Shodan permet surtout de comprendre le fléau des objets connectés qui pullulent sur la toile de manière non sécurisée.
De nombreux Babyphone et caméras chinoises de (très) mauvaise qualité sont accessible en toute simplicité et sans mot de passe. Shodan regroupe aussi des capteurs industriels, feux de circulation, passerelle d’accès ou tout autre objet connecté qui ne bénéficie d’aucun mécanisme d’authentification… Shodan permet de prendre conscience de la gravité de la situation actuelle et d’être spectateur du grand manque de sérieux de la part de nombreux fabricants inondant le marché des objets connectés avec des produits hautement vulnérables. Avec à ce jour 15 milliards d’appareils IoT dans le monde et jusqu’à 4 fois plus d’ici 2025, on espère fortement que des laboratoires indépendants pourront certifiés divers objets connectés afin de permettre au consommateur, de bénéficier d’un produit juste, adapter à ses besoins et correctement sécurisé.
Comment sécuriser de manière pragmatique & efficace l’accès aux équipements de sécurité connectés à son réseau
Certaines règles élémentaires de sécurité applicables pour tout objet connecté ou environnement intelligent à un réseau doivent bien sûr être respectées. Des règles de bases dont nous ne nous attarderons pas à détaillées dans les détails, mais bien évidement, l’ennemi juré, le cultissime combo admin/admin ou admin/888888 [présent bien trop souvent sur de nombreuses caméras !] sera évidemment à modifier dès la première connexion et à remplacer par un mot de passe à authentification forte [certaines caméras limites à 8 caractères la longueur – triste !]. Le port 443 [port HTTPS] sera bien sûr à activer avec la génération d’un certificat (valide !) par la même occasion. Les ports matériels-fabricant [connus et largement diffusés sur le web] seront également à remplacer sous réserve de mauvaises surprises ! Tous les services inutiles présents dans le paramétrage du périphérique tel qu’il soit seront à proscrire sans exception. On citera Telnet qui est un protocole puissant d’exécution de commande TCP/IP permettant la prise de contrôle de manière locale ou distante des équipements.
Initié en 1969 Telnet est à ce jour complètement désuet et dépourvu de tout charme d’ailleurs. Un protocole que l’on désactivera également sans aucun scrupule ! De grosses failles sont malheureusement présentes dans ce service utilisant le port 23. À choisir, on préférera SSH Secure Shell qui utilise des clés de chiffrements et s’avère être le digne remplaçant de l’archaïque Telnet. Telnet permet à travers diverses commandes la prise de contrôle de certains équipements distants de mauvaise qualité ou qui ne serait pas mis à jours avec le dernier Firmware du fabricant. Pour information, Telnet a longtemps servi à l’administration des machines/serveurs Unix et se retrouve logiquement sur de nombreux équipements embarquant Linux-Embedded et ses dérivés. L’authentification par défaut de très nombreux périphériques de type : root/vizxv a soulevé une sombre polémique quant à la sécurité de c’est dit équipements. Une personne mal attentionnée pourrait prendre le contrôle distant de ce type de produits… La commande permet par exemple d’avoir un visuel des fichiers systèmes, d’autre commande telle : /Unmount/mnt/folder offre la possibilité de déconnecté une partition et bien plus encore.
Par défaut, les systèmes de vidéosurveillance digne de ce nom ne possèdent pas le service Telnet activé, voire inexistant. Telnet n’est pas isolé, ainsi l’UPnP comme énuméré plus haut est idéalement à désactiver dans le but d’anticiper la rage future des Botnets. Les équipements connectés ne sont pas les seuls fautifs. Il est primordial de sécuriser convenablement son réseau, d’adopter de bonnes habitudes, de gérer les mécanismes de mises à jour des Firmwares par authentification, de filtrer les adresses IP en laissant communiquer les équipements avec une liste restreinte d’adresse IP autorisée (liste blanche), de limiter l’ouverture de port, de limiter les connexions entrantes/sortantes, d’isoler les périphériques réseau en utilisant la segmentation et enfin, l’usage d’un VPN permettant une connexion dite par tunnel est fortement recommandé. Bien sûr, tout cela n’est pas toujours applicable, et selon le niveau de compétence de chacun, il sera bon de bien se renseigner ou de prendre conseil avant de craquer pour la vague du tout connecté. Un label visant les objets connectés devrait voir le jour prochainement. On espère que celui-ci sera à la hauteur et permettra une réelle avancée en matière de sécurité des objets connectés. Bonne année 2018 ;).
Merci beaucoup pour cet article qui m’a dissuadé d’activer l’UPnP de mes cameras… mais c’est tout de même un hard à configurer !