Piratage d’objets IoT

I. Concepts de l’IoT


I.1. Définition

-> L’Internet des objets (IoT) décrit un réseau d’objets physiques sur lesquels sont intégrés des capteurs, des logiciels et d’autres technologies dans le but de connecter et d’échanger des données avec d’autres appareils et systèmes sur Internet. Ces appareils vont des objets ménagers ordinaires aux outils industriels sophistiqués, ayant une adresse IP qui leurs permet de transmettre des données à l’aide de capteurs embarqués, de matériel de communication.

-> L’IoT possède un ensemble de dispositifs implantés sur des objets naturels ou artificiels ou fabriqués à la machine avec pour fonctionnalité la communication en réseau.

Exemple : Dispositifs industriels, dispositifs portables, dispositifs de soins de santé, dispositifs domestiques.

I.2. Architecture IoT

Il n’y a pas de consensus unique sur l’architecture de l’Internet des Objets, qui est universellement accepté. Différentes architectures ont été proposées par différents chercheurs. Parmi lesquels, nous avons une Architectures à trois couches et une autre à cinq couches.

Figure 1 : Architecture de l’IoT (A: trois couches) (B: ​​cinq couches)

I.2.1. Architecture à 3 couches

L’architecture la plus basique est celle à trois couches. Elle comporte trois couches, à savoir les couches de perception, de réseau et d’application.

  • La couche de perception est la couche physique, qui possède des capteurs pour détecter et collecter des informations sur l’environnement. Il détecte certains paramètres physiques ou identifie d’autres objets intelligents dans l’environnement.
  • La couche réseau est responsable de la connexion à d’autres objets intelligents, périphériques réseau et serveurs. Ses fonctionnalités sont également utilisées pour la transmission et le traitement des données des capteurs.
  • La couche application est chargée de fournir des services spécifiques à l’application à l’utilisateur. Il définit diverses applications dans lesquelles l’Internet des objets peut être déployé, par exemple, les maisons intelligentes, les villes intelligentes et la santé intelligente.

I.2.2. Architecture à 5 couches

Pour l’architecture à cinq couches, le rôle des couches de perception et d’application est le même que celui de l’architecture à trois couches. Les trois couches restantes ont les fonctions suivantes :

  • La couche de transport transfère les données du capteur de la couche de perception à la couche de traitement et vice versa via des réseaux tels que sans fil, 3G, LAN, Bluetooth, RFID et NFC.
  • La couche de traitement est également appelée couche middleware. Il stocke, analyse et traite d’énormes quantités de données provenant de la couche de transport. Il peut gérer et fournir un ensemble diversifié de services aux couches inférieures. Il utilise de nombreuses technologies telles que les bases de données, le cloud computing et les modules de traitement de données volumineuses.
  • La couche métier gère l’ensemble du système IoT, y compris les applications, les modèles commerciaux et de profit, et la confidentialité des utilisateurs. La couche métier n’entre pas dans le cadre de cet article. Par conséquent, nous n’en discutons pas davantage.

I.3. Domaines d’application de l’IoT

