Les empreintes de nos navigateurs nous identifient — et si on brouillait les pistes ?

image_pdfimage_print

Depuis un an ou deux une conscience floue de l’ubiquité du pistage est perceptible dans les conversations sous la forme de brèves remarques fatalistes  :

— De toutes façons on est espionnés, alors…
— Ils peuvent savoir tout ce qu’on fait sur Internet, hein…

et chez les Dupuis-Morizeau  :

— J’ai réservé la location moins cher avec le PC du boulot pour exactement la même chose… Faut croire que depuis qu’on fait des achats en ligne ils se figurent qu’on pourrait payer plus…

Vous qui savez, ne vous moquez pas trop vite  : mieux vaut cette perception diffuse qu’une certitude naïve d’être protégé (« ah tu vois le petit s derrière http ça veut dire que c’est sécurisé ce site » hum) ou pire une ignorance dangereuse.
Certes le chemin est long encore avant de pouvoir susciter une plus large prise de conscience puis une évolution des comportements et des usages dans notre vie numérique. C’est à quoi Framasoft s’efforce de mener par étapes avec la campagne longue durée Dégooglisons Internet. Mais bien d’autres initiatives surgissent semaine après semaine, et nous sommes ravis de leur donner un écho.
Tel est le cas aujourd’hui avec le projet amiunique (non, ce n’est pas un site de rencontre pour trouver un seul ami pour la vie  : Am I unique ? signifie  : « Suis-je unique  ? »).
Nous sommes pistés, traqués, espionnés, piégés, profilés… d’accord, tout le monde en a désormais « entendu parler ». Mais que sait-on de nous au juste lorsqu’on va jeter coup d’œil sur un site web  ?
Il existe déjà des moyens d’en avoir une idée, par exemple dans Firefox, de nombreux outils de développement proposent des fonctionnalités pour voir ce qui se passe sous les jupes de la connexion. Mais le site amiunique.org en facilite l’accès et explique de quoi il retourne.
On découvre ainsi que cette quantité importante d’informations permet le plus souvent de faire de vous un utilisateur « unique »
— Ah j’en vois qui se rengorgent de n’être pas comme tous les autres et qui sont tout fiers de se distinguer du supposé troupeau des internautes…[1]
Mais ne vous réjouissez pas trop vite, écoutez un peu ce que nous dit Benoît Baudry et voyez comment tout au contraire se fondre dans une masse d’empreintes numériques similaires pourrait être un moyen de ne plus être unique, donc de risquer moins d’être pisté  !

Bonjour, pouvez-vous vous présenter brièvement  ?
baudry.pngJe suis chercheur depuis 2004 dans le domaine du génie logiciel. J’ai beaucoup travaillé sur des outils et algorithmes pour améliorer les activités de test logiciel dans le domaine des systèmes embarqués. Cette activité s’est ensuite élargie pour traiter de problèmes d’analyse de programme. Depuis février 2013 je coordonne un projet de recherche européen (DIVERSIFY) sur le thème de la diversification du logiciel pour faire des applications web plus robustes.
Dans ce contexte, nous avons démarré une activité sur le browser fingerprinting, c’est-à-dire les empreintes, les traces numériques que laissent nos plateformes quand nous nous connectons avec nos navigateurs.
La petite équipe qui se consacre à amiunique.org et aux technologies anti-fingerprint comprend un doctorant et bénéficie du conseil scientifique et technique de deux chercheurs en sécurité et génie logiciel.

Il n’est pas si fréquent qu’un labo de recherche universitaire entame un projet qui peut toucher un assez vaste public et potentiellement l’ensemble des utilisateurs du Web. Alors pourquoi s’intéresser au fingerprinting  ?
Tous nos travaux de recherche sont inspirés par des problèmes réels rencontrés lors de la construction de systèmes logiciels. La nouveauté dans ce cas tient sans doute au fait que le problème ne touche pas seulement les développeurs de logiciels, mais que tout internaute peut se sentir concerné.
Dans le cadre de DIVERSIFY, nous étudions la diversité logicielle et la manière dont elle peut être exploitée, voire amplifiée par des procédures automatiques. L’idée de ce projet c’est que l’augmentation de la diversité logicielle augmente également la résilience et la sécurité des applis webs.
Par ailleurs, nous avons découvert que dans le cas du browser fingerprinting la très grande diversité et la richesse de l’écosystème web sont devenues un problème pour la vie privée  : cet écosystème très très riche permet à chacun de disposer d’une plateforme qui correspond parfaitement à ses envies et à son confort, mais c’est ce même phénomène qui rend chaque plateforme unique et donc traçable. La question qui nous a alors intéressés est la suivante  :

