Sécurisation du protocole de transfert de messages MQTT dans l'environnement IoT

Table des matières

Sécurisation du protocole de transfert de messages MQTT dans l'environnement IoT

L'internet des objets (IdO) est un terme à la mode que l'on rencontre souvent de nos jours. Les boîtes intelligentes, les ampoules, les thermostats, les assistants vocaux et les équipements intelligents pénètrent progressivement dans nos maisons et nos environnements industriels. À mesure que nous intégrons davantage de technologies dans notre vie, il est naturel que nous trouvions des moyens de les réguler.

Le protocole MQTT (Message Queuing Telemetry Transport) est utilisé pour connecter et contrôler les appareils domestiques intelligents. Il fonctionne comme un protocole de messagerie et permet la communication entre les appareils dans un écosystème IoT.

La question de la sécurité a toujours été d'actualité dans le domaine de l'IdO. Les principales préoccupations concernant la sécurité des données des applications IoT sont dues à l'insécurité des communications sur l'internet. Pour avoir une vue d'ensemble et analyser l'état de la sécurité des dispositifs IoT sur l'internet, nous pouvons utiliser des outils tels que Shodan. Shodan est un moteur de recherche qui recherche sur le web des dispositifs connectés à l'internet tels que des routeurs, des serveurs, des dispositifs IoT (thermostats, moniteurs pour bébés) s'ils sont publics.

rapport mqtt shodan
Source : https://www.shodan.io/search/report?query=port%3A1883

Récemment, j'ai parcouru le web à la recherche de dispositifs IoT via Shodan. Il y a près de 7 50 000 serveurs MQTT (le nombre varie) visibles publiquement sur l'internet en raison d'une mauvaise configuration du protocole MQTT. Parmi ces serveurs, plus de 32 000 ne sont pas protégés par un mot de passe, ce qui expose les maisons intelligentes et les entreprises qui utilisent ces serveurs MQTT à un risque de fuite de données. En outre, de nombreux serveurs sont affectés par des vulnérabilités telles que le déni de service (DOS) et l'exécution de fichiers à distance.

En cas de mauvaise configuration du protocole MQTT, les cybercriminels peuvent accéder à une maison, ce qui leur permet de savoir quand les propriétaires sont chez eux, de gérer les systèmes de divertissement, les assistants vocaux, les équipements domestiques et même d'ouvrir physiquement les portes intelligentes.

Nous examinerons ici divers scénarios d'attaque et des considérations de sécurité pour la mise en œuvre du protocole MQTT.

Architecture

Architecture de l'IdO
Architecture de l'IdO

Dans l'architecture ci-dessus, des dispositifs IoT sont installés à la maison pour capturer divers détails à partir de capteurs. Les résultats de la détection seront transmis au courtier MQTT via la passerelle pour être traités dans le nuage et ensuite transmis à l'application de l'utilisateur.

De nos jours, les appareils sont plus vulnérables en raison de leurs protocoles et de leurs fonctionnalités. Selon un rapport récent de Palo Alto Networks, 83 % des appareils d'imagerie médicale fonctionnent avec des systèmes d'exploitation non pris en charge.

Travailler

Fonctionnement de MQTT
Fonctionnement de MQTT

Le protocole MQTT fonctionne selon le modèle éditeur/abonné, les appareils fonctionnant en tant qu'éditeurs ou abonnés.

Le courtier MQTT fonctionne simplement comme un médiateur entre l'éditeur (capteurs) et l'abonné (application mobile).

L'éditeur est le dispositif qui recueille les informations en détectant des attributs tels que l'humidité, l'intensité lumineuse, la chaleur, le mouvement, l'humidité, etc. Les éditeurs fournissent donc à l'application les données détectées en fonction des conditions requises.
Lorsqu'un éditeur envoie un message, son identité doit être vérifiée par le courtier MQTT. Pour ce faire, il doit partager l'identifiant client unique, le nom d'utilisateur/mot de passe et le certificat client qu'il a reçu au début. Après vérification, son message est accepté par le courtier MQTT.

Nous avons 2 éditeurs, par exemple

  • Capteur de niveau d'eau : vérifie si le robinet de l'évier de la salle de bains ou de la cuisine est correctement fermé ou non.
  • Intensité lumineuse : vérifier si les lumières de la maison sont allumées ou éteintes.