Nombreux sont les applications qu’on peut faire avec l’internet des objets, avec des dispositifs spécifiques, parmi lesquels nous avons :

  • Bâtiments : Les projets de bâtiments connectés typiques impliquent l’automatisation des installations et la surveillance des systèmes du bâtiment (CVC, éclairage, ascenseurs, détecteurs de fumée, extincteurs), l’utilisation du bâtiment et la sécurité (utilisation des locaux, accès, surveillance
  • Énergie : La majorité des projets se concentrent sur la distribution d’énergie, l’optimisation du réseau, la surveillance et la gestion des actifs à distance, la maintenance prédictive et la création de plus de transparence pour des clients mieux informés.
  • Villes : Les projets IoT typiques dans les villes intelligentes incluent le trafic connecté (parking intelligent, gestion du trafic), les services publics (déchets intelligents, éclairage), la sécurité publique (vidéosurveillance) et la surveillance environnementale (pollution de l’air)
  • Santé : Les projets IoT de santé typiques dans les hôpitaux / cliniques incluent la surveillance des dispositifs médicaux, la coordination de l’équipe de santé, l’optimisation des opérations de flux de travail, tandis que les solutions axées sur les patients externes incluent la surveillance des patients, la vie assistée, les soins aux personnes âgées et la gestion des analgésiques, entre autres.
  • Transport / Mobilité : Ces applications comprennent des solutions de télématique et de gestion de flotte qui se connectent au système d’exploitation local de la voiture pour le diagnostic / surveillance du véhicule, comme la surveillance de la batterie, la surveillance de la pression des pneus, la surveillance du conducteur ou simplement le suivi du véhicule.

II. Défis de l’Internet des Objets


II.1. Les manquements IoT

Bien qu’apportant des solutions innovantes à de nombreux problèmes, l’internet des objets présente aussi des manquements qui sont les suivantes :

-> le manque de sécurité et de confidentialité

-> les Interfaces Web sont vulnérables

-> Il y a un questionnement sur la réglementation juridique et de droits

-> Les informations d’identification par défaut sont faibles et codées en dur

-> Les protocoles sont en texte clair et il existe des ports ouverts inutiles

-> Des erreurs de codage

-> Des Problèmes de stockage

-> Des difficulté à mettre à jour le Firmware et le système d’exploitation

-> Des Problèmes de standard d’interopérabilité

-> Le vol physique et la falsification

-> Le manque de support des fournisseurs pour corriger les vulnérabilités

-> Les problèmes d’économie émergente et de développement.

II.2. Problèmes de sécurité IoT

Les problèmes de sécurité s’appliquent à ces niveaux :  

  • APPLICATION : pour la validation des chaînes d’entrée, mots de passe par défaut, etc.
  • RÉSEAU : Pare-feu, cryptage incorrect des communications, manque de mises à jour automatiques.
  • MOBILE : API non sécurisée, manque de cryptage, manque de sécurité de stockage
  • CLOUD – Authentification incorrecte, pas de cryptage pour le stockage et la communication.

Alors que l’internet des objets englobe tous ces niveaux, cela reste un véritable problème pouvant entraver l’évolution rapide de l’IoT.

II.3. TOP 10 DES VULNÉRABILITÉS IoT OWASP

OWASP a défini un top 10 des vulnérabilités de l’internet des objets :

  •  Mot de passe faible, devinable ou codé en dur : utilisation d’informations d’identification facilement forcées, accessibles au public ou non modifiables, y compris des portes dérobées dans un micrologiciel ou un logiciel client qui accorde un accès non autorisé aux systèmes déployés.
  • Services réseau non sécurisésservices réseau inutiles ou non sécurisés s’exécutant sur l’appareil lui-même, en particulier ceux exposés à Internet, qui compromettent la confidentialité, l’intégrité / l’authenticité ou la disponibilité des informations ou permettent un contrôle à distance non autorisé.
  • Interfaces d’écosystème non sécurisées : interfaces Web, API backend, cloud ou mobiles non sécurisées dans l’écosystème en dehors de l’appareil, ce qui permet de compromettre l’appareil ou ses composants associés. Les problèmes courants incluent un manque d’authentification / autorisation, un cryptage manquant ou faible et un manque de filtrage d’entrée et de sortie.
  • Absence de mécanisme de mise à jour sécurisée : manque de capacité à mettre à jour l’appareil en toute sécurité. Cela inclut le manque de validation du micrologiciel sur les appareils, le manque de livraison sécurisée (non chiffrée en transit), le manque de mécanismes anti-rollback et le manque de notifications de changements de sécurité en raison des mises à jour.
  • Utilisation de composants non sécurisés ou obsolètes : Utilisation de composants / bibliothèques de logiciels obsolètes ou non sécurisés qui pourraient permettre à l’appareil d’être compromis. Cela inclut la personnalisation non sécurisée des plates-formes du système d’exploitation et l’utilisation de logiciels ou de composants matériels tiers provenant d’une chaîne d’approvisionnement compromise.
  • Protection de la vie privée insuffisante : les informations personnelles de l’utilisateur stockées sur l’appareil ou dans l’écosystème qui sont utilisées de manière non sécurisée, incorrecte ou sans autorisation.
  • Transfert et stockage non sécurisés des données : Absence de cryptage ou de contrôle d’accès des données sensibles n’importe où dans l’écosystème, y compris au repos, en transit ou pendant le traitement.
  • Manque de gestion des appareils : Manque de prise en charge de la sécurité sur les appareils déployés en production, y compris la gestion des actifs, la gestion des mises à jour, la mise hors service sécurisée, la surveillance des systèmes et les capacités de réponse.
  • Paramètres par défaut non sécurisés : les périphériques ou systèmes livrés avec des paramètres par défaut non sécurisés ou n’ont pas la capacité de rendre le système plus sécurisé en empêchant les opérateurs de modifier les configurations.
  • Absence de durcissement physique : absence de mesures de durcissement physique, permettant aux attaquants potentiels d’obtenir des informations sensibles qui peuvent aider lors d’une future attaque à distance ou de prendre le contrôle local de l’appareil.

III. Sécurité de l’internet des objets


III.1. Zones d’attaque IoT

Voici les zones d’attaque les plus courantes pour les réseaux IoT :

  • Mémoire de l’appareil contenant les informations d’identification
  • Contrôle d’accès
  • Extraction du micrologiciel
  • Augmentation des privilèges
  • Réinitialisation à un état non sécurisé
  • Suppression des supports de stockage
  • Attaque Web
  • Attaques de micrologiciel
  • Attaques de services réseau
  • Stockage de données local non chiffré
  • Problèmes de confidentialité et d’intégrité
  • Attaques de cloud computing
  • Mises à jour malveillantes
  • APIs non sécurisées
  • Menaces des applications mobiles

III.2. Attaques IoT

->ATTAQUE DDoS : Les attaquants utiliseront le nombre d’appareils IoT compromis appelés Army of Botnets pour effectuer des attaques DDoS sur la victime (cible) en exploitant les vulnérabilités des robots et des machines de la victime. Grâce à cette technique, tous les services associés à un réseau IoT peuvent être ciblés appareils, passerelles et serveurs d’applications.

-> EXPLOIT HVAC: De nombreuses organisations utilisent un système HVAC connecté à Internet avec de nombreuses vulnérabilités de sécurité, qui peuvent conduire à voler les informations de connexion. Il accède au système HVAC et attaque le réseau de l’organisation.

->ATTAQUE À CODE ROULANT : le code roulant ou l’encadrement de code est une autre technique dans laquelle l’attaquant capture le code, la séquence ou le signal provenant des appareils émetteurs et bloque simultanément les récepteurs. Le code sera utilisé plus tard pour obtenir un accès non autorisé. Par exemple, le signal d’ouverture d’une voiture qui peut être enregistré et reproduit plus tard. Les attaquants peuvent bloquer la transmission du code de la clé à la voiture, puis l’obtenir pour déverrouiller le véhicule pour le voler.

-> ATTAQUE BLUEBORNE : Il s’agit de l’utilisation de différentes techniques pour exploiter les vulnérabilités Bluetooth afin d’obtenir un accès non autorisé.Il est compatible avec toutes les versions de logiciel et ne nécessite pas d’interaction, de précondition ou de configuration, sauf s’il est actif.Une fois l’accès obtenu, il peut l’utiliser pour voler des informations critiques et propager des logiciels malveillants sur les appareils à proximité.

-> ATTAQUE DE BROUILLAGE : lebrouillage d’un signal pour empêcher la communication des appareils. L’attaquant enverra un signal radio au hasard avec une fréquence identique à celle des nœuds envoyant pour la communication. Ainsi, le réseau est bloqué, rendant les points finaux incapables d’envoyer ou de recevoir un message.

AUTRES ATTAQUES :

  • Attaque Sybil
  • Kits d’exploit
  • Attaques MitM
  • Rejouer les attaques
  • Appareils malveillants falsifiés
  • Attaque latérale
  • Attaque de ransomware

ÉTUDE DE CAS : DYN ATTACK, Mirai

Le Mirai a changé la perception mondiale de la sécurité IoT. Il a été utilisé pour perpétrer la plus grande attaque DDoS de l’histoire après avoir construit un énorme botnet Agent-Handler, composé de périphériques IoT faibles détournés par une simple attaque par dictionnaire. Ce malware peut exploiter des appareils basés sur plusieurs architectures et il est capable de perpétrer un large éventail d’attaques DDoS, basées sur différents protocoles (par exemple, TCP, UDP et HTTP). Malgré sa simplicité, il s’agit probablement à ce jour du malware IoT compatible DDoS le plus dangereux à l’état sauvage. Il fonctionne comme suit :

-> Le malware Mirai recherchera les objets connectés avec les ports 22, 23, 5747, etc.

-> Il tentera de se connecter en utilisant l’attaque par dictionnaire

-> L’appareil infecté recherchera plus d’appareils IoT et lancera des attaques DDoS.

-> Mirai tue d’autres processus dans les appareils IoT pour empêcher le propriétaire d’accéder à distance lorsqu’il est infecté.

-> Le redémarrage de l’appareil IoT peut supprimer le logiciel malveillant, mais il peut rapidement être à nouveau infecté.

-> Les appareils IoT infectés par Mirai lancent différents types d’attaques.

III.3. MÉTHODOLOGIE DE HACKING IoT

L’objectif du piratage IoT est de compromettre les appareils intelligents tels que les caméras de vidéosurveillance, les automobiles, les imprimantes, les serrures de porte pour y accéder. La méthodologie appliquée sur les plateformes IoT est la même que celle appliquée aux autres plateformes.

  • Collecte d’informations : adresses IP, protocoles en cours d’exécution, ports ouverts, type d’appareils, informations sur les fournisseurs, etc. Shodan, Censys et Thingful sont des moteurs de recherche pour trouver des informations sur les appareils IoT. Shodan est un excellent outil pour découvrir et collecter des informations à partir d’appareils IoT déployés dans le monde entier.
  • Scanner de vulnérabilité : analyse du réseau et des périphériques à la recherche de vulnérabilités, de mots de passe faibles, de bogues logiciels et micrologiciels, de configurations par défaut, etc. Nmap et d’autres sont des outils très utiles.
  • Lancer une attaque : Exploiter les vulnérabilités en utilisant différentes attaques comme DDoS, Rolling code, brouillage, etc. RFCrack, Attify Zigbee et HackRF One sont des outils populaires pour le piratage.
  • Accéder à : prendre le contrôle d’un environnement IoT. L’accès, l’augmentation des privilèges et l’installation de la porte dérobée sont inclus dans cette phase, entre autres.
  • Maintenir l’attaque : comprend la connexion sans être détecté, la suppression des journaux et la couverture des pistes.

III.4. Outils de hacking IoT

  • COLLECTE D’INFORMATIONS À L’AIDE DE SHODAN

-> SHODAN donne toutes les informations sur les appareils connectés à Internet tels que les routeurs, la vidéosurveillance, les feux de signalisation, les appareils domestiques intelligents, etc.

-> Nous pouvons utiliser des filtres pour collecter des informations comme celle-ci [webcamxp geo: « -50.81,201.80 »], [webcamxp country: « US »]

  • COLLECTE D’INFORMATIONS À L’AIDE D’OUTILS

-> MULTI PING: les attaquants peuvent utiliser l’outil MULTIPING pour trouver l’adresse IP de n’importe quel appareil IOT dans un réseau.

-> NMAP: Nous pouvons utiliser nmap pour trouver des ports ouverts et des vulnérabilités, des services également dans un IoT.

-> RIOT: Cet outil est utilisé pour découvrir les vulnérabilités dans un IoT (il vérifiera les mots de passe par défaut).

  • OUTILS DE RENFORCEMENT À L’AIDE DE FOREN6

-> L’outil Foren6 utilise un sniffer pour capturer le trafic 6LoWPAN et le rend dans l’interface graphique

-> Il capture toutes les informations relatives à RPL et identifie les comportements anormaux.

-> Il capture les paquets en direct des réseaux déployés de manière non intrusive.

  • ATTAQUE À CODE ROULANT À L’AIDE DE RFCrack

-> Les attaquants utilisent l’outil RFCrack pour obtenir un code roulant pour déverrouiller le véhicule

-> Certaines des commandes utilisées par un attaquant pour effectuer une attaque par code tournant sont :

        – Replay en direct: python RFCrack.py -i

        – Code de référence : python RFCrack.py -r -M MOD_2FSK -F 314350000

        – Régler la gamme RSSI : Python RFCrack.py -r -U « -75 » -L « -5 » MOD_2FSK -F 314350000

        – BROUILLAGE : python RFCrack.py -j -F 314000000.

  • HACKER DES APPAREILS ZIGBEE AVEC LE  Framework ATTIFY ZIGBEE

-> La plupart des appareils IoT utilisent le protocole Zigbee sur 16 canaux différents pour toutes les communications.

-> Les attaquants trouvent des vulnérabilités dans Zigbee basées sur l’IoT en utilisant le framework Attify Zigbee et son Zbstumbler pour identifier le canal utilisé par l’appareil cible.

-> L’attaquant peut effectuer une attaque de relecture en capturant et en rejouant les mêmes paquets pour observer le comportement de l’appareil.

  • ATTAQUE BLUEBORNE AVEC HACKRF ONE:

-> Les appareils IoT utilisent la communication sans fil via RF ou Zigbee ou LoRa.

-> Les attaquants utilisent HackRF One pour effectuer des attaques BlueBorne ou AirBorne telles que le fuzzing, le brouillage, la relecture, etc.

-> HackRF One est une radio définie par matériel et logiciel avec une plage de 1 MHz à 66 GHz.

-> Il peut renifler une large gamme de protocoles du GSM au Z-wave.

-> Il fonctionne en mode semi-duplex, il est donc facile pour les attaques utilisant l’appareil.

  • Obtenir un accès en utilisant Telnet : Les pirates peuvent utiliser SHODAN, CENSYS pour accéder à distance au périphérique cible à l’aide des vulnérabilités de TELNET.
  • Maintien de l’accès en exploitant le micrologiciel : Exploitez le micrologiciel installé après avoir obtenu l’accès. L’attaquant utilisera Firmware Mod Kit pour reconstruire le firmware malveillant à partir de légitime. Il permet une reconstruction facile des images de micrologiciel pour divers appareils intégrés.

AUTRES OUTILS DE HACKING IOT :

  • Rassemblement d’informations : CENSYS, THINGFUL
  • Outils sniffing: Z-WAVE SNIFFER, CLOUDSHARK, WIRESHARK, TCPDUMP
  • Outils d’analyse des vulnérabilités : beSTORM, IoTSPLOIT, IoTSEEKER, BITDEFENDER, RAPID7      METASPLOIT PRO.
  • Outils de hacking IoT : FIRMALYZER ENTERPRISE, CHIPWHISPERER, KILLERBEE, RFCAT-ROLLJAM, GATTACK.io

IV. Protection contre le piratage d’IoT


IV.1. Comment se défendre contre le piratage d’IoT

1) Désactivez les comptes Invité et Démo

