Le fingerprinting canvas est une technique de fingerprinting de navigateur qui dessine du texte ou des graphiques dans un élément canvas HTML5, lit les données de pixels résultantes et les hache en un identifiant. La sortie dépend du navigateur, du système d'exploitation et du matériel graphique, et non de la connexion réseau. Passer à une nouvelle adresse IP de proxy ne change donc pas un fingerprint canvas.
Les chercheurs Keaton Mowery et Hovav Shacham ont décrit la technique en 2012 dans un article intitulé "Pixel Perfect: Fingerprinting Canvas in HTML5." Une note d'orientation du W3C souligne qu'un fingerprint de navigateur ne peut généralement pas être effacé ou réinitialisé comme le peuvent les cookies.
Comment fonctionne le fingerprinting canvas
- Dessiner : Un script rend du texte dans une police et une taille choisies, avec des couleurs de fond.
- Lire : Il exporte les pixels du canvas, par exemple avec
toDataURL(), qui renvoie l'image sous forme d'URL de données. - Hacher : Il hache les données de pixels encodées. Les différences dans le matériel graphique et les pilotes produisent des hachages différents sur différents appareils.
- Détectable : Le W3C classe cela comme un fingerprinting actif car il exécute du code sur le client, ce qui le rend potentiellement détectable là-bas.
Comment les navigateurs le limitent
- Firefox : Ajoute des données aléatoires aux images canvas lorsqu'un site les lit. Cette protection est activée par défaut dans la navigation privée et dans la protection stricte contre le suivi amélioré.
- Tor Browser : Avertit les utilisateurs lorsqu'un site essaie de lire des données canvas et peut renvoyer des données d'image vides.
- Extensions de blocage : Des outils tels que Privacy Badger peuvent bloquer les scripts de fingerprinting canvas provenant de serveurs tiers, mais pas les scripts fournis par le site lui-même.
Comment les fingerprints canvas sont utilisés
- Suivi : Le W3C indique que le fingerprinting de navigateur peut corréler l'activité de navigation d'un utilisateur au sein et entre les sessions, et peut suivre les utilisateurs sans transparence ni contrôle.
- Adoption : Une mesure de Princeton et KU Leuven en 2014 a trouvé que le fingerprinting canvas était présent sur 5 % des 100 000 meilleurs sites. Les deux principaux fournisseurs en ont causé 97 %. Une nouvelle mesure en 2016 a révélé que le nombre de traqueurs distincts l'utilisant avait plus que doublé.
- Sécurité : Le W3C note également que le fingerprinting de navigateur peut être utilisé comme mesure de sécurité, par exemple comme moyen d'authentifier l'utilisateur.