Peut-on exploiter la diversité qui est à l’origine du problème de fingerprint pour lutter contre le traçage, en modifiant automatiquement et régulièrement la plateforme logicielle d’un internaute  ?

La première étape pour répondre à cette question consiste à étudier de près la diversité des plateformes qu’on peut trouver sur le web, ce qui nous a amené à développer le site amiunique.org

Bon alors de quoi s’agit-il au juste  ? Pourquoi devrais-je me demander si je suis unique  ? C’est inquiétant d’être unique sur le Net  ?

Une première remarque à propos de l’unicité  : quand le site affiche « Êtes-vous unique  ? Oui  ! », ce qu’il faut comprendre c’est que la plateforme logicielle (navigateur, OS, polices, plugins, etc.) que vous avez utilisée pour aller sur le site est unique parmi toutes celles observées jusqu’à présent. 

Un clic pour essayer…

test_empreinte.png

et voici le résultat  :

unique.png
Quand vous visitez un site web, celui-ci peut facilement récolter un grand nombre d’informations à propos de votre plateforme. Certaines de ces informations sont systématiquement fournies au site web par le navigateur (user agent et en-têtes http), et pour le reste le serveur peut interroger les interfaces Flash, JavaScript et toute autre interface offerte par le navigateur et ses plugins.

Une longue liste de données que l’on peut récolter… (cliquer pour agrandir)

Am_I_unique__2014-12-23_14-32-33.png

Le problème d’avoir une plateforme unique c’est que les sites marchands peuvent personnaliser leur contenu en fonction de la plateforme (pratiques tarifaires en fonction des clients ou publicités ciblées). Par exemple, les sites peuvent varier les prix en fonction de la localisation de l’internaute, déduite approximativement par l’adresse IP (voyez cet exemple), ou en fonction du système d’exploitation (un autre exemple). Une étude a montré que le site de voyages Orbitz propose des prix plus élevés aux utilisateurs de Mac OS (exemple d’Orbitz).

Mais ce que vous proposez de faire, ça commence bien comme du pistage non  ? Vous voulez qu’on vous donne toutes les informations sur notre navigateur pour votre recherche, vous êtes sympathique avec votre bonne tête de nerd barbu mais comment puis-je avoir confiance  ? Et puis vous allez faire quoi de cette bientôt énorme base de données récoltées, mmh  ? 

La politique de confidentialité d’amiunique.org établit très clairement ce qui advient des données récoltées  : elles sont stockées sur une machine sécurisée et nous les utilisons à des fins d’analyse statistique. Par ailleurs, nous ne récoltons absolument aucune information qui nous permette de relier une empreinte à une personne, les donnée sont donc anonymes par construction. Les analyses statistiques d’empreintes réelles sont essentielles pour établir des procédures qui modifient automatiquement la plateforme d’un internaute de manière réaliste. Dans cet objectif, 2 défis à relever  : réussir à modifier la plateforme de manière transparente, mais suffisamment pour changer l’empreinte  ; modifier la plateforme tout en la faisant ressembler à une vraie plateforme pour éviter d’être repéré comme un usager qui essaie de se cacher.

Quelle est selon vous la masse critique d’empreintes collectées qui vous permettra de passer à la phase suivante du projet  ?

Il est important pour nous de rassembler un maximum d’empreintes pour que le verdict que nous rendons aux visiteurs (oui / non vous êtes unique) soit vraiment significatif. À l’échelle du Web, être unique parmi quelques dizaines de milliers d’internautes, ce n’est pas forcément très impressionnant, alors qu’être unique parmi quelques millions c’est déjà plus surprenant. Pour nos travaux futurs sur le brouillage c’est surtout important de récupérer une très grande diversité d’empreintes (diversité géographique, diversité de navigateur, polices, etc.). Un échantillon étendu et diversifié nous permettra d’identifier quelles sont les caractéristiques les plus discriminantes, qui devront être la cible principale pour le brouillage.