2) Verrouiller les comptes

3) Mettre en œuvre une authentification forte

4) Isolez les appareils du réseau d’entreprise.

5) Implémenter IPS et IDS

6) Mettre en œuvre un chiffrement de bout en bout

7) Utilisez l’architecture VPN pour une communication sécurisée.

8) Désactivez TELNET

9) Autoriser uniquement les adresses IP de confiance

10) Empêchez l’altération physique des appareils.

11) Bloquez le port moniteur 48101 car les appareils infectés tentent souvent de propager des logiciels malveillants en l’utilisant.

12) Corrigez les vulnérabilités et mettez à jour le micrologiciel de l’appareil.

LIGNES DIRECTRICES POUR LES FABRICANTS

1) Utilisez SSL / TLS à des fins de communication

2) Utilisation de mots de passe forts

3) Le processus de mise à jour de l’appareil doit être simple et sécurisé

4) Verrouillez les appareils

5) Utilisez des applications de confiance pour exécuter

6) Mettre en œuvre un mécanisme de verrouillage de compte.

OUTILS DE SÉCURITÉ IOT

  • SEACAT.IO
  • DIGICERT IoT SECURITY SOLUTION
  • DARKTARCE
  • NODDOS
  • NET-SHIELD
  • CARWALL
  • CISCO UMBRELLA
  • SYMANTEC IoT SECURITY
  • NORTON CARE.

IV.2. Test de pénétration sur un objet IoT

Etape 1 : découvrir les appareils IoT

      —> utilisez des outils tels que SHODAN, CENSYS, THINGFUL, etc.

Etape 2 : sélectionner des appareils parmi les appareils IoT trouvé

Etape 3 : effectuer une analyse du matériel

      —> utilisez des outils tels que JTAG DONGLE, SDR, etc.

Etape 4 : effectuer une analyse du micrologiciel et du système d’exploitation

      —> utilisez des outils tels que IOTINSPECTOR, BINWALK, FIRMWARE MODKIT, etc.

Etape 5 : effectuer une analyse du protocole sans fil

      —> utilisez les outils tels que UBIQUA, PERYTONS, les analyseurs de protocole, etc.

Etape 6 : effectuer un test de l’application mobile

      —> utilisez les outils X-RAY, THREAT SCAN, NORTON HALT EXPLOIT DEFENDER, etc.

Etape 7 : effectuer un test de l’application web

      —> utiliser les outils sauce LABS, POWERSPLOIT, etc.

Etape 8 : effectuer les tests des services cloud

      —> utilisez des outils tels que ZEPHYR, SOASTA CLOUDTEST, LOADSTORM, etc.

Etape 9 : documenter tous les résultats