5 points par GN⁺ 2025-11-17 | 1 commentaires | Partager sur WhatsApp
  • Technique de suivi qui attribue un identifiant unique aux visiteurs d’un site web en exploitant le cache des favicons, avec une persistance de l’identifiant même après suppression du cache ou des cookies par l’utilisateur
  • Cette méthode fonctionne même en mode privé, avec un VPN ou un bloqueur de publicités, et persiste après le redémarrage du navigateur ou du système
  • Elle génère un numéro d’identification unique à partir de combinaisons de motifs indiquant si le navigateur demande les favicons ou les charge depuis le cache
  • Les principaux navigateurs comme Chrome, Firefox, Safari, Edge ainsi que les navigateurs mobiles sont affectés par cette vulnérabilité
  • Elle met en évidence l’importance de la gestion du cache des favicons du point de vue de la sécurité des navigateurs et de la protection de la vie privée

Aperçu de Supercookie

  • Supercookie est une technique qui identifie l’utilisateur à l’aide du cache des favicons (F-Cache)
    • Les favicons sont de petites icônes de site web affichées dans la barre d’adresse du navigateur ou dans la liste des favoris
    • Pour les afficher rapidement, le navigateur les stocke dans une base de données locale distincte appelée F-Cache
  • Le F-Cache contient des informations telles que l’URL visitée, l’identifiant du favicon et le TTL (durée de validité)
  • En détournant cette structure, il est possible de créer un motif de navigateur unique en combinant la présence ou non de requêtes de favicons selon des chemins d’URL spécifiques

Modèle de menace

  • Un serveur web peut déterminer si le navigateur a déjà visité auparavant en observant s’il redemande un favicon
    • Si le favicon n’est pas dans le cache, une requête GET est envoyée au serveur ; sinon, la requête est omise
  • En combinant l’état des requêtes de favicon sur plusieurs chemins, on peut générer un numéro d’identification propre à chaque navigateur
  • Cet identifiant n’est pas affecté par les mesures classiques de prévention du suivi, comme la suppression des cookies, la réinitialisation du cache, l’usage d’un VPN ou la modification des en-têtes

Comparaison avec les cookies classiques

  • D’après le tableau, Supercookie offre une précision d’identification de 100 % et permet
    • la détection du mode privé, la persistance après suppression du cache et des cookies, l’identification entre plusieurs fenêtres, ainsi que le contournement des logiciels anti-tracking
  • Les cookies classiques, eux, ne prennent pas en charge ces capacités

Navigateurs affectés

  • Les principaux navigateurs, comme Chrome, Safari, Edge et Firefox, sont vulnérables
    • Chrome : affecté sur Windows, macOS, Linux et Android
    • Safari : affecté sur macOS et iOS
    • Edge : affecté sur Windows, macOS et Android
    • Firefox : sur certaines plateformes, une empreinte différente est générée en mode privé
    • Brave : majoritairement bloqué dans les versions récentes
  • Les anciennes versions de Brave (1.14.0) et Firefox (<84.0) sont vulnérables à cette attaque

Extensibilité et performances

  • En ajustant le nombre de chemins de redirection (N), il est possible de distinguer 2^N utilisateurs uniques
  • Plus le nombre d’utilisateurs distinguables augmente, plus le temps de lecture et d’écriture augmente lui aussi
  • Il est possible de réduire au minimum le nombre de redirections en ajustant dynamiquement la longueur de N

Méthodes de défense

  • La méthode la plus fiable consiste à désactiver complètement le cache des favicons ou à le supprimer manuellement
    • Chrome(macOS) : supprimer ~/Library/Application Support/Google/Chrome/Default/Favicons et Favicons-journal
    • Chrome(Windows) : supprimer C:\Users\username\AppData\Local\Google\Chrome\User Data\Default
    • Safari(macOS) : supprimer le contenu de ~/Library/Safari/Favicon Cache
    • Edge(macOS) : supprimer ~/Library/Application Support/Microsoft Edge/Default/Favicon et Favicons-journal

