Les Indiens de Lagrange Point, basés à Bangalore, viennent de publier un article intéressant : ils expliquent comment passer outre les géorestrictions d'Apple sur un iPad. Le point de départ est simple : ils voulaient activer les fonctions de santé auditive des AirPods Pro 2. En effet, les fonctions sont bloquées en Inde pour le moment, comme en France.
Ils expliquent d'abord le fonctionnement de base des géorestrictions de ce type. Premièrement, il faut un compte Apple localisé aux États-Unis, ce qui n'est pas trop compliqué à obtenir. De plus, la région de l'appareil doit être réglée sur les États-Unis. En plus de ces deux réglages, Apple vérifie la localisation de l'adresse IP liée à l'appareil (en utilisant une adresse précise, https://gspe1-ssl.ls.apple.com/pep/gcc
. Enfin, Apple emploie aussi la localisation de l'appareil, qui est récupérée par différents moyens (GPS, réseau mobile mais aussi Wi-Fi).
Pour l'adresse IP, les chercheurs expliquent avoir simplement fait passer le trafic par un ordinateur, pour renvoyer la valeur attendue — une IP localisée aux États-Unis — grâce à un proxy. Pour la localisation, ils ont d'abord tenté de modifier la localisation avec des outils liés à Xcode, sans succès.
La solution est venue d'une vieille technique : fausser les résultats renvoyés par Core Location, l'ensemble d'API qui permet de géolocaliser les appareils Apple. Le choix a été fait d'employer un iPad pour une bonne raison : la tablette d'Apple, dans sa version de base, n'a ni récepteur GNSS ni modem cellulaire. Les deux technologies sont employées pour se localiser — de façon évidente avec les réseaux GPS, Galileo, etc., de façon détournée avec les antennes du réseau mobile — et s'il est possible de brouiller les deux solutions pour fausser le résultat, elles demandent du matériel assez onéreux.
Les iPad de base, donc, ne reposent que sur le Wi-Fi. La localisation en Wi-Fi est assez simple, schématiquement : la localisation est obtenue en croisant les réseaux reçus avec une base de données qui contient les coordonnées d'une bonne partie des bornes Wi-Fi du monde.
Les réseaux Wi-Fi, des alliés pas toujours discrets pour la géolocalisation
La solution consiste donc à placer l'iPad dans une cage de Faraday (qui va bloquer les ondes extérieures) avec un appareil qui va émettre les données d'un réseau Wi-Fi précis. Dans l'exemple, ils utilisent une carte ESP32 qui émet un réseau normalement localisé en Californie. Après un redémarrage de l'iPad dans la cage, la solution fonctionne : l'appareil se croit aux États-Unis. La cage de Faraday est importante pour une raison : si plusieurs réseaux Wi-Fi sont détectés (ce qui est généralement le cas), Core Location tend évidemment à corriger rapidement la localisation en considérant que le réseau généré par l'appareil de test est une erreur.
Dans le cas des fonctions de santé auditive des AirPods Pro 2, la solution d'Apple a un défaut, pratique ici : une fois la fonction activée, elle reste active et est partagée avec les autres appareils connectés au compte Apple. L'activation sur un iPad permet donc aussi l'activation sur un iPhone, par exemple. Enfin, cette technique devrait aussi permettre d'activer Apple Intelligence ou toutes les technologies liées à des géorestrictions chez Apple.