← Retour au blog

C'est quoi l'empreinte WebGL ? Comment les infos de la carte graphique nourrissent l'empreinte du navigateur

Un site web lit les infos de votre carte graphique par deux chemins : en interrogeant des paramètres, et en regardant une image. En ouvrant une page de détection d'empreinte pour la première fois, beaucoup tombent des nues en voyant leur modèle de carte affiché dans la ligne WebGL Renderer : comment la page peut-elle savoir quelle carte est installée ? Ce qui est lu là n'est pas le numéro de série du matériel, mais les caractéristiques de l'environnement graphique que le navigateur expose. La moitié vient de paramètres rapportés directement par l'interface, l'autre moitié du résultat obtenu en faisant dessiner la carte puis en lisant l'image. Chaque élément seul ne suffit pas à identifier quelqu'un, mais l'ensemble forme un morceau de puzzle assez discriminant.

WebGL est l'interface graphique fournie par le navigateur. Les modèles 3D, les cartes et les graphiques des pages web s'appuient sur elle pour faire appel à la carte graphique et effectuer le rendu. La même interface livre aussi une partie de l'environnement graphique. MostMate est un navigateur anti-détection qui prépare un environnement de navigateur distinct pour chaque compte. La carte graphique et les paramètres graphiques font partie des signaux d'environnement qu'il gère.

Deux types d'informations : les paramètres rapportés et l'image dessinée

Les informations de l'empreinte WebGL se répartissent en deux catégories, aux méthodes de collecte radicalement différentes. La première, c'est la question posée. La page interroge l'interface pour connaître l'environnement graphique et obtient en réponse le fabricant de la carte, le modèle de rendu, les versions prises en charge. La deuxième, c'est le dessin. La page fait rendre à la carte une image au contenu fixe, puis lit le résultat obtenu. Les sorties des différents appareils présentent de subtiles différences. Réunies, ces deux catégories dessinent le portrait de l'environnement graphique tel que le site le voit.

Schéma du mécanisme de collecte en deux canaux de l'empreinte WebGL

Voici d'abord les champs courants d'une page de détection :

ChampContenuExemple de valeur courante
VendorFabricant de la carteGoogle Inc. (NVIDIA)
RendererModèle de renduANGLE (NVIDIA, GeForce RTX 3060)
WebGL VersionVersion de l'APIWebGL 2.0
ExtensionsListe des extensions prises en chargeUne série de noms d'extensions

Quelques détails méritent l'attention dans cette liste. Beaucoup de navigateurs affichent la même valeur Google Inc. pour le champ Vendor, le vrai fabricant se cachant entre parenthèses. La valeur du Renderer dépend de l'implémentation de chaque navigateur : une même carte NVIDIA peut être rapportée sous des formats de chaîne différents. Les différences sont encore plus nettes du côté des extensions : lesquelles sont prises en charge, et dans quel ordre, apportent chacune des informations supplémentaires.

La porte d'entrée de la lecture de ces paramètres est une extension nommée WEBGL_debug_renderer_info. Elle expose deux constantes : la chaîne du fabricant et celle du renderer, non masquées. La documentation MDN précise que cette extension est destinée au débogage et varie selon les réglages de confidentialité du navigateur. Firefox, une fois l'option resistFingerprinting activée, la désactive carrément. Autrement dit, la même carte peut ne pas rapporter la même chose selon le navigateur et la configuration de confidentialité. Gardez cette variable à l'esprit lors des vérifications.

Pourquoi la carte graphique devient-elle une caractéristique d'environnement

Le pouvoir discriminant des paramètres vient de leur combinaison, pas d'un champ isolé. Le marché des cartes graphiques est très concentré : NVIDIA, AMD, Apple et Intel couvrent à eux quatre la quasi-totalité des appareils, et le champ Renderer seul ne suffit pas à identifier une personne. Mais assemblé aux autres signaux, le pouvoir discriminant peut monter. Par exemple, sur un appareil Windows sous Chrome, l'environnement graphique exposé par WebGL correspond normalement à la configuration système et navigateur en place ; si les informations du navigateur indiquent Windows alors que l'environnement graphique présente des traits typiques de macOS, cela mérite un examen plus poussé. Si d'autres paramètres, comme le fuseau horaire, ne collent pas non plus à l'environnement attendu, la configuration globale peut afficher des signaux contradictoires.

Schéma comparant des combinaisons de paramètres graphiques contradictoires et cohérentes