Objectif et contexte du projet

  • Ce dépôt a été conçu à des fins éducatives et de démonstration, avec pour objectif de sensibiliser à la sécurité autour des possibilités de suivi via les favicons
  • L’inspiration provient d’un article de recherche de l’University of Illinois Chicago et d’un article de heise.de
  • Le projet comprend un portail de démonstration implémenté en 2 jours dans le cadre d’une recherche personnelle

Divers

  • Le développeur est un étudiant allemand de 20 ans, intéressé par le design logiciel et la sécurité informatique
  • Le projet est publié sur GitHub et peut être exécuté dans un environnement Docker ou Node.js
  • Le sujet a été couvert par des médias majeurs comme Vice, Gizmodo, TechRadar et Schneier.com

1 commentaires

 
GN⁺ 2025-11-17
Avis sur Hacker News
  • J’ai l’impression que ce problème existe depuis longtemps. Sur Safari, il arrive souvent que le favicon d’un site s’affiche incorrectement
    Par exemple, sur Reddit, c’est le favicon de Ars Technica qui apparaît
    • Dans mon cas, l’icône Hacker News reste bloquée sur l’icône d’un site météo
      C’est toujours le cas après des mises à jour d’iOS, et ça persiste aussi sur le profil comme en mode navigation privée
    • Le cache des favicons de Safari persiste beaucoup trop longtemps
      Pour le forcer à se rafraîchir, il faut avancer l’horloge système de plusieurs années
    • Je pensais être le seul concerné, mais on dirait que le cache de l’interface utilisateur est corrompu
      Ça dure depuis des années sur mon MacBook, donc j’ai fini par abandonner
    • Sur Chrome mobile aussi, le favicon de HN s’affiche mal
    • Le même bug se produit parfois aussi sur Firefox
  • Ravi de voir que Brave a corrigé ce problème
  • Il y avait déjà eu une discussion auparavant (en 2021) — fil de commentaires associé
  • Je ne comprends pas ce que la démo en direct est censée faire
    Sur Safari iOS, le compteur va de 1 à 18 puis repart en boucle infinie avec une redirection
    • Nous avions signalé ce problème pendant nos travaux sur l’article, et il a ensuite été corrigé
    • Sur Android/Firefox, après les 18 premières étapes, mon ID unique s’est affiché, mais en appuyant sur le bouton pour réessayer, je suis retombé dans la même boucle
  • Il faudrait sans doute ajouter (2023) au titre
    • En fait, c’est peut-être plutôt (2021). Vu l’ancienneté du sujet, je me demande si ce n’est toujours pas corrigé
  • Sur Safari macOS, il arrive que les favicons soient chargés très souvent à chaque ouverture de la page Nouvel onglet
    C’est un comportement indésirable, au point que j’envisage de supprimer mes favoris ou de les enregistrer en HTML
    J’utilise surtout des fenêtres privées, et c’est Little Snitch qui m’a permis de le remarquer
  • Il y a aussi cette discussion connexe : "Tales of Favicons and Caches: Persistent Tracking in Modern Browsers" (janvier 2021, 53 commentaires)
  • J’utilise un environnement de navigation basé sur une VM non persistante
    Une combinaison qemu + cage + firefox, avec suppression de l’image à la fermeture
    C’est lent, mais plus rassurant côté sécurité. La conteneurisation est aussi possible, mais le fait que le navigateur puisse accéder au noyau hôte me met mal à l’aise
    Contrôler cela avec des politiques eBPF est trop complexe, donc j’isole simplement via une VM
    • J’ai essayé quelque chose de similaire, mais dans un environnement VM, les CAPTCHA s’affichent souvent
      Par exemple, des caractéristiques comme le moteur de rendu SwiftShader ou l’absence de polices sont détectées
      Même en essayant de masquer cela, des choses comme la manipulation du bruit du canvas sont rapidement repérées. Si quelqu’un a une solution, je serais preneur
    • Approche intéressante. Je me demande s’il existe une documentation sur ce sujet
  • J’ai moi aussi vu uniquement le compteur tourner de 1/18 à 18/18 puis la page se recharger
    J’ai eu l’impression d’avoir perdu une vingtaine de secondes
  • Dommage que le mécanisme de l’attaque ne soit pas expliqué en détail dans le dépôt GitHub, et que le lien vers l’article soit cassé