Application iPhone et vie privée : la réalité

avril 5th, 2011 Posted in Développement, Veille technologique

Avec la montée en puissance du marché des applis iPhone et le débat sur la vie privée sur Internet, voici un point sur ce que les développeurs d’applications peuvent réellement récupérer comme informations sur vous ou votre appareil au travers d’une application :

Le numéro UDID

Il s’agit d’un code d’identification de 40 caractères, unique et associé au téléphone.
On pourrait comparer ce numéro à une adresse IP, à la différence que celui ci ne change jamais.

Ce numéro est collecté et transmis par beaucoup d’applications à l’heure actuelle : il permet de faire des stats d’utilisation, d’associer des réglages stockés en ligne à votre terminal, ou encore à envoyer les notifications Push, ces petits messages instantanés (Ex : un nouveau message sur Facebook). Son utilisation est indispensable dans pas mal de cas, et loin d’être frauduleuse.

Seul, ce numéro n’a aucune signification, il s’agit d’une chaine de caractères aléatoires. Le problème peut se poser si différentes applications recoupent les données saisies dans les applications avec l’ identifiant et établissent ainsi un profil plus global, à la manière des cookies sur le web.  Tout dépend des infos que vous donnez à une application, et des intentions des développeurs.

Les fonctions de téléphonie

Appel : une application peut lancer un appel téléphonique distant, mais celui ci s’affiche immédiatement à l’écran et vous laisse la possibilité de raccrocher, impossible donc d’appeler en arrière plan. Pas de soucis à se faire du coté des numéros surtaxé et de votre forfait.

SMS : une application peut ouvrir l’application SMS et pré-saisir un numéro, en aucun cas envoyer le SMS de manière autonome.

Le numéro de téléphone : une application ne peut pas accéder au numéro associé à la carte SIM (ou à la moindre infos stockées sur la SIM d’ailleurs). Un des seuls moyens à mon sens est d’inciter à appeler un numéro précis à partir de l’appli et de transmettre une requête à un serveur. Le serveur recoupe alors l’appel téléphonique reçu avec la petite requête. En comparant les dates et les heures de ces deux événements, on peut en déduire que l’appel et la requête viennent du même appareil. Tordu, mais faisable techniquement.

Le carnet d’adresse

Une application a un accès complet en lecture et écriture sur votre carnet de contact : nom, numéro de téléphone, photo, absolument tout. C’est à mon sens le plus gros problème à l’heure actuelle sur iPhone. Rien n’empêche (si ce n’est un peu d’honnêteté) une application de lire l’ensemble de vos contacts et les transmettre vers un serveur distant. Le spam ciblé par SMS peut commencer tranquillement. Aussi combien d’entre nous ont dans leurs contacts une entrée « Moi » avec leur numéro enregistré ?

Le GPS

La première activation de la fonction GPS d’une application déclenche systématiquement l’apparition d’une boite de dialogue vous demandant d’activer le GPS. A ce stade un peu de bon sens, demandez vous pourquoi un jeu type Yéti Sport ou Angry Bird a besoin d’accéder à votre position ? Refusez simplement et le GPS ne communiquera aucune coordonnées. A tout moment, dans les réglages, vous pouvez autoriser ou interdire l’accès au GPS à une application, ou même couper le service de localisation pour tout le téléphone.

Une application peut demander au GPS de rester activé en tache de fond, mais l’icône de la flèche violette reste présente dans la barre du haut. Quittez les applications une par une et voyez laquelle collecte ces infos.

Au niveau localisation, une appli peut aussi obtenir une position approximative en analysant l’adresse IP du téléphone (en particulier les points Wifi public). En gros la région/ville (technique utilisée un maximum sur le web, vous l’avez peut-être constatés). Aucune parade mais finalement peu de risques pour votre vie privée.

Les informations nominatives

Une application n’a pas accès à votre nom, prénom, adresse ou numéro de sécu, sauf évidemment si vous la lui donnez !

Les autres applications

Sauf en recoupant les UDID, impossible pour une application de savoir quelles autres applis vous utilisez, ni d’accèder aux données stockées par ces applications.

Quelles infos transmet réellement une application précise ?

Il y a des moyens techniques pour savoir que transmet une application, mais rien de simple et rapide malheureusement.

Pour les initiés : connectez votre iPhone en Wifi, changez les paramètres IP en static et placez une box Linux comme Gateway NAT avec comme default route le gateway internet réel, lancez ensuite Wireshark ou tcpdump pour tracer le traffic IP.
La manip est aussi possible sur Windows et Linux en utilisant une attaque MITM / ARP Poisonning sur votre routeur Wifi (idéal si le traffic transite en SSL).
Autre solution : modifier la table DNS locale du routeur pour faire pointer le domaine vers un serveur en lan.

En résumé, les concepteurs d’applications ont la possibilité d’accéder à un certain nombre d’infos. Le risque arrive quand ces données sont recoupées, exactement comme pour le web.
Il faut aussi ne pas oublier que toutes les applications sont contrôlées par Apple (et en particulier les appli payantes), qui ne se gène pas pour rejeter une appli au moindre problème, et de fermer les compte développeur à la moindre plainte. Cela a ces inconvénient question liberté, mais aussi des avantages au niveau sécurité.

NB : il ne s’agit ici que de pistes, pas forcément toutes exploitées à l’heure actuelle, mais faisables techniquement. En restant prudent sur les infos publiées, comme sur Internet, on peut garantir un certain anonymat vis à vis des concepteurs d’applis. Évidemment si vous voulez être tranquille, ressortez votre 3310 :p

Bookmark and Share

Tags: , ,



No Comments Yet

You can be the first to comment!

Leave a comment