Scanner Wi-Fi et APRS via LoRa avec un TTGO TBeam

Article en date du et modifié le
Catégorie : Bidouille Tags : , ,

TTGO TBeam APRS LoRa WiFi
TTGO TBeam APRS LoRa WiFi

Des réseaux Wi-Fi il y en a par milliers dans les grandes villes. C’est ce qu’on a constaté, un ami (Erwan) et moi-même, ces dernières semaines.

Depuis quelques temps, nous nous amusons à nous balader dans Grenoble dans la moindre petite rue pour scanner les réseaux Wi-Fi. Le but : cartographier les réseaux publics et gratuits ainsi qu’estimer le nombre de réseaux non sécurisés (WEP). Un autre but s’est greffer au premier : les test de la modulation LoRa à travers l’APRS.

Cet article est une petite reformulation de l’article d’Erwan qui en a écrit pleins d’autres sur le sujet et que vous pouvez aller voir sur son site : https://brainshit.fr/read/255.

Le matériel

Ça fait un moment que je me dis qu’il faut que je teste la modulation LoRa. La carte parfaite pour l’expérimenter est selon moi celle-ci : un TTGO T-Beam qui incorpore un GPS, un ESP32, un module LoRa et un écran OLED. La carte est parfaite pour faire de l’APRS.

Le moyen parfait pour tester l’APRS c’est de se déplacer, or on veut se déplacer ! Je ponds vite un bout de code un peu sale provenant de tous les côtés. Par la suite, Erwan passe un peu derrière pour améliorer certains points et le rendre compatible avec ses scripts.

Le code du projet est accessible ici : https://gitlab.com/valentintintin/wifiscan-ttgo-lilygo-tbeam

La procédure

La procédure de récolte est simple :

  1. Brancher l’alimentation (une power bank USB)
  2. Toutes les 5 secondes :
    1. Les réseaux Wi-Fi ouverts et WEP s’affichent sur l’écran
    2. La position (latitude et longitude en WGS84) ainsi que le nombre de satellites en vue s’affichent sur l’écran
    3. On envoie toute la liste des réseaux scannés, avec la position actuelle si le GPS s’est fixé, en Bluetooth.
      Le Bluetooth est en mode « port série » connecté à mon téléphone avec une application terminal
    4. Si le GPS s’est fixé, on envoie la position en APRS via LoRa
  3. À la fin de la balade, on sauvegarde les logs de l’application en CSV
  4. Erwan fait sa tambouille pour nous faire une jolie carte grâce à PostgreSQL !
Cartographie des WiFi en pleine rue
Cartographie des Wi-Fi en pleine rue sur un ThinkPad tactile

Les résultats

Les réseaux Wi-Fi scannés

À la date du 1er juillet 2021, on totalise 16719 réseaux Wi-Fi sur presque tout Grenoble.
1046 réseaux sont ouverts (réseau d’hôtels par exemple mais sans les hot-spots opérateurs type FreeWifi).
199 sont en WEP et donc faiblement sécurisé !

Beaucoup de WEP sont de vieux routeurs Netgear ou des Freebox. Pas mal sont également des entreprises (restaurants par exemple). Les quelques cracks qu’on a tenté ont été faits en quelques dizaines de minutes pour au final trouver les clés Wi-Fi par défaut (que des 0 ou des suites 12345…).

Tableau des fabricants

FabricantNombre
Freebox Sas6825
Sagemcom Broadband Sas5868
Sfr1262
Cisco Systems, Inc762
Ruckus Wireless707
Anov France653
Ingram Micro Services594
Hewlett Packard447
Hewlett Packard Enterprise422
Extreme Networks, Inc378
Netgear373
TP-Link Tech Co, Ltd362
Sercomm Corp340
Arcadyan Corp278
Aruba, a Hewlett Packard Enterprise Co194
Ubiquiti Networks Inc173
Askey Computer Corp141
Huawei Tech Co, Ltd130
Alpha Networks Inc107
devolo AG105
Petit top 20

Cartes

Cartographie des 16719 WiFi Grenoblois que l'ont a scanné
Cartographie des 16719 WiFi Grenoblois que l’on a scanné

Les tests APRS en LoRa

Pendant les premiers tests, aucune position n’a été réceptionnée. Le récepteur APRS à 5 Km à vol d’oiseau au Nord de Grenoble (Sassenage) ne m’entendait pas. Rien de très étonnant avec l’antenne reçue qui n’est pas vraiment accordée pour 433 MHz mais plus vers les 500 Mhz ainsi que la faible puissance de l’émetteur (quelques mW).

Avec une autre antenne chinoise un peu mieux accordée, j’ai eu quelques résultats mais rien de fabuleux. En effet, une trame partait toute les minutes ce qui est peu si la plupart d’entre elles se perdent. On est quand même en plein centre ville et le signal doit parcourir 5 Km à faible puissance pendant que je marche ! Autrement dit, il se prend des réflexions de partout et doit s’affaiblir assez vite.

Je change mon programme pour qu’une trame parte toutes les 5 secondes. C’est du brute force mais vu le nombre d’utilisateurs LoRa, je ne vais gêner personne pendant mes tests. Le résultat est impressionnant ! En plein centre, les trames arrivent à bon port assez souvent. Il faut donc spammer pour que ça passe mais ça passe !

Test LoRa TBeam. Capture d'écran APRS.fi : F4ISE à 5 Km réceptionne les trames
Capture d’écran APRS.fi : F4ISE à 5 Km réceptionne les trames