- La demande d’autorisation de localisation du navigateur ne repose pas sur une simple estimation basée sur l’IP, mais sur une mesure précise de la position à l’aide des informations des points d’accès Wi-Fi
- Dans ce processus, le navigateur collecte des données comme le SSID, le BSSID et la puissance du signal (RSSI), puis les compare à la base de données d’un fournisseur de services comme Google
- Ces bases de données ont été constituées grâce au wardriving historique et à la transmission continue de données par les appareils des utilisateurs
- Plusieurs controverses liées à l’atteinte à la vie privée ont éclaté à plusieurs reprises, notamment autour de l’affaire de collecte de données non chiffrées par les véhicules Google Street View
- Aujourd’hui, la plupart des appareils utilisent ce système par défaut, et il est possible de s’exclure (opt-out) en enregistrant le BSSID ou en ajoutant « _nomap » au SSID
Système de présence et vérification de la localisation
- La plateforme TopHat, utilisée dans un cours d’algorithmique à l’université du Wisconsin, vérifie la position réelle des étudiants pour valider leur présence
- Au-delà de la simple saisie d’un code de présence, la fonction Secure Attendance utilise les données de localisation de l’appareil pour déterminer si l’étudiant se trouve près de la salle de cours
- Comme l’estimation de position basée sur l’IP est très imprécise, TopHat utilise la Geolocation API du navigateur
- Cette API demande une autorisation explicite à l’utilisateur et permet de déterminer la position avec une précision de quelques mètres
Fonctionnement de la Geolocation API
- La Geolocation API exploite plusieurs sources comme le GPS, l’IP et le Wi-Fi, mais sur les appareils sans GPS comme les ordinateurs portables, c’est surtout le Wi-Fi Positioning System (WPS) qui est utilisé
- Lors d’un appel à
getCurrentPosition(), le navigateur collecte le SSID, le BSSID et la puissance du signal des points d’accès Wi-Fi à proximité
- Le BSSID est un identifiant unique basé sur l’adresse MAC, qui permet de distinguer plusieurs réseaux portant le même SSID
- Les informations collectées sont envoyées à un fournisseur de services de localisation comme Google, qui calcule une position précise en les comparant aux données déjà accumulées
Histoire du positionnement Wi-Fi et collecte de données
- Cette technologie remonte à la méthode de wardriving commercialisée au début des années 2000 par Skyhook Wireless
- Des véhicules équipés d’un récepteur GPS enregistraient en déplacement la position et la puissance du signal des réseaux Wi-Fi environnants
- Par la suite, Google a collecté des informations Wi-Fi avec ses véhicules Street View, tandis qu’Apple et Microsoft, entre autres, ont basculé vers une collecte automatique depuis les appareils des utilisateurs
- Aujourd’hui, la plupart des smartphones et ordinateurs portables envoient aux serveurs du fabricant les informations Wi-Fi environnantes lorsque les services de localisation sont activés, afin d’aider à estimer la position d’autres appareils
Controverses sur la vie privée et la sécurité
- En 2010, il a été révélé que Google avait collecté via ses véhicules Street View environ 600 Go de données HTTP non chiffrées, ce qui a provoqué une controverse
- Un bug de l’API de localisation de Microsoft a également donné lieu à un cas permettant de reconstituer les déplacements d’un utilisateur
- Une étude de l’université du Maryland publiée en 2024 a montré qu’il était possible d’extraire la position d’environ 2 milliards de BSSID en exploitant une faille du service de localisation d’Apple
- Ces informations pourraient être détournées pour le suivi individuel ou la surveillance des déplacements de population
- Les grandes entreprises ont depuis renforcé la sécurité de leurs API et proposent des mécanismes permettant d’exclure un réseau de la base de données en ajoutant « _nomap » au SSID ou en enregistrant le BSSID
Conclusion et bases de données publiques
- Cette technologie est appelée Wi-Fi Positioning System (WPS) et reste largement utilisée aujourd’hui
- wigle.net est une base de données publique en crowdsourcing qui a collecté environ 2 milliards de réseaux en 25 ans ; les utilisateurs peuvent y vérifier si leur propre réseau y figure
- beacondb.net est une base de données de localisation radio fondée sur le domaine public, qui fournit un jeu de données indépendant différent des services commerciaux
- Si un ordinateur portable peut déterminer sa position avec précision, c’est grâce aux données Wi-Fi fournies inconsciemment par d’innombrables utilisateurs
- Même la vérification de présence en cours fonctionne ainsi sur le résultat de cette accumulation collective de données
1 commentaires
Commentaires Hacker News
Dans les paramètres de Firefox, j’ai figé ma position sur un endroit précis près de chez moi
user_pref("geo.provider.network.url", 'data:application/json,{"location": {"lat": 45.0, "lng": -122.0}, "accuracy": 128.0}');Comme ça, je pense que les données Wi-Fi ne fuitent pas vers l’extérieur
Par exemple, il faut mettre
geo.provider.use_corelocation,geo.provider.use_geoclueetgeo.enabledàfalseIl peut aussi être nécessaire de mettre
geo.provider.testingàtrueLiens de référence : ticket Bugzilla, StackOverflow, Security StackExchange
Version Chrome, version Firefox
Quand je travaillais autrefois chez un concurrent de Zoom, on a testé une fonction pour détecter si des participants se trouvaient dans la même pièce
Chaque ordinateur portable émettait un son aigu unique et écoutait les signaux des autres
Ça marchait bien en laboratoire, mais ça a échoué dans la vraie vie. Cela dit, c’était une tentative intéressante
Le bruit de fond, le feedback, le son des haut-parleurs, etc. ruinent complètement la réunion
Article associé : Science.org
J’ai récemment créé un petit CLI appelé where-am-i
Lien GitHub
Comme le GPS en intérieur est très mauvais, je trouve ce type de technologie de géolocalisation vraiment utile
/usr/libexec/geoclue-2.0/demos/where-am-iDe nos jours, les étudiants malins en info font probablement tourner sur leur téléphone Android une appli proxy qui relaie l’environnement Wi-Fi
Ensuite, leurs amis récupèrent ces données via un plugin de navigateur ou un hack Linux pour falsifier leur position
Il suffit de connaître les coordonnées de la salle de cours
Mon PC n’a pas de connexion sans fil, donc l’API de géolocalisation échoue toujours
J’aurais sans doute raté le pointage de présence en cours
Je me suis dit qu’on pourrait probablement modifier le navigateur pour renvoyer une fausse position
J’ai ensuite découvert, un peu dépité, que c’était possible simplement via les paramètres de Firefox
Je me demande s’il est possible de faire du spoofing de position avec des droits administrateur
Par exemple, j’aimerais essayer de cloner la liste SSID/BSSID d’une salle où se trouve un ami pour faire croire que j’y suis aussi
Ce n’est qu’au bout d’environ 30 secondes qu’il a corrigé la position
C’est la version moderne de l’ancien système de clicker de l’université
La « stratégie impossible à patcher » qui consiste à laisser un ami pointer à sa place fonctionne toujours
J’ai utilisé Symbian pendant longtemps, et je n’ai découvert que récemment l’existence de ces pratiques de scan Wi-Fi
Que les voitures de Google Street View scannent mon routeur, ça va, mais que mon téléphone me suive discrètement, ça me dérange
J’espère que des forks Android comme GrapheneOS peuvent bloquer ce genre de chose
Quand j’étudiais en Autriche, l’université laissait presque entièrement les étudiants se gérer eux-mêmes
J’ai du mal à comprendre l’obligation de présence. Je me disais qu’il suffisait de réussir les examens
Les travaux pratiques sont une exception, mais si on n’y participe pas, cela se voit tout de suite
Au final, tout dépend du niveau de l’établissement et de l’autonomie des étudiants
En revanche, les projets de laboratoire se faisaient en équipe, donc sans participation, il était impossible d’obtenir des résultats
Parce qu’on a besoin de données pour les bourses, les graphiques de corrélation entre présence et notes, etc.
Mais fondamentalement, les étudiants sont des adultes, donc apprendre reste leur responsabilité
Cette technologie est déjà largement utilisée depuis plus de 20 ans
Le GPS est précis mais lent, et peu fiable en intérieur ou en milieu urbain
En revanche, les données Wi-Fi sont abondantes et permettent d’obtenir une position précise en moins d’une seconde