L'essentiel n'est pas de randomiser chaque paramètre un par un, mais de vérifier que les signaux d'environnement se tiennent entre eux. Modifier un paramètre au hasard ne rend pas forcément l'ensemble plus cohérent. Pour les problèmes que peut entraîner la randomisation de l'empreinte, voyez pourquoi la randomisation des empreintes n'est pas sûre.

Passons à la partie dessinée. Faire rendre une image fixe à la carte puis lire la sortie relève de la même logique que le Canvas fingerprint ; l'article sur le Canvas fingerprint expliquait déjà le mécanisme des différences de dessin en 2D. WebGL, lui, passe par le pipeline 3D : le rendu traverse le pilote de la carte et les bibliothèques graphiques de bas niveau. Un GPU différent, une version de pilote différente, une implémentation navigateur différente, tout peut décaler la sortie de quelques pixels. Ces différences sont invisibles à l'œil nu. Un script, lui, les lit avec précision.

Deux précisions s'imposent. D'une part, le pouvoir discriminant des différences d'image n'est pas aussi spectaculaire que la légende le veut : entre des appareils de même modèle de carte et de même version de pilote, il peut être impossible de mesurer un écart. D'autre part, il s'agit d'une méthode de collecte distincte des informations de type paramètres, et les résultats doivent s'interpréter séparément.

Quelle différence entre WebGL, Canvas et WebGPU

Trois noms voisins, mais des objets différents. En tableau :

ParamètreObjet observéMéthode de collecte
CanvasRésultat du dessin 2DDessiner et lire les écarts
WebGLParamètres graphiques et image 3DParamètres + image
WebGPUSignaux de la nouvelle interface graphiqueParamètres + test de puissance
AudioContextSortie du traitement audioAlgorithme et lecture du résultat

La relation entre WebGPU et WebGL tient en une phrase. WebGPU est l'interface graphique de nouvelle génération que les navigateurs déploient progressivement : plus capable, aux paramètres plus larges ; l'article sur l'empreinte WebGPU détaillait les caractéristiques d'appareil qu'elle expose. WebGL reste l'interface en service la plus répandue, prise en charge par pratiquement tous les navigateurs. Les deux coexisteront longtemps, apparaissent souvent côte à côte sur les pages de détection, et méritent toutes deux un coup d'œil lors d'une vérification.

Comment vérifier votre propre empreinte WebGL

La clé : noter et comparer, pas regarder puis fermer. Trois étapes :

  1. Ouvrez une page de vérification d'IP de l'environnement ou un outil type BrowserLeaks, et repérez le bloc WebGL. Notez quatre valeurs : Vendor, Renderer, WebGL Version et le nombre d'extensions.
  2. Re testez le même environnement après un intervalle, et comparez les deux résultats. Si les paramètres passent de la vraie carte à un rendu logiciel comme SwiftShader, ou si le nombre d'extensions change nettement, l'environnement a bougé.
  3. Replacez le résultat WebGL dans la configuration d'environnement complète. Si WebGL rapporte Windows et NVIDIA, l'UA et l'OS doivent être Windows eux aussi, et fuseau horaire, langue et région de sortie IP doivent se raccorder. Un environnement normal sur chaque point isolé mais contradictoire une fois assemblé reste parfaitement visible.

Une catégorie d'alerte mérite d'être traitée à part. Si la page de détection affiche des mentions de rendu logiciel comme SwiftShader ou ANGLE (Google), c'est peut-être que l'environnement n'a pas de carte graphique du tout. Peut-être aussi que le navigateur passe par un rendu logiciel. Les vrais appareils montrent très rarement ce genre de valeurs ; dans un environnement exploité sur la durée, c'est un signal à traiter.

Comment utiliser le paramètre WebGL image de MostMate

Dans les réglages d'empreinte de MostMate, WebGL image est un paramètre qui se règle séparément. Sur la page de configuration, il voisine avec les paramètres graphiques comme Canvas. À la création ou à l'édition d'un environnement, la ligne WebGL image offre deux niveaux : Real et Noise. Real conserve la valeur réelle ; basculez sur Noise, et la sortie passe en mode bruit.

Basculez, puis regardez la ligne correspondante dans le panneau d'aperçu de l'empreinte à droite : la valeur prend la forme d'un code à six caractères. Ce code n'est pas interchangeable avec les autres paramètres ; il identifie la configuration de bruit, et le hash réellement exposé se consulte sur la page de détection de l'environnement.

