La mutation rapide d’Exodus Privacy, en lutte contre les trackers sous Android
Pisteur, arrête de pister ! (x3)
Le 29 mars 2018 à 07h23
8 min
Société numérique
Société
Lancée en novembre, la plateforme d'analyse d'applications Android s'est ouverte aux contributions d'internautes. Elle a également lancé une première application et crée quelques ponts avec des acteurs publics et privés. De premières étapes pour l'association, à laquelle il reste beaucoup de travail.
Fin novembre, Exodus publiait ses premiers résultats, en collaboration avec plusieurs médias. La toute jeune plateforme voulait lever le voile sur la présence massive de pisteurs au sein des applications Android, via des outils libres et réutilisables. Quatre mois plus tard, le chemin parcouru est important, en partie grâce à la médiatisation du projet.
« Au moins quatre personnes actives sont arrivées », nous déclare « Esther », la contributrice principale d'Exodus, dans le cadre d'un entretien sur son projet PiRogue (voir notre article). En outre, une vingtaine d'applications auraient entamé un nettoyage, voire supprimé les pisteurs qu'elles intégraient jusqu'alors, assure la chercheuse indépendante.
L'occasion, selon elle, de mesurer les dépendances insoupçonnées que peuvent embarquer des bibliothèques clés-en-main. Pour rappel, Exodus Privacy est une plateforme complète, qui mène une analyse des installeurs d'applications Android (APK) puis insère les résultats dans une base de données versionnée.
Une passe statique est menée (à la recherche de références à des pisteurs connus au sein du code), avant une analyse dynamique, en principe du trafic réseau. Le champ de la plateforme s'est étendu depuis, avec de premiers contacts institutionnels et des plans plein la besace, entre autres sur la certification d'applications.
De nouveaux pisteurs, une application et des extensions
L'une des premières avancées a été l'ouverture des soumissions d'applications aux internautes. Il est ainsi possible de pointer vers un élément à analyser, ce dont la plateforme se charge par elle-même. Début mars, l'équipe officialisait l'ajout de 50 nouveaux trackers, pour un total de 135 aujourd'hui.
« Certaines applications ont vu leur nombre de pisteurs augmenté de sept » écrivait l'équipe. Cette partie n'est pas la plus « fun » du projet, admet Esther. Certains contributeurs apportent donc leur pierre à l'édifice en identifiant de nouveaux trackers, un processus manuel, qui passe par un ticket du dépôt GitHub. « Une fois une entrée suggérée, la partie fastidieuse commence. Il faut vérifier qu'il s'agit bien d'un pisteur, que nous pouvons le détecter, comment, et sa nature. »
Début janvier, c'était une application Android officielle qui arrivait. Publiée en alpha, elle scanne le téléphone à la recherche d'applications, pour afficher le nombre de pisteurs détectés. Pour le moment, la récupération passe par un serveur fourni par Esther. Elle promet une version stable dans les prochaines semaines, téléchargeable depuis le Google Play Store et le dépôt libre F-Droid.
D'ici là, l'équipe devra régler un problème de taille. Avec des milliers d'applications en base, celle-ci est devenue très volumineuse. Or, elle est transmise à chacune des applications Exodus installées sur les téléphones, pour que l'analyse reste locale. « Comme nous avons ouvert la soumission au grand public, le nombre de rapports a explosé. C'est devenu inutilisable. On revoit notre approche, pour garantir qu'Exodus ne sait pas ce qu'on a sur le téléphone, tout en fournissant l'information en fonction de ce qu'on a dessus » résume notre interlocutrice.
Une mise à jour différentielle de la base est une des pistes envisagées.
Entre temps, le développeur Valère Fédronic a conçu l'extension Exodify pour navigateurs, affichant les pisteurs pour chaque application sur la version web du Google Play Store, en pastille ou sous forme détaillée.
À la mi-mars, un forum a ouvert ses portes. Son contenu n'est visible que sur enregistrement.
Un début de reconnaissance publique
La communauté ne se limite pourtant pas à cela. Des entreprises et institutions ont remarqué le projet, qui a rapidement gagné en notoriété dans le milieu français du logiciel libre. Rapidement interpellé sur le nombre de trackers dans son application Android, le moteur de recherche Qwant promet depuis plusieurs mois de soutenir financièrement le projet.
Après une sortie publique sur des difficultés dans les discussions, le 1er mars, Esther nous assure que la négociation est en bonne voie, sans en dire plus. Qwant a refusé de s'exprimer sur le sujet.
Plus concrètement, un accord avec Gandi vient d'être officialisé. Il porte sur un soutien de l'entreprise à l'hébergement de la plateforme, dont les capacités n'ont pas évolué depuis novembre, malgré la croissance de son utilisation. La société est un soutien connu des projets open source français, à l'image de Cozy Cloud dernièrement.
À la mi-février, l'équipe d'Exodus a été invitée au laboratoire d'innovation de la CNIL (LINC). La commission compte l'exploiter « dans le cadre d’analyses du laboratoire et d’investigations générales pour comprendre ce qui existe sur le marché », nous précise-t-elle via Twitter à la fin-février. Il n'est pas (encore) question de l'utiliser dans des contrôles concrets.
Malgré tout, « cela nous a donné du crédit. Cette reconnaissance a d'autant plus motivé certains à s'investir que l'utilité et le sérieux du projet est reconnu », juge Esther.
Des analyses réseau à construire, une deuxième application prévue
D'un point de vue technique, le travail reste important. Fin novembre, la plateforme devait (en principe) mener une analyse du trafic réseau via un smartphone virtualisé, toujours dans l'idée d'automatiser la procédure. Télécharger l'application, la lancer dans un émulateur pendant 80 secondes, observer l'activité puis tout fermer.
La vision était simple, mais peu réaliste, estime Esther. C'est l'une des motivations derrière PiRogue, son boitier à base de Raspberry Pi, qui capte le trafic HTTP(S) d'un vrai smartphone via des outils à la mise en place simplifiée. La procédure commence à être utilisée pour certaines applications.
L'une des raisons de cette approche « humaine » plutôt qu'automatisée est le Règlement général sur la protection des données (RGPD), appliqué le 25 mai, qui renforce l'importance du consentement de l'utilisateur.
« On sait pertinemment qu'une fois le RGPD en application, les 80 secondes d'activité ne suffiront plus, puisque pour certaines sociétés faisant de la publicité sur mobile, le but sera de diluer dans le temps les demandes de consentement » plutôt que de les multiplier au lancement, résume Esther.
Or, sans consentement, pas d'activation des fonctions générant du trafic. Pour pallier ce problème, en plus du PiRogue, l'équipe d'Exodus discute de la conception d'une seconde application. Au lieu d'afficher les pisteurs des applications installées, celle-ci est censée capter leur trafic, pour envoyer des rapports anonymisées à la plateforme Exodus.
Sur cette dernière, le défi actuel concerne l'analyse des certificats X.509 utilisés pour certifier les applications via le Google Play Store. « On a toujours des trous dans la raquette là-dessus » reconnaît la spécialiste. La raison : Android Studio permet de générer des certificats déviants de la norme (RFC). La bibliothèque utilisée par Exodus est donc incapable de les comprendre. 231 applications seraient concernées.
Démasquer les applications factices avec ScatterScam
En plus d'Exodus et de PiRogue, Esther planche sur un troisième projet. Du nom de ScatterScam, il est censé fournir des empreintes pour chaque application Android, pour s'assurer qu'une version installée est celle distribuée officiellement.
L'idée vient de la campagne d'espionnage DarkCaracal, qui a volé les données de milliers de personnes via des applications Android vérolées. Les logiciels en question paraissaient légitimes aux utilisateurs, avec pour seul « twist » l'intégration d'un cheval de Troie invisible. C'était par exemple le cas de Signal, fonctionnel à cette différence près.
« L'objectif de ScatterScam est de montrer que ce type de campagne tient surtout de l'ingénierie sociale. Mon but est de donner un score à la qualité de l'attaque » explique Esther. Elle compte s'appuyer sur 21 critères, comme l'icône ou la chaine de caractères exacte du nom, pour établir des empreintes et donc des correspondances. « Si d'un œil d'un humain, l'application est exactement la même, la dangerosité est maximale. »
Comme PiRogue, le projet en est à ses balbutiements, avec un premier prototype fonctionnel. Le but est de lier ce travail à la plateforme Exodus, en exploitant son interface pour développeurs (API) par exemple.
« C'est pour ça que dans Exodus, j'ai introduit une empreinte de l'APK, soit plusieurs indicateurs agrégés, comme son identifiant (AppUID) ou un hash particulier de l'icône » détaille-t-elle. Malgré ces dérivés, Exodus reste la priorité de la chercheuse, qui consacre toujours son temps libre au projet.
La mutation rapide d’Exodus Privacy, en lutte contre les trackers sous Android
-
De nouveaux pisteurs, une application et des extensions
-
Un début de reconnaissance publique
-
Des analyses réseau à construire, une deuxième application prévue
-
Démasquer les applications factices avec ScatterScam
Commentaires (20)
Vous devez être abonné pour pouvoir commenter.
Déjà abonné ? Se connecter
Abonnez-vousLe 29/03/2018 à 18h09
Bonjour,
Exodus Privacy accepte les dons CB en passant par paypal. ;-)
Le 29/03/2018 à 18h36
C’est bien pour ça que je veux payer par CB " /> (sans Paypal)
Le 30/03/2018 à 13h33
C’est quelle appli exactement ? Une recherche Play store “blockada” me propose “Navigateur Adblocker gratuit”, qui est apparemment payant (après 14 jours d’essai). C’set bien celle-là ? Car tu parlais d’une appli qui bloquait toutes les pubs, pas d’un simple navigateur.
Le 30/03/2018 à 13h41
En effet ce n’est pas ça, elle n’est pas sur le play store. Tu peux télécharger directement l’apk sur leur site (cf. mon premier post) ou sur F-Droid.
Le 02/04/2018 à 17h19
Et c’est développé par un Français ! " />
Le 03/04/2018 à 09h13
Le 29/03/2018 à 07h34
Quelqu’un sait-il s’il existe des moyens de bloquer tous ces trackers?
Exodus est super mais une fois qu’on s’inquiète définitivement, difficile de trouver une parade.
Le 29/03/2018 à 07h52
Bloquer entièrement, ça va être dur en l’état. La bonne technique est de leur couper au maximum l’herbe sous le pied via des bloqueurs de pubs type AdAway ou DNS66 (tout deux dispo sur F-Droid)
Le 29/03/2018 à 07h58
Je ne vois pas l’intérêt de lutter contre les trackers quand on utilise des services en ligne qui savent tout ce qu’on fait, lit, écrit, …
Les appli 100% locales sur un smartphone ca n’existe pratiquement plus.
Le 29/03/2018 à 08h06
J’utilise Blokada. De ce que je vois des applis de John Shaft, ça fonctionne comme DNS66, c’est à dire que tu ne peux pas utiliser de VPN car ça en simule un pour éviter le besoin d’être root (le cas d’AdAway)
Le 29/03/2018 à 08h09
J’ai toujours du mal à installer ce genre d’application, AdAway par exemple modifie le fichier host du système de ce que j’ai vite lu, et donc peut potentiellement être plus nocif que le problème d’origine :/
Le 29/03/2018 à 08h33
Pisteur, arrête de pister ! (x3)
" />
Le 29/03/2018 à 08h34
très bel effort, mais ça serait pas au store de vérifier un peu tout ça ? Ils devraient avoir la puissance et les outils nécessaires " />
Le 29/03/2018 à 09h13
Du coup concernant l’application Next INpact ? " />
Le 29/03/2018 à 09h15
Ca fonctionne comment, ça bloque les pubs quelque que soit l’appli qui tente d’en afficher ? Et visiblement ça ne nécessite pas de rooter ?
Sinon je trouve qu’Exodus fait du super boulot. Dès qu’ils acceptent le paiement en CB, je leur file quelques euros.
Le 29/03/2018 à 09h34
C’est bien l’idée oui. De ce que je vois, AdAway nécessite les droits root car elle modifie le fichier host système. Pour Blockada (et DNS66 apparemment), l’idée c’est de se placer en tant qu’intermédiaire en simulant un VPN et donc éviter le besoin du root.
La config passe par des fichiers host également pour la liste noire, mais tu as l’avantage de pouvoir mettre en liste blanche des applis/fichiers hosts.
Blockada a ajouté tout récemment la possibilité de choisir son DNS aussi, ce que semblait faire DNS66 depuis un moment.
Quand j’étais passé dessus c’était entre-autre à cause de deux applis météo qui abusaient côté pub (dont météo france). Pour météo france ça n’a pas fonctionné, je ne sais pas si le fichier host a été mis à jour entre-temps car depuis je vais directement sur le site mobile pour contourner le problème.
Le 29/03/2018 à 09h52
Le 29/03/2018 à 13h59
Le 29/03/2018 à 14h46
C’est sûr que ça fait peur.
Par contre :
Mise à jour
5 octobre 2016
Ceci explique peut-être cela.
Le 29/03/2018 à 15h34
On a déjà répondu : ça dépend d’un framework tiers, et les éléments sont inactifs. Mais dans tous les cas, c’est en train d’être retiré " /> Pour le reste de l’évolution des apps et du site #StayTuned ;)