La mutation rapide d'Exodus Privacy, en lutte contre les trackers sous Android

Pisteur, arrête de pister ! (x3) 20
Accès libre
image dediée
Sécurité
Guénaël Pépin

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.


chargement
Chargement des commentaires...