Stage BUT2 R&T 2024 - sujet "Hack RF 433MHz"

Stage BUT2 R&T 2024 - sujet "Hack RF 433MHz"

Étudiant Antonin Pons
Période 10 semaines (15 avril 2024 → 21 juin 2024)
Encadrants Angel Abenia & Manuel Munier
Localisation Mont de Marsan, IUT des Pays de l’Adour, LIUPPA (locaux dpt R&T)

L’idée de ce sujet m’est venue au retour du Workshop Pédagogique Réseaux & Télécoms 2023 (La Réunion) où j’avais été présenter ma publication “Découverte de l’IoT au niveau applicatif: mise en œuvre de la SAÉ 203 du BUT R&T” (cf. SAÉ 203 et tutoriaux IoT).

Sur place, beaucoup de discussions avec les collègues des autres départements R&T de France:

  • projet interconnectant de “vrais” capteurs (avec leur partie télécom pour les transmissions sans fil) et les systèmes d’information (plutôt informatique et réseaux) → projet transdisciplinaire entre le R et le T de R&T 😀
  • de base, le protocole MQTT n’offre pas de sécurité particulière: tout le monde peut écouter un topic, tout le monde peut publier sur un topic, pas de confidentialité ni d’authentification des contenus, etc.

En avion pendant le vol retour avec Angel: ne serait-il pas possible “d’attaquer” une telle infrastructure IoT non pas au niveau informatique ni au niveau réseau (TCP/IP), mais directement au niveau de la couche radio ? Mais d’où partions-nous exactement ?

  • mon expérience en RF 433MHz avec RFLink et (un peu) avec le HackRF One
  • Angel Abenia et Yannick Lespine sur OOK, URH, GNU Radio, Adalm-Pluto, etc.
  • premiers tests (“en off”) pour s’assurer de la faisabilité de ce sujet de stage avec, au passage, la découverte du Flipper Zero 😀

Sujet du stage

Contexte

Le domaine des objets connectés (ou IoT pour Internet of Things en anglais) est actuellement en plein essor. Cette révolution technologique touche aussi bien le secteur industriel que les particuliers. Un exemple parlant est la démocratisation de la domotique. De manière très simplifiée, nous pouvons considérer que ces plateformes IoT sont organisées en 3 couches:

  • la couche télécommunication pour connecter (généralement sans fil) les capteurs à la passerelle, et vice-versa la passerelle aux actionneurs
  • la couche réseau (ex: TCP/IP) pour l’infrastructure réseau en tant que telle
  • la couche logicielle pour le traitement des informations et les prises de décisions

Comme toute technologie, l’IoT apporte son lot de vulnérabilités et nécessite la mise en place de mesures de sécurité adéquates. Dans le cadre de ce stage, nous allons nous concentrer sur la partie télécom, et en particulier sur le protocole RF 433MHz encore largement utilisé en IoT, notamment pour des raisons de coût (matériel peu cher) et de sobriété (peu énergivore) avec néanmoins des distances de transmission correctes.

Missions

L’objectif de ce stage (financé par le LIUPPA) est de comprendre le fonctionnement de ces protocoles en RF 433 MHz en analysant les communications de “vrais” objets connectés, puis de les simuler à partir de programmes logiciels. Vous utiliserez pour cela les matériels de télécom que vous connaissez (oscilloscopes, analyseurs de spectre, etc.) pour isoler et comprendre ces communications, puis des outils numériques (ex: radios logicielles ou SDR pour décoder et encoder les messages. Ce stage aura 4 missions principales:

  • réussir à enregistrer des messages de “vrais” objets connectés
  • pouvoir rejouer ces messages enregistrés
  • être capable de forger de nouveaux messages
  • visualiser les résultats sur une plateforme domotique (ex: openHAB)

Mots clés: IoT, RF 433 MHz, SDR, RTL433, openHAB, hack

Attendus

  • procédures détaillées pour chaque mission avec les codes source des programmes
  • maquette fonctionnelle (Proof of Concept)
  • support pédagogique expliquant la démarche
  • informations techniques pertinentes

Résultats

Antonin a réellement fait du très bon travail. Le point d’entrée de ses travaux durant ce stage est bien évidemment son rapport de stage.

NB: Je donnerai ici quelques infos supplémentaires bientôt…


Perspectives

Le stage d’Antonin vient de se terminer, sa soutenance est encore très récente; voici “à chaud” quelques perspectives envisagées:

  • transposer ces travaux à d’autres types et marques de capteurs
  • consolider la partie “j’écoute un capteur, je modifie sa donnée, j’usurpe l’identité de ce capteur pour émettre la donnée modifiée” et ainsi leurrer le récepteur
  • mettre en place une technique de “brouillage intelligent” pour que le récepteur ne puisse plus du tout entendre le vrai capteur mais uniquement notre usurpateur…