Comment suivre un internaute sans cookie ni javascript ?

par Korben -

Vous vous croyez protégé de toute forme de tracking car vous avez désactivé ou filtré le JavaScript, flash, les cookies…etc. ?

Eh bien détrompez-vous, car même si vous avez mis en place ce plugin qui permet de brouiller les pistes face à des méthodes de tracking non traditionnelles comme Panopticlik, il est toujours possible de vous suivre.

Comment ?

Et bien tout simplement en détournant l’utilisation des ETag.

Pour ceux qui ne seraient pas familiers avec ce concept, ETag est une fonctionnalité propre aux serveurs web type Apache, qui permet simplement d’identifier de manière unique un fichier (page web, image, CSS…Etc.).

Lorsque vous-vous rendez sur une page web, votre navigateur envoie au serveur Apache, l’ETag du fichier qu’il s’apprête à lui demander (et qu’il possède dans son cache). Si le numéro d’ETag du fichier présent sur le serveur est identique, cela signifie que celui-ci n’a pas changé et qu’il n’est pas nécessaire de le télécharger à nouveau. Si au contraire, le code ETag a changé, alors le navigateur récupérera la nouvelle version à partir du serveur.

  • HTTP/1.1 200 OK
    • Date: Mon, 26 Aug 2013 15:35:26 GMT
    • Last-Modified: Fri, 22 Aug 2013 15:21:41 GMT
    • Etag: “b44a244a-dba-d2a52130”

À partir de là, il devient alors relativement simple de tracker un internaute. Un genre de cookie sans cookie si vous préférez. Le bidouilleur Lucb1e a mis en ligne un code permettant de faire cela.

Pour que l’astuce fonctionne, il charge l’image qui contient le ETag, après que l’intégralité de la page soit chargée. Seule l’image contient l’ETag. Alors évidemment, toutes les infos que vous voyez apparaitre sur la page dans sa démo(Nombre de visite, date de dernière visite, texte stocké) sont des infos déjà mises en cache dans votre navigateur. Si sa démo m’indique que j’en suis à la 5e visite, il suffit que je rafraichisse la page “(F5) pour récupérer vraiment la dernière version de la page et me rendre compte que j’en suis à 6 visites.

Ce “problème” vient du fait que Lucb1e souhaite afficher les informations à l’internaute. Il aurait pu mettre à jour cette info via un JavaScript, mais il tenait vraiment à ce que tout se fasse sans JS.

Évidemment, dans la vie réelle, aucun tracker ne vous affichera ces informations donc tout ceci n’est pas vraiment un problème.

Alors, comment déjouer cette méthode de tracking ? La première solution qui vient à l’esprit est de désactiver tout simplement le cache. Pas de cache, pas d’ETag stocké, donc pas de tracking.

Une autre méthode consiste à installer cette extension Firefox : SecretAgent qui réécrit les ETag (entre autres choses) afin d’éviter tout tracking. Vous pouvez bien sûr mettre des sites en liste blanche pour leur autoriser la mise en cache des ETags.

Voilà, j’espère vous avoir éclairé sur cette nouvelle technique de suivi de l’internaute qui utilise uniquement des fonctions natives du serveur web et qui est donc totalement invisible du point de vue de l’Internaute. Impossible de savoir avec cette technique, si l’on vous traque ou pas.