Conseils, services, ingénierie en informatique. Mise en place de solutions technologiques, et support, pour les entreprises.

Note utilisateur: 5 / 5

Etoiles activesEtoiles activesEtoiles activesEtoiles activesEtoiles actives
 

Lors de ses projets de création de l'application (applications web ou applications mobile smartphones Android iphone IOS) Consultingit intègre maintenant une phase de pentesting (bug bounty comme certains l'appellent). Consultingit fait appel à la célèbre équipe CTF Red Team LGHM, (aussi connue sous le nom de l'association loi 1901 à but non lucratif LGang des Hackers de Montreuil), cette "RED TEAM" de hackers éthiques (chapeaux blancs) consultants en cybersécurité: pour sécuriser les applications, trouver les failles et les vulnérabilités du programme, avant que le programme passe en production. Cela évite qu'ensuite des hackers mal intentionnés (les black hats, ou chapeaux noirs) trouvent des failles et les exploitent. Il y a uassi du code dans les compteurs connectés...

 

Comment fonctionne une architecture de compteurs? Un compteur est chez nous dans l’immeuble, on a un relai (gateway) chargée de récupérée de l’information et la transférer au backend.

On a des techniciens qui interviennent. Il peuvent passer avec des antennes et vont récupérer sans fils les informations propagées par les compteurs.

Comment ça fonctionne?

On a un capteur qui va faire un mesure physique de ce qui est mesuré, un compteur de volume, mesure du gaz qui passe, ou thermomètre qui mesure la température.

Ca c’est connecté au composant analogique qui les transfère numériquement au processeur applicatif.

On a une mémoire flash pour stocker les mises à jour, et ensuite un écran qui permet de visualiser la mesure faite par le compteur physiquement sur l’objet.

Les technologies changent en fonction du type de compteur. Pas mal de compteurs sur batterie: economie d’energie. Esperance de vie de 10 ans: le compteur ne doit pas trop dépenser d’energie, on limite toutes les fonctionnalités pour éviter de consommer la pile. C’est rare que ça soit du ARM, c’est souvent du Texas instrument, MSP 430 ou successeurs…

Sur la partie communication, ca depent du choix qui a été fait sur l’architecture. BLE, bluetooth low energie, Modbus, plutot orienté metrologie ou des protocoles propriétaies. Ca va porter à des centaines de mètres, ou à des mètres. On aura un relevé à proximité du batiment, à l’exteirue, sur le pallier de la porte. Ca permet de gagner de l’argent sur les opérations de relevés et en évitant les erreurs de saisies.

Plusieurs types d’attaques

  

Une question? Posez-la ici

Aide au développement d'applications 

Pentest de compteurs connectés : attaques hardwares

 

On peut ouvrir physiquement le compteur et on peut lire les lignes sur le PCB, les composants pour voir les numéros de série et les identifier

On peut écouter les bus de communication, voir la mémoire, injecter du code.

Un composant qui nous interesse c’est la partie mémoire : on repere le composant sur le PCB et on lit les informations à l’interieur, en se connectant sur les pattes de la mémoire flash. On va récupérer des informations, voir si elles sont exploitables. Interet pour frauder pour ajouter des accès…

Si on change les indices de consommation, ca risque de se voir.

Une question? Posez-la ici

Besoin d'un tests d'intrusion, contactez la Red Team LGHM

 

Pentest de compteurs connectés : attaques des bus de communication

 

Entre le processeur applicatif, la mémoire flash, le processeur applicatif. Entre le capteur et le processeur analogique on peut avoir des choses intéréssantes.

 

Etude des protocoles SPI et UART, on voit des choses passer et en déduire un certain nombre de vulnérabilités.

Pentest de compteurs connectés : attaques sur les calculateurs

 

On a au moins 1 ou 2 processeurs sur un compteur. On cherche le port d’administration, JTAGUlator, Jtag ou Jtag probe: ca permet de flasher le code du processeur. Le pin dépend du constructeur. Quel pin? Quel protocole?

 

JTAGulator permet de faire de la détection de protocoles en effectuant des tests spécifiques entre les pattes. On va pouvoir avoir un debuggueur sur le composant, on va pouvoir inspecter le contenu de la ram etc. Une grosse faille de sécurité impactera de manière force le composant.

Pentest de compteurs connectés : attaques sur le hardware

 

On peut générer des impulsions electro magnétiques: on fait sauter des instructions du processeur. C’est documenté sur la partie carte à puce, on peut le translater au compteur.

 

Pentest de compteurs connectés : attaques softwares logicielles

Reverse engineering pour reverser le composant.

Attaques réseau, si c’est du sans fil on va pouvoir intercepter les trames qui passent. Deni de service. On peut faire du fuzzing sur toutes les surfaces pour trouver des vunlérabilités

Une question? Posez-la ici

Besoin d'un tests d'intrusion, contactez la Red Team LGHM

Pentest de compteurs connectés : interceptions réseau

Modbus et wireless

On a des paquets simples: on adresse un composant avec son numéro, adresse source, adresse destination. En général c’est pas chiffré car prévu pour des composants low energy. Ca coute en energie de chiffrer. Bonne fréquence, bon décodeur et on récupère les infos.

2 modes de communication:

Master → Slave

Les autres protocoles:

Bluetooth/BLE

Ca porte à quelques mètres

Wifi

GPRS

Propriétaire

Modbus n’est pas chiffré par defaut; Il a été fait pour que tous les compteurs soient connectés entre eux.

Pentest de compteurs connectés : timing attack

Mesure de la différence de voltage entre les composants. On peut mesurer les ecarts de temps et on peut verifier si le composant possède une mauvaise implementation.

Pentest de compteurs connectés : outillage

Fuzzing

Defensics (implemente beaucoup de protocoles standard du marché DNS, SSL, DHCP...)

Custom fuzzer, fuzzers maisons.

Reverse engieering: IDA Pro ou Radare2

 

Pentest de compteurs connectés : la gateway

 

Toujours connectée à l’electricité: elle collecte l’info et la transmets au backend

Ca va etre souvent de l’Android, Linux, Windows embarqué

 

Pentest de compteurs connectés :le back end

Voir sécurité IT

A quoi ressemble un backend? Exemple Azure IOT Hub. Un hub reçoit des informations remontées par les compteurs sur le terrain ou par des gateways. Protocoles HTTP, REST, SOAP, MQTT et couches de chiffrement, TLS… Authentification, certificats ou login/PWD

 

MQTT est très utilisé dans l’IOT. Mécanisme de publishers et de suscribers, un peu comme quand on s’insrcrit à une newsletter: on envoie des mails et ceux qui sont dans la mailing list recoivent les emails. Attention, le chiffrement n’est pas de base en MQTT, penser à chiffrer au dessus par TLS.

 

Les attaques hardwares ont beaucoup de chances de réussir. Logiciel c’est plus dur.

Ce transcript reflète exclusivement l'opinion de ses auteurs et n’engage en aucune façon Consultingit

 

Voilà, j'espère que ça vous a plu. 

 

ou contactez-nous