goofy-inquiet.jpget euh… je ne risque rien si je “triche” en envoyant finalement des données trompeuses  ? C’est bien légal ça  ?

Il n’y a rien d’illégal à modifier/changer/envoyer des fausses informations. Cependant, deux problèmes peuvent se poser avec les extensions de navigateurs qui renvoient de fausses informations dans le user agent (par exemple User agent switcher).
Le premier vient du fait que les informations que vous envoyez à un serveur sont censées être utilisées pour vous renvoyer une page web qui est parfaitement adaptée à votre navigateur et à sa configuration. Si vous mentez, la page web peut présenter de nombreux défauts et certaines fonctionnalités peuvent ne pas être opérationnelles.
Le second problème vient du fait que si vous mentez, il se peut que votre empreinte soit incohérente et cela vous rend tout de suite identifiable. Par exemple, sur une des empreintes récoltées sur amiunique, le navigateur annonce dans son User Agent qu’il tourne sous Windows alors que le moteur de rendu JavaScript nous indique que la machine en question est un Mac. Cette configuration qui n’est pas censée exister dans la réalité vous rend identifiable car vous serez une des seules personnes au monde à avoir cette configuration incohérente.
Ce n’est donc pas illégal de mentir, mais ça peut engendrer des problèmes à la fois liés à la navigation et au traçage par empreinte.

Par ailleurs, il n’y a rien d’illégal à modifier charger / supprimer des nouvelles polices à chaque lancement de votre navigateur ou à utiliser régulièrement une version différente d’un navigateur.
Nous pensons qu’un avantage de *modifier la plateforme* (plutôt que de renvoyer de fausses informations) c’est qu’on ne prendra pas le risque d’être identifié comme un menteur ou comme une plateforme qui tente d’envoyer des données trompeuses.

C’est astucieux tout ça mais vous ne craignez pas que ceux qui nous pistent trouvent une parade à votre dispositif  ?

Certainement et c’est toute la difficulté de tout dispositif pour la vie privée  : dès qu’un nouveau dispositif apparaît, il fixe également les nouvelles barrières à franchir pour ceux qui veulent nous pister. Ce que nous espérons surtout c’est que ce genre de mécanisme rende le pistage plus difficile et plus coûteux.

Est-ce qu’on peut espérer que cette expérience “de laboratoire” aura une utilité pour nous les internautes concernés par le pistage de nos empreintes  ? Pour votre équipe c’est un intéressant objet de recherche, mais sous quelle forme finale pourrait aboutir votre projet pour la famille Dupuis-Morizeau[2]   ?

Nous l’espérons vraiment. Pour l’instant, il faudrait idéalement que la famille Dupuis-Morizeau ait des PC sous Linux, et dans ce cas nous visons une solution qui puisse être téléchargée et utilisée à la place du navigateur standard. En gros, ça devrait être un conteneur qui isole le navigateur et tous les éléments de plateforme, qui est lancé à chaque fois que quelqu’un veut naviguer sur Internet. Au lancement de ce conteneur, un navigateur, des polices, des plugins, voire quelques éléments de configurations système sont sélectionné aléatoirement, assemblés et démarrés. L’internaute peut alors naviguer avec une plateforme différente de celle utilisée la dernière fois.

Bon, on y voit un peu plus clair et ce projet a de quoi intéresser. Que peuvent faire les lecteurs de cet article s’ils souhaitent contribuer  ?

Distribuer l’URL pour augmenter le nombre d’empreintes c’est déjà une énorme contribution. Toute idée de forums internationaux pour augmenter la diversité des empreintes est aussi tout à fait bienvenue. Enfin, le code du site est open source et nous serions ravis d’avoir des contributions à ce projet sous forme de traduction de pages, revue de code (architecture du site, sécurité, etc.) ou toute idée pour mieux valoriser les données auprès des visiteurs.

amiunique_geektionnerd.png

Liens

Notes

[1] Si vous pensez que les internautes moyens sont Mme Michu, une dinde ménopausée, et son mari tonton Roger, que ses gros doigts de pêcheur de brochet empêchent d’appuyer sur la bonne touche, cet article n’est pas pour vous.

[2] L’authentique Mme Michu a demandé qu’on cesse de la mentionner. Le Framablog a décidé d’employer désormais l’exemple des Dupuis-Morizeau, une sympathique famille recomposée qui vit à Rouen en Normandie.

