Tracking géographique : après l'iPhone, Android

À qui le tour ? 180
Vincent Hermann
Vous avez été nombreux hier à réagir sur l’actualité de la collecte des données géographiques par l’iOS 4.X, sur l’iPhone et les iPad 3G. Si certains ont eu tôt fait de parler d’espionnage automatisé, il semblerait que l’on s’avance doucement vers une explication beaucoup plus simple. D’autant que le même comportement a été découvert sur Android.

iPhone 3GS photos

Rappel des faits

iOS, depuis sa version 4.0, enregistre dans un fichier nommé « consolidated.db » des latitudes, longitudes, des dates, des heures et d’autres types de données. La découverte a été faite par Alasdair Allan et Pete Warden de chez O'Reilly Radar. Ils l'ont présentée à la conférence Where 2.0 et il y avait de quoi attirer très nettement l'attention des médias.

Via un billet sur son blog, Will Clarke a fait ses propres recherches et en est arrivé à la conclusion qu’il ne s’agissait pas de données GPS, mais des emplacements des antennes GSM. Clarke avait réalisé une carte d’un voyage de deux jours en vélo et avait été très étonné du manque de précision des positions ainsi relevées. Il faut savoir en effet que la précision de la triangulation GSM est d’une dizaine de mètres en espace urbain, mais de plusieurs kilomètres dans la campagne (tout dépend évidemment du degré de couverture du territoire traversé). Notons que Will Clarke a depuis mis à jour son blog avec d'autres informations allant dans le même sens.

Cela n’a pas empêché un sénateur démocrate américain, Al Franken, de poser des questions très précises à ce sujet à Apple.

Ce qui pose problème

Si la précision des données peut être importante en ville, elle est faible en campagne. Cela ne répond cependant pas à plusieurs questions, dont les deux principales : ces données représentent-elles un danger pour l’utilisateur, et à quoi servent-elles ?

La sécurité des utilisateurs est ici le principal point chaud dans cette affaire. Rien ne prouve jusqu’à présent qu’Apple utilise ces données de manière détournée, ni un tiers d’ailleurs. Le problème principal vient d’une concordance de deux éléments : les informations apparaissent en clair dans la base de données qui n’est pas chiffrée, et les sauvegardes réalisées par iTunes enregistrent également une copie non chiffrée de ces données. Elles apparaissent donc en deux endroits, sur l’appareil et l’ordinateur, et sont donc facilement accessibles en théorie. On peut toutefois ajouter un cran de sécurité dans le Résumé de l’appareil sous iTunes, en cochant la case « Chiffrer la sauvegarde » :

itunes

Mais quelle est l’utilité de ces données finalement ? Elles constituent un cache, c’est-à-dire un stockage d’informations pouvant être rappelées ultérieurement en vue d’accélérer une opération quelconque. Dans le cas présent, elles interviennent dans l’utilisation du GPS. La détermination des coordonnées géographiques précises est en effet un défi en termes de performances, car le repérage par des satellites prend du temps. Bien que le problème ait été fortement atténué par l’A-GPS (qui télécharge une table d'éphémérides des satellites), il diminue encore si une position approximative est fournie. D’où les informations en cache.

De fait, iOS est-il le seul système à agir de la sorte ? Non, puisqu’Android procède de la même manière… mais dans d’autres conditions.

Le cas d’Android

N’importe quel téléphone sous Android possède une table équivalente à celle d’Apple. On y trouve des données de géolocalisation du même acabit : la table contient les 50 dernières antennes GSM utilisées. À noter qu’une autre stocke les 200 derniers hotspots Wi-Fi croisés. Il n’y a pas de réelle explication à la différence de taille entre les caches d’iOS et Android, mais John Grubber, proche de l’actualité Apple, indique qu’il s’agit probablement d’un oubli ou d’un bug, car les données trop anciennes sont souvent inutiles.

Mais la différence la plus importante avec la base de données d’Apple réside dans la sécurité, bien qu’il ne s’agisse pas de « mesures actives ». Premièrement, les informations ne sont jamais sauvegardées sur l’ordinateur, ce qui coupe l’une des sources de données à « voler ». Deuxièmement, et puisqu’il ne reste que le téléphone, celui-ci doit obligatoirement être utilisé en mode root, conjointement au mode Debug USB. De nombreuses conditions donc, bien que rien ne soit impossible.

Sauf que ce n’est pas exactement « tout ».

Une collecte automatisée et très régulière

Le Wall Street Journal s’est ainsi payé les services de l’analyste sécurité Samy Kamkar. Selon lui, le smartphone Android HTC utilisé pour le test collectait des données sur une base régulière, comprenant un relevé de localisation géographique tous les quelques secondes, accompagné du SSID, de la localisation et de la force du signal des réseaux Wi-Fi croisés, ainsi que de l’identifiant unique du téléphone, l'ensemble étant envoyé au moins une fois par heure. Une trouvaille à laquelle Google n’a pas donné de réponse malgré la demande du Journal.

La gestion de ce problème par Google sera délicate, car elle renvoie directement à la collecte des données Wi-Fi pour laquelle la firme a été épinglée dans plusieurs pays d’Europe, notamment la Suisse.

Ce souci d’envoi des données avait fait l’objet d’une explication l’année dernière de la part d’Apple. La société avait expliqué à plusieurs sénateurs américains que des coordonnées GPS étaient relevées régulièrement, ainsi que les réseaux Wi-Fi croisés par l’utilisateur, et envoyés vers ses propres serveurs toutes les douze heures. Ces données ne contenaient aucune information capable d’identifier l’utilisateur.

L’une dans l’autre, ces histoires cumulées accentuent l’effet d’angoisse pour la sécurité des données. Il faudrait maintenant plusieurs éléments, dont au moins une épuration régulière du cache dans iOS, le chiffrement des données de manière systématique, et des explications de Google sur la finalité des informations collectées et récupérées.