Après avoir détecté l'état, les deux capteurs envoient des signaux numériques au courtier MQTT.

Lorsqu'un utilisateur souhaite vérifier les appareils ménagers, l'abonné demande les données (intensité lumineuse ou niveau d'eau), la demande passe par une passerelle et est stockée chez le courtier. L'éditeur publie les données à son rythme au courtier. Ce dernier les transmet ensuite à l'abonné concerné.

Considérations relatives à la sécurité des composants de l'architecture IdO

1. Dispositif IoT (client éditeur) :

L'éditeur est le principal composant de l'application. L'attaquant accède aux informations sur les signaux en exploitant l'éditeur. En utilisant ces informations, il peut modifier le fonctionnement des appareils domestiques.

Les aspects de sécurité suivants doivent être pris en compte pour le client de l'éditeur :

  • Le nom du client doit être unique.
  • Le mot de passe du nom d'utilisateur doit être complexe.
  • Pour plus de sécurité, il est possible de restreindre le préfixe de l'ID du client au nom du client.
  • Utiliser le cryptage de transport des informations d'identification pour établir des connexions sécurisées.
  • Les certificats clients x509 doivent être ajoutés aux clients.
  • Pour simplifier l'architecture, des limites doivent être définies pour que le client puisse créer des thèmes et y accéder.
  • Le cache et les journaux stockés sur l'appareil doivent être mis en œuvre conformément à la triade CIA (confidentialité, intégrité, disponibilité).
  • Évitez d'utiliser des caractères génériques tels que # et + pour définir les cibles.

2. Courtier MQTT :

Comme le montre le rapport Shodan ci-dessus, environ 46 courtiers MQTT sont exposés à des attaques DOS.

Pour une meilleure sécurité, nous avons relié notre courtier MQTT local à la plateforme en nuage. Si un attaquant pirate le courtier MQTT, il peut voir toutes les données de l'éditeur (capteur) et analyser le modèle des demandes de l'abonné.

Voici quelques tactiques de sécurité pour le courtier MQTT :

  • Utiliser l'identifiant du client pour analyser les restrictions du sujet et les opérations autorisées.
  • Utiliser des listes de contrôle d'accès appropriées ou un contrôle d'accès basé sur les rôles sur le client.
  • Sur les plateformes en nuage, assurez-vous que les politiques IAM sont appropriées.
  • Utiliser des clients MQTT pour éviter la surcharge du Broker.
  • Attribuer une taille maximale de message appropriée pour éviter que les attaquants ne bloquent la bande passante.
  • Choisissez judicieusement les règles d'entrée/sortie pour les groupes de sécurité. Confirmez que les plages d'adresses IP autorisées ne peuvent accéder qu'au courtier MQTT.
  • Utilisez l'outil MQTTSA pour mettre en œuvre de manière sécurisée le courtier MQTT.
  • Appliquer une technique IDS appropriée pour éviter la falsification des données.

3. Passerelle :

Entre le réseau local et l'environnement en nuage, les passerelles sont présentes pour surveiller et filtrer les demandes adressées au courtier MQTT avec autorité. L'écoute du trafic de la passerelle peut fournir des informations sensibles.

Utilisez les tactiques suivantes pour sécuriser la connexion.

  • Veillez à utiliser les paramètres appropriés du groupe de sécurité.
  • Restreindre la plage d'IP requise pour le trafic d'application entrant et sortant.
  • Configurer une liste blanche et une liste noire.
  • Utiliser l'automatisation du WAF pour éviter les attaques telles que DOS, injection SQL, etc.
  • Mettre en œuvre la journalisation pour analyser les API.

4. Connexion entre l'utilisateur final et le nuage :

La connexion entre l'utilisateur et le nuage partage le résultat final de l'application et peut être sécurisée comme suit :

  • La connexion entre le nuage et l'utilisateur final doit être sécurisée, cryptée et mise en œuvre avec la triade CIA.
  • Les politiques IAM et IoT appropriées doivent être appliquées à l'utilisateur final.
  • Utiliser l'authentification multi-facteurs (MFA) pour le compte utilisateur.
  • Utiliser SSL/TLS pour communiquer avec les ressources en nuage.
  • Utiliser des outils de surveillance dans le nuage pour configurer l'API et l'enregistrement de l'activité de l'utilisateur.

5. Appareil mobile :

L'appareil mobile est l'interface utilisateur qui obtient les résultats finaux concernant l'environnement domestique.

Nous devons vérifier l'environnement mobile complet pour détecter les vecteurs d'attaque internes et externes comme suit.

  • Les connexions Wi-Fi de l'appareil mobile doivent utiliser le protocole WPA3.
  • L'application doit être robuste avec la mise en œuvre du cryptage des données.
  • Utiliser la biométrie pour l'authentification des applications.
  • Effectuer des VAPT (Vulnerability Assessment & Penetration Testing) pour analyser et sécuriser l'application mobile.

Conclusion

Avec l'augmentation du nombre de violations de données, l'intégration de fonctions de sécurité dans les réseaux domestiques intelligents devient un facteur important pour rendre l'environnement plus fiable et plus sûr. En mettant en œuvre la triade CIA (Confidentialité, Intégrité, Disponibilité), des certificats clients valides, des outils comme MQTTSA, des règles de passerelle appropriées, des techniques d'authentification forte, une bonne approche VAPT, etc. nous pouvons réduire le risque d'attaques sur les applications domotiques IoT.

eInfochips fournit des solutions de bout en bout pour les systèmes de domotique, à travers de multiples segments tels que l'éclairage, la sécurité, les caméras, les systèmes audio/vidéo. Avec une forte expertise et une connaissance approfondie des protocoles de connectivité et des normes de l'industrie, eInfochips fournit des technologies fondamentales qui aident à relever les défis et à permettre une expérience de maison connectée. Nous fournissons également des services de cybersécurité tels que la mise en œuvre de VAPT et de la sécurité, le conseil en évaluation, les services de sécurité gérés, entre autres. Pour en savoir plus sur nos services, contactez nos experts.

 

Photo de Sayali Ranaware

Sayali Ranaware

Sayali Ranaware travaille en tant qu'ingénieur dans l'équipe de sécurité IoT. Elle est titulaire d'une licence en ingénierie informatique et possède une expérience d'un an et demi dans le secteur des technologies de l'information, avec une expertise dans les technologies du cloud telles que AWS et Azure. Actuellement, elle contribue au domaine de la sécurité de l'IoT en utilisant ses compétences dans les méthodologies VA et PT. Pendant son temps libre, elle aime chanter et écrire.

En savoir plus

Parler à un expert

S'abonner
à notre lettre d'information
Restez dans la boucle ! Inscrivez-vous à notre lettre d'information et restez informé des dernières tendances en matière de technologie et d'innovation.

Télécharger un exemple de rapport

Télécharger la brochure

Entamez une conversation dès aujourd'hui

Planifier une consultation de 30 minutes avec nos experts en solutions automobiles

Entamez une conversation dès aujourd'hui

Planifiez une consultation de 30 minutes avec notre expert en solutions de gestion des batteries.

Entamez une conversation dès aujourd'hui

Planifier une consultation de 30 minutes avec nos experts en solutions industrielles et énergétiques

Entamez une conversation dès aujourd'hui

Planifier une consultation de 30 minutes avec nos experts de l'industrie automobile

Entamez une conversation dès aujourd'hui

Planifier une consultation de 30 minutes avec nos experts

Veuillez remplir les champs ci-dessous pour obtenir un exemple de rapport

Modèles de référence

Notre travail

Innover

Transformer.

Échelle

Partenariats

Partenariats pour les appareils
Partenariats numériques
Partenariats de qualité
Partenariats en silicium

Entreprise

Produits et PI

Politique de confidentialité

Notre site web place des cookies sur votre appareil afin d'améliorer votre expérience et notre site. En savoir plus sur les cookies que nous utilisons et sur la manière de les désactiver. Les cookies et les technologies de suivi peuvent être utilisés à des fins de marketing.

En cliquant sur "Accepter", vous consentez à ce que des cookies soient placés sur votre appareil et à ce que nous utilisions des technologies de suivi. Cliquez sur "En savoir plus" ci-dessous pour obtenir de plus amples informations et des instructions sur la manière de désactiver les cookies et les technologies de suivi. Bien que l'acceptation des cookies et des technologies de suivi soit volontaire, leur désactivation peut entraîner un dysfonctionnement du site web et certaines publicités peuvent être moins pertinentes pour vous.
Nous respectons votre vie privée. Lisez notre politique de confidentialité.