je lis des livres et mange des nouilles.

13 Réponses

  1. thomas Piette

    C’est inquiétant. n’y a t-il pas de solution?

  2. Il y a des erreurs je suis Windows 7 et le site m’affiche comme étant sous Windows XP:
    “Mozilla/5.0 (Windows NT 5.1; WOW64; rv:34.0) Gecko/20100101 Firefox/34.”

  3. Pas de grosse différence vis à vis de panopticlick de l’EFF.

    Étonné d’une chose dans les résultats: ne pas fournir de User Agent donne un résultat < 0.1%.
    L’extension UAControl le permet. Ca veut dire que parmi les testés, très peu l’utilisent. C’est pourtant un outil clé contre le traçage.

    Plutôt que de me fondre dans la masse, j’envoie aussi peu d’infos que possible. Donc oui, je suis perçu comme qqn «essayant de se cacher»… mais je ne suis pas le seul à m’y essayer.

  4. @a la FAQ dit ceci à propos de amiunique / panoptik :

    What is the difference between amiunique and https://panopticlick.eff.org?
    amiunique has shares some goals with panoticlick, but it provides a number of novelties:

    – amiunique implements the most recent techniques for fingerprinting, including webGL and canvas
    – amiunique provides more information to the users, including global statistics, as well as a concise summary of the main characteristics of a browser
    – amiunique is open source and available on Github

    (ceci pour information)

  5. Pour m’amuser, voir tout ce qui peut être récupérable via JavaScript et faire une application utile pour ceux sous B2G (+/- Firefox OS), j’ai démarré un petit projet (libre) : http://spanti-nicola.legtux.org/fr/
    Même des informations sur la batterie sont récupérables sans approbation de l’utilisateur !

    Pour ceux qui est des solutions, il y en a pas mal. Une liste bien incomplète est disponible sur mon site web : http://spanti-nicola.legtux.org/fr/
    Pour le Web, HTTPS-everywhere + AdBlock Edge + NoScript/LibreJS + Self destructing cookies sont efficaces. Il y a aussi le Tor Browser Bundle et pour Android, il y a Orbot (Tor) + Orweb + AdAway.

  6. libre fan

    Sujet et interview Intéressants, merci!

    C’est bien, le site amiunique fonctionne aussi sans JS et on se rend compte alors en comparant les résultats sans et avec JS qu’on se fait certes remarquer mais que les trackers et malfrats ont accès à bien moins de données. Donc, NoScript est indispensable. Avec NoScript ils ne voient même si on a Adblock ou non 😆

    Youpih, je suis presque unique (sur le petit tas d’internautes, il n’y a pas encore beaucoup de monde qui est passé par là) avec à la fois Firefox en version beta et GNU/Linux 🙂

    Je m’en vais essayer avec une autre distribution et un navigateur un tout petit peu différent. Mais le User-Agent ne donne pas tant de détails.

    En tous cas, je trouve que le site et le travail sont plus intéressants que le panoptick de l’EEF qui en plus s’en fout du Libre (dans les grandes lignes).
    Ça nous donne aussi l’espoir de ne pas avoir à nous déguiser tous en Windows avec Firefox 3.5 et Flash beurk pour passer inaperçu 😉 — la honte que ce serait, wow

    @RyDroid: c’est une bonne initiative (et sur LegTux, c’est sympa) mais il me semble qu’il faut expliquer un peu plus (dans un autre article), et donner des instructions précises, autrement ça reste abstrait pour les gens.
    En passant, Android n’est pas du tout libre (vu sur ta page d’accueil), l’OS exploite simplement le noyau Linux qui est le seul truc libre (ou à peu près, selon la présence de tel ou tel firmware). Où l’on voit que sans GNU, il manque décidément la liberté.

  7. Bonjour,

    L’initiative me semble intéressante, mais il y a des choses que je ne comprends pas. Si la première fois que je suis connecté j’apparais comme un utilisateur unique, pourquoi lors d’une deuxième connexion, j’apparais toujours unique ? Comment est-il possible de savoir s’il s’agit d’une seconde personne ou de la même ?

    Et puis, pour le fait d’envoyer des informations fausses au site. Il est dit que si l’on envoie des informations incohérentes, nous serions toujours détecté car nous serions les seuls à avoir cette configuration incohérente. Mais si tout le monde avait cette configuration incohérente, pour “mentir” aux sites. Nous deviendrons par la suite invisible aux yeux des sites, non ?

    Merci de m’éclairer 😉

  8. Bonjour nairolf

    Nous indiquons sur la page d’accueil que “nous installerons un cookie sur votre navigateur pour 4 mois.” Si vous autorisez les cookies sur votre machine et que vous revenez plusieurs fois sur le site, nous prenons votre empreinte à chaque visite, mais si elle n’a pas changé nous ne la stockons qu’une fois et vous indiquons que vous êtes toujours unique. Ce mécanisme nous permet également d’étudier l’évolution des empreintes des internautes qui reviennent.
    Pour le second point : en effet si tout le monde avait la même configuration, même incohérente, l’empreinte deviendrait inexploitable pour le traçage. La difficulté est de trouver cette configuration unique que tout le monde accepte d’utiliser.

  9. bonjour,

    Le fingerprinting est effectivement lourd de conséquence et il est heureux que des développeurs travaillent à des contre-mesures, merci à eux.

    Une solution ne serait-elle pas un sous-système encapsulé qui correspondrait à une distribution grand-public qui viendrait d’être installée (l’équivalent d’un live-cd Ubuntu par exemple) et n’aurait pas accès aux données de l’utilisateur? L’équivalent d’un navigateur tournant dans une machine virtuelle, mais sans consommer autant de ressources. Le cache de ce sous-système pourrait alors être purgé à chaque session.

  10. @Desidia,

    Le problème de la défense par isolation reste toujours le même, quelque soit le système concerné : le coût de l’isolation n’est-il pas plus grand que le bénéfice ?

    Les systèmes d’exploitation des centrales nucléaires ne sont pas totalement isolés du réseau (Internet) alors que leur sécurité est critique…

    Un journaliste qui communique avec sa source devrait se connecter depuis un live-cd à un point d’accès banalisé (wifi de bibliothèque ?) en rebondissant sur 1 ou 2 VPN et en chiffrant les échanges et fichiers.

    Mais pour ma prise d’info du dimanche matin, je veux pouvoir enregistrer facilement des fichiers, peut-être garder mon historique de navigation et ne pas taper les mots de passe pour des sites non sensibles… et encore je suis sensibilisé au problème, alors imaginez M Dupuis-Morizeau…

    Je connaissais pas les dernières avancées en matière de fingerprinting (polices installées, mais ça à l’air de nécessiter flash le banni, rendus canvas et webGL… bien que je doute que ces dernières soient mises en œuvre très couramment).
    De toute façon, il va bientôt falloir altérer sa propre signature visuelle dans la rue pour éviter d’être traqué vu les dernières avancées de la reconnaissance faciale et comportementale (cf. les algos de fb qui reconnaissent super bien les gens et ceux de ggl qui savent décrire les images [et donc les situations] + cette boite qui promet des chips low cost embarcables directement sur les camera pour faire tout ça… le maquillage anti-reco de Ploum bientôt à la mode ?). 2020, début du tracking urbain ?

  11. Cabernet138

    “Les systèmes d’exploitation des centrales nucléaires ne sont pas totalement isolés du réseau (Internet) alors que leur sécurité est critique…”

    ??? D’où vient cette affirmation … (pas de source indirecte SVP, une source directe et fiable autant que possible)

    Question corollaire : c’est quoi “un système d’exploitation de centrale nucléaire” ?

    Merci par avance.

  12. L’empreinte et le traçage, tellement d’actualité en ce moment, depuis que la CNIL contraint les webmaster à prévenir les internautes des cookies qu’ils déposent sur leur ordinateurs ou navigateurs.

  13. @Cabernet138, je n’ai pas de source directe ou fiable. J’ai employé le terme “système d’exploitation de centrale nucléaire” au sens global de l’ensemble de systèmes d’information qui permettent d’exploiter la-dite centrale (les firmware machine, l’ensemble du réseau de communication interne, les systèmes de supervisions, etc). Je ne suis nullement un expert dans le domaine. Je sais seulement qu’il y a des parties isolées et d’autres connectées et que la capacité d’une équipe de malfaiteurs à altérer le fonctionnement ne dépendrait pas fondamentalement de la connexion à Internet ou pas, mais plus des gens qui ont designé le système et surtout de ceux qui l’exploitent (et naturellement des procédures qu’ils suivent).