Sites Inria

Le 23.12.2014

Comment Android laisse des applications vous pister

Voudriez-vous d'une application qui, sans vous demander l’autorisation explicite, dispose d’un identifiant stable pour vous tracer, connaît votre localisation et vos déplacements même sans GPS, peut déduire vos liens sociaux avec d'autres utilisateurs ? Vous l'avez probablement déjà.

Imaginez une application qui, sans vous demander l’autorisation explicite,

  • dispose d’un identifiant stable pour vous tracer
  • connaît votre localisation et vos déplacements même sans GPS
  • peut déduire vos liens sociaux avec d'autres utilisateurs

Vous en connaissez sûrement ! En réalité, 41% des 2700 applications Android les plus populaires demandent ces permissions, et bon nombre en font usage, ainsi que l'a montré la dernière étude Mobilitics menée conjointement par la Cnil et Inria.

Rien de mystérieux là-dedans. Il suffit que l’application vous demande et obtienne les permissions ACCESS_WIFI_STATE et INTERNET lors de son installation. Hop, le tour est joué !  Aucun utilisateur, même attentif, ne peut imaginer toutes les implications de ces deux autorisations conjointes. Entrons dans le détail des 3 éléments ainsi obtenus par l’application :

Un identifiant stable pour tracer l’utilisateur

C’est l’adresse dite MAC (pour « Media Access Control ») de l’interface Wifi du smartphone, indispensable pour se connecter à un réseau Wifi. Elle se présente sous la forme, par exemple, de : 68:a8:6d:28:ce:1f. Cette adresse est précieuse pour les apps : elle est garantie unique au monde, et impossible à réinitialiser.

Votre localisation connue, même sans GPS activé

Une application – et donc son concepteur – peut connaître votre localisation en identifiant les réseaux Wifi à portée, puis en s’aidant d’une base de données indiquant la localisation géographique de tous les points d’accès Wifi, par triangulation. Dans un environnement urbain, vu le nombre de réseaux Wifi, cette localisation est très précise. Pour les déplacements, c’est le même principe : si l’application dispose de l’ACCESS_WIFI_STATE, elle lira l’historique des réseaux WiFi où l’on s’est connecté puisque cet historique est enregistré dans le smartphone.

Vos liens sociaux

Une application disposant des permissions citées plus haut peut inférer des liens sociaux entre utilisateurs. Il suffit pour cela qu’elle compare la proximité des historiques de connexion Wifi des utilisateurs, après s’être créé une grande base de données dédiée. Si deux utilisateurs ont utilisé le même réseau Wifi régulièrement, on peut en déduire qu’ils travaillent ou vivent à proximité.

Et c’est quoi le problème ?

Le souci, c’est le manque de transparence. Faire reposer le contrôle utilisateur uniquement sur des permissions à l’installation est à la fois :

  • trop grossier (on agrège trop d’éléments dans la même permission)
  • trop complexe (les implications des permissions sont multiples et parfois obscures)
  • trop défavorable à l’utilisateur car binaire et statique

Et Google veut-il changer la donne ? Visiblement pas, puisqu’Android 4.3 intégrait un panneau de Contrôle de la vie privée qui a été retiré ensuite.

Propulsé par