Aperçu du paramètre WebGL image dans les réglages d'empreinte de MostMate

Le choix du niveau dépend du rôle que l'environnement doit jouer. Pour un environnement entretenu sur la durée, Real est conseillé : les paramètres d'une vraie carte et le comportement du pilote sont les plus difficiles à falsifier, et tant que l'environnement reste stable, inutile d'y toucher. Quand il faut préparer plusieurs environnements pour un même type d'activité, Noise fournit des sorties d'image différenciées, pour que plusieurs environnements ne rapportent pas le même visage sur le plan graphique. Choisir Noise ne veut pas dire tout reconstruire de zéro : chaque valeur du panneau d'aperçu reste affichée noir sur blanc, et la configuration se vérifie d'un coup d'œil.

La limite doit être dite clairement elle aussi. La gestion des paramètres réduit le risque de mélange d'environnements et de contradictions internes. Au-delà de WebGL, des signaux comme la résolution d'écran ou les polices sont indépendants ; la méthode pour les aligner un à un figure, avec une liste de contrôle, dans l'article sur la cohérence anti-association. Si soignée que soit une configuration, c'est la plateforme qui décide de son verdict ; cet article ne promet rien du genre « configuré, donc indétectable ».

Questions fréquentes sur l'empreinte WebGL

Un site peut-il voir le modèle exact de ma carte graphique ?

Il peut voir la chaîne de modèle du champ Renderer, à condition que le navigateur ne restreigne pas l'extension WEBGL_debug_renderer_info. Mais il s'agit d'une description graphique exposée par le navigateur, pas d'une lecture de l'identité du matériel. Firefox et d'autres navigateurs, une fois la protection de la vie privée activée, masquent ou généralisent ce type d'information.

Désactiver WebGL permet-il d'échapper au fingerprinting ?

Ce n'est pas conseillé. Les pages modernes reposent largement sur WebGL pour le rendu, et le désactiver dégrade des fonctionnalités. De plus, tous les navigateurs grand public prennent en charge WebGL : un navigateur qui ne le prend pas en charge est en lui-même un signal anormal, et se retrouve d'autant plus facilement classé à part.

L'empreinte WebGL et le Canvas fingerprint, est-ce la même chose ?

Non. Les deux exploitent des différences de rendu, mais Canvas passe par le dessin 2D, tandis que WebGL passe par le pipeline 3D et ajoute une couche de paramètres de capacités. Sur une page de détection, ce sont deux blocs distincts, dont les valeurs ne se déduisent pas l'une de l'autre.

Un navigateur anti-détection peut-il faire passer WebGL pour n'importe quelle carte ?

Cela dépend de l'implémentation de chaque produit. L'approche de MostMate consiste à proposer deux niveaux, réel et bruit, le mode bruit fournissant une sortie d'image différenciée. L'essentiel reste de rendre l'ensemble des paramètres de l'environnement cohérent entre eux, pas de changer tel champ pour telle valeur choisie au hasard.

Pour conclure

L'essence de l'empreinte WebGL, c'est le navigateur qui livre au site à la fois les paramètres de l'environnement graphique et son comportement de rendu : les paramètres répondent à « quelle est ta carte ? », l'image à « à quoi ressemble ton dessin ? ». Ce que la gestion de plusieurs comptes a à traiter n'a jamais été le fait de cacher sa carte graphique. L'important, c'est que les paramètres graphiques de chaque environnement racontent la même histoire que l'UA, le fuseau horaire et la région de sortie IP.

MostMate rassemble des paramètres comme WebGL image dans la configuration de l'environnement, gérés d'un seul endroit. Vérification et alignement en deviennent plus simples. Créer l'environnement n'est qu'un début ; c'est l'habitude de contrôle au quotidien qui fait la différence sur la durée. Pour d'autres façons de gérer les paramètres graphiques, la page d'accueil donne accès à l'ensemble ; et pour bâtir un ensemble d'environnements aux limites claires pour plusieurs comptes, vous pouvez télécharger MostMate et commencer par le premier environnement.

MOSTMATE

Gérez plusieurs comptes en sécurité, tout simplement

Commencez avec votre premier compte et utilisez MostMate pour construire des opérations multicomptes plus sûres, intelligentes et efficaces.

  • Des profils indépendants. Des identités cohérentes.
  • Automatisation par IA · État des comptes · Travail en équipe
Télécharger MostMate