L'essentiel en un paragraphe
Un VPN commercial utilisé seul est très loin de vous rendre « anonyme ». Un véritable anti-pistage relève de l'ingénierie système — au niveau IP, il faut colmater les fuites WebRTC / IPv6 / DNS ; votre résolveur DNS doit se trouver dans le même pays que la sortie VPN ; l'empreinte du navigateur doit « paraître ordinaire » (sans une pile d'extensions anti-empreinte) ; les empreintes TLS / TCP exigent le mode TUN pour que la pile réseau du serveur VPN prenne le relais ; il faut aussi un fournisseur VPN sans journaux, soumis à une juridiction respectueuse de la confidentialité ; enfin, les différents comptes ouverts dans le navigateur doivent être strictement isolés. Nous détaillons ci-dessous les 8 dimensions une par une.
Introduction : pourquoi un VPN n'est pas un « totem d'immunité »
L'idée répandue est la suivante : installer NordVPN / Surfshark / un WireGuard auto-hébergé, changer d'IP de sortie, et « plus personne ne peut savoir qui vous êtes ». C'est un raisonnement des années 2010. Les techniques de pistage ont depuis longtemps dépassé la « couche IP » :
- Détecter que « vous utilisez un VPN » fait partie des capacités de base du contrôle des risques (il suffit de vérifier si l'IP appartient à l'ASN d'un fournisseur de VPN — la quasi-totalité des plages de datacenter des VPN commerciaux sont déjà signalées)
- Identifier « votre ancienne IP réelle » ne demande que la couche IP — fuites WebRTC / IPv6 / DNS, contournement du CDN vers l'origine — et un seul faux pas suffit pour être marqué durablement par un cookie
- Identifier « quelle personne précise vous êtes » ne dépend pas du tout de l'IP — cela repose sur l'empreinte du navigateur, les schémas de comportement et la corrélation entre comptes
- Dans les cas extrêmes, l'entraide judiciaire (réquisitions / enquêtes transfrontalières) peut contraindre les fournisseurs de VPN à remettre leurs journaux
Autrement dit, ce qui permet de vous pister n'est pas une faille unique, mais l'intersection de N dimensions — vous devez vous protéger sur chacune d'elles, alors que le traqueur n'a besoin de réussir que sur une seule. C'est pourquoi un « anonymat complet » est quasi impossible d'un point de vue technique, alors qu'une « réduction nette de la corrélation » est atteignable — cet article vous explique comment.
① Fuites au niveau IP — votre IP réelle exposée directement
Le cas le plus classique et le plus courant. Un VPN ne prend en charge que le trafic HTTP / TCP du navigateur, mais les canaux suivants peuvent contourner complètement le VPN et transmettre directement l'IP publique de votre domicile au site distant :
1.1 Fuites WebRTC
Le WebRTC intégré au navigateur (utilisé pour les appels vidéo) interroge activement un serveur STUN pour découvrir l'IP publique qu'il voit, et JavaScript peut lire cette valeur directement. Les proxys HTTP / SOCKS n'interceptent que le TCP, alors que STUN fonctionne sur UDP et contourne entièrement le proxy en sortant par la carte réseau de votre domicile, ce qui expose votre IP réelle.
Proxy HTTP/SOCKS + navigateur → l'UDP de WebRTC sort directement par la carte réseau domestique → IP réelle exposéeProtection : Utilisez un VPN en mode TUN (Mihomo / Clash Premium / WireGuard TUN / Tailscale), qui prend en charge tout le trafic TCP+UDP sur la carte réseau virtuelle. Avec un proxy limité au navigateur, restreignez WebRTC par une stratégie plutôt que de le supprimer : stratégie d'entreprise Chrome / Edge WebRtcIPHandling = disable_non_proxied_udp ; Brave : activez « Disable Non-Proxied UDP » ; Firefox : about:config → media.peerconnection.ice.proxy_only_if_behind_proxy = true.
Testez : Utilisez notre test de fuite /leak pour vérifier si l'IP publique renvoyée par WebRTC STUN correspond à votre sortie HTTP.
1.2 Fuites liées à la double pile IPv6
Votre VPN ne fait transiter que l'IPv4, mais votre connexion résidentielle dispose aussi de l'IPv6 — le navigateur préfère sortir en IPv6 et contourne complètement le VPN. C'est une faille extrêmement courante chez les abonnés résidentiels de China Telecom.
Protection : Utilisez un VPN qui fait transiter à la fois l'IPv4 et l'IPv6, ou bien désactivez l'IPv6 au niveau du système / du navigateur. Sous Windows, modifiez le registre ; sous macOS, utilisez networksetup.
1.3 Fuites DNS (traitées à part, voir ② Couche DNS)
1.4 Contournement du CDN vers l'origine
Si un site utilise un CDN comme Cloudflare, vous atteignez en réalité l'IP d'un nœud de périphérie du CDN — mais si un attaquant découvre l'IP réelle du serveur d'origine, il peut contourner le CDN et y accéder directement. L'inverse vaut aussi pour les traqueurs : si le nœud CDN que vous atteignez est en Chine, mais qu'une ressource statique de la même session est récupérée directement depuis l'origine (non couverte par le CDN), votre IP réelle se retrouve dans les journaux d'accès du serveur d'origine.
Protection : Ce cas limite dépend surtout de la rigueur de la configuration du site visé — l'utilisateur ne peut pas faire grand-chose de son côté.
② Fuites au niveau DNS — les domaines que vous interrogez trahissent votre identité
Votre trafic IP passe par le VPN, mais les requêtes DNS peuvent encore passer par votre FAI local. La fuite peut se produire de deux façons :
2.1 Résolveur situé dans un autre pays
Votre sortie VPN est aux Pays-Bas, mais lorsque votre système envoie des requêtes DNS, le résolveur stub utilise le DNS configuré par votre fournisseur d'accès résidentiel (China Telecom). Quand le serveur faisant autorité reçoit la requête, il voit une IP source de China Telecom — ce qui révèle votre localisation réelle aux opérateurs de chacun des domaines que vous visitez.
2.2 Fuites de sous-réseau via ECS
Les résolveurs récursifs publics (le 8.8.8.8 de Google active EDNS Client Subnet par défaut) transmettent votre véritable sous-réseau /24 au serveur faisant autorité cible pour le « routage CDN selon la localisation ». Mais à cet instant, votre sous-réseau est révélé au serveur faisant autorité distant — plus précis que l'IP de sortie du résolveur, il pointe jusqu'au sous-réseau de votre propre quartier.
Navigateur → DNS du système → 8.8.8.8 → NS faisant autorité (voit l'IP du résolveur = Google) + ECS = votre sous-réseau /24 domestiqueProtection :
- Forcez votre client VPN à utiliser un DNS personnalisé — utilisez le DNS du fournisseur VPN lui-même (NordVPN / Mullvad / ProtonVPN en proposent tous un)
- Ne laissez pas les requêtes DNS fuiter hors du tunnel — le résolveur verrait alors votre IP réelle, qui ne correspondrait pas à votre trafic web et vous trahirait aussitôt. Notez que 1.1.1.1 / 8.8.8.8 sont en anycast : tant que la requête passe par le tunnel, elle aboutit près de votre sortie VPN et ne révèle rien. Le vrai problème, c'est quand le système contourne le tunnel pour les joindre directement
- Si vous choisissez malgré tout un résolveur récursif public, assurez-vous au minimum qu'il se trouve dans le même pays que votre sortie VPN
- Utilisez le DoH (DNS-over-HTTPS) pour forcer le chiffrement des requêtes DNS et empêcher toute inspection de type homme du milieu par le FAI
Testez : Notre test de fuite DNS /leak s'appuie sur son propre serveur faisant autorité et fait réellement aboutir les requêtes de votre navigateur sur notre serveur, pour vous montrer l'IP du résolveur et le sous-réseau ECS. Pour le fonctionnement détaillé, consultez le guide complet des résolveurs DNS publics.
③ Empreinte TLS (ja3 / ja4) — qui est votre client
Lors de la poignée de main HTTPS, le client envoie un paquet ClientHello au serveur, en y listant tout ce qu'il prend en charge : versions de TLS, suites de chiffrement, extensions, courbes elliptiques, etc. L'ordre exact et le contenu de ces champs diffèrent d'un client à l'autre (Chrome 124 vs Firefox 123 vs curl vs Python requests), et l'empreinte combinée qui en résulte est ce que tout le secteur appelle ja3 / ja4.
Les sites peuvent enregistrer l'empreinte ja3 / ja4 de chaque visiteur et la comparer au User-Agent — si votre UA se présente comme Chrome 124 alors que votre empreinte ja3 correspond à Python requests, il s'agit de trafic de robot ou de script. C'est aussi l'un des signaux clés utilisés par les services anti-robots comme Cloudflare et Akamai.
| Client | Caractéristiques typiques de l'empreinte ja3 |
|---|---|
| Chrome 124+ | TLS 1.3 + GREASE + liste d'extensions complète |
| Firefox 123+ | TLS 1.3 + ordre des extensions différent, sans GREASE |
| curl 8.x | Moins d'extensions, sans GREASE |
| Python requests | Empreinte nettement simplifiée |
| Go net/http | Ordre de chiffrement atypique |
Protection :
- Utilisez un vrai navigateur grand public (Chrome / Firefox / Edge) — n'utilisez pas Selenium / Puppeteer tels quels, leurs empreintes ja3 sont extrêmement reconnaissables
- Si vous avez besoin d'automatisation, utilisez undetected-chromedriver / Playwright + curl-impersonate
- N'installez pas d'extensions de navigateur « anti-empreinte » — elles rendent au contraire votre ja3 plus singulier que celui d'un Chrome ordinaire, ce qui revient à vous signaler vous-même comme utilisateur d'outils anti-pistage
④ Empreinte HTTP / du navigateur — Canvas / WebGL / polices / fuseau horaire
Les empreintes exposées au niveau de la couche application sont plus riches, et plus difficiles à contrer :
| Dimension | Méthode de lecture | Unicité |
|---|---|---|
| Empreinte Canvas | JS dessine du texte et calcule le hachage du rendu | Très élevée (différences de GPU et de rendu des polices) |
| Empreinte WebGL | Interroge le fabricant / le moteur de rendu du GPU | Très élevée |
| Empreinte AudioContext | JS génère un signal audio et lit les valeurs renvoyées | Élevée |
| Polices installées | JS détecte quelles polices peuvent être affichées | Élevée |
| Résolution d'écran + profondeur de couleur | window.screen | Moyenne |
| Fuseau horaire | Intl.DateTimeFormat().resolvedOptions().timeZone | Moyenne (mais très révélatrice en recoupement avec l'IP) |
| Langue (Accept-Language) | HTTP header | Moyenne |
| Client Hints (Sec-CH-UA-*) | HTTP header (Chrome) | Moyenne |
Piège majeur : Un fuseau horaire, une langue ou des polices qui ne correspondent pas au pays de votre sortie VPN constituent un signal extrêmement fort d'utilisation d'un VPN. Votre VPN vous fait sortir aux États-Unis, mais le fuseau horaire du navigateur est toujours Asia/Shanghai et la langue zh-CN — cela saute aux yeux.
Protection :
- « Paraître ordinaire » — n'installez pas d'extensions anti-empreinte dans votre navigateur, c'est en soi anormal. L'empreinte d'un Chrome standard, comme celle de n'importe quel utilisateur, est le meilleur camouflage.
- Séparez les usages : votre navigateur principal pour votre identité réelle, et un profil de navigateur, une VM, Tails ou Whonix distincts pour les activités où la confidentialité compte
- Gardez cohérents le pays de sortie du VPN, le fuseau horaire du système et la langue du navigateur — au minimum, ne laissez pas fuiter le signal révélateur « je suis un utilisateur chinois qui passe par un VPN américain »
- Le Tor Browser a été conçu précisément pour cela — tous les utilisateurs se ressemblent, au prix des performances
Testez : Utilisez notre test d'empreinte du navigateur /fingerprint pour mesurer le degré d'unicité de vos 14 dimensions d'empreinte.
⑤ Empreinte de la couche TCP/IP — fenêtre initiale / TTL / MTU
Avant même la couche application, des empreintes existent déjà au niveau de la couche réseau. L'implémentation de la pile TCP/IP diffère légèrement d'un système d'exploitation à l'autre :
- TTL initial : 128 par défaut sous Windows, 64 sous Linux, macOS et iOS
- Taille de la fenêtre TCP initiale : Windows 64 Ko, Linux 14600, macOS 65535
- Ordre des options TCP : chaque OS envoie les options MSS / SACK / Timestamp dans un ordre différent
- MTU : 1500 pour une connexion résidentielle classique, 1492 en PPPoE, généralement 1380–1450 dans un tunnel VPN
L'outil p0f (identification passive de l'OS) exploite précisément ces champs pour déterminer le système d'exploitation du pair sans envoyer le moindre paquet de sonde. Les sites peuvent collecter ces informations et les comparer à l'UA déclaré — si votre UA indique Safari sur Mac alors que le TTL est de 128 et que la fenêtre initiale correspond aux valeurs de Windows, vous êtes en réalité sous Windows avec un UA Mac falsifié.
La MTU peut aussi laisser fuiter l'information « vous utilisez un VPN » — comme les tunnels VPN ont généralement une MTU inférieure à 1500, le trafic se distingue nettement de celui d'une connexion native.
Protection :
- Utilisez un VPN en mode TUN : la pile réseau du serveur VPN prend le relais, si bien que l'empreinte TCP/IP vue par les sites est celle du serveur VPN, et non celle de votre client
- OpenVPN / WireGuard utilisent le mode TUN par défaut, contrairement aux proxys HTTP/SOCKS — c'est la différence essentielle
- Ne forcez pas la MTU du tunnel à 1500 pour « ressembler moins à un VPN » — l'encapsulation consomme à elle seule plusieurs dizaines d'octets, et une valeur trop élevée provoque de la fragmentation, voire un trou noir PMTUD (les gros paquets restent bloqués, les pages ne se chargent qu'à moitié). Conservez la valeur par défaut de votre client (WireGuard 1420, OpenVPN automatique)
⑥ Analyse comportementale — horaires du trafic + habitudes de saisie
C'est la dimension la plus difficile à contrer, car elle ne repose sur aucune empreinte technique, mais entièrement sur l'apprentissage automatique :
- Répartition des horaires d'accès : si vos plages de connexion quotidiennes sont les mêmes sur plusieurs comptes, c'est la même personne
- Trajectoire de la souris / vitesse de défilement / rythme de frappe : propres à chaque individu, et collectés par les banques et les systèmes antifraude
- Durée des sessions / schémas de navigation : vos habitudes de navigation sont uniques
- Caractéristiques des textes saisis : votre taux de fautes de frappe, vos préférences lexicales et votre grammaire
Protection :
- Séparez strictement les horaires d'utilisation de vos comptes — ne vous connectez pas au « compte A + compte B » en même temps ; décalez-les de plusieurs heures
- Lorsque vous avez réellement besoin d'anonymat, changez d'appareil (passez de l'ordinateur portable au téléphone / à la tablette)
- Impossible de s'en protéger entièrement, mais vous pouvez rendre la corrélation nettement plus difficile
⑦ Journaux du fournisseur VPN + juridiction
Le VPN touche ici à son péché originel. Vous comptez sur le fait que le fournisseur VPN ne conserve aucun journal, mais en réalité :
- Les fournisseurs de VPN commerciaux peuvent être rachetés (Avast a été racheté par NortonLifeLock → sa politique de confidentialité a changé)
- Un fournisseur peut collecter des journaux en secret (en 2017, PureVPN a remis des journaux d'utilisateurs au FBI alors qu'il se disait jusque-là « no-log »)
- Les injonctions judiciaires peuvent imposer la coopération — les États-Unis, le Royaume-Uni, le Canada, l'Australie et la Nouvelle-Zélande (Five Eyes) acceptent tous les enquêtes transfrontalières
- Nine Eyes = Five Eyes + Danemark / France / Pays-Bas / Norvège
- Fourteen Eyes = Nine Eyes + Allemagne / Belgique / Italie / Espagne / Suède
Critères de choix :
| VPN | Juridiction | Audit tiers | Appréciation |
|---|---|---|---|
| Mullvad | Suède (14 Eyes) | Oui (Cure53 / Assured) | Aucune adresse e-mail requise, aucun lien avec le paiement, espèces acceptées |
| ProtonVPN | Suisse (neutre) | Oui (Mozilla) | Protégé par le droit suisse, mais inscription par e-mail obligatoire |
| IVPN | Gibraltar (territoire britannique) | Oui | Comparable à Mullvad, accepte le XMR |
| ExpressVPN | Îles Vierges britanniques (BVI) | Oui (PWC) | Racheté par Kape en 2021, confiance en baisse |
| NordVPN | Panama | Oui (PWC / Deloitte) | Piratage d'un serveur en 2018, architecture repensée depuis |
| Surfshark | Pays-Bas (9 Eyes) | Oui | Même société mère que NordVPN, juridiction au sein des Nine Eyes |
Un VPN auto-hébergé offre davantage de contrôle — mais les fournisseurs de VPS (Vultr / Hetzner / DigitalOcean) conservent leurs propres journaux et peuvent eux aussi coopérer avec les enquêteurs. Un véritable anonymat exige d'acheter un VPS en espèces / en cryptomonnaie et de l'enregistrer sous une fausse identité, ce qui représente un travail d'ingénierie considérable.
⑧ Corrélation entre comptes — plusieurs comptes partageant cookies / empreintes
Après une connexion au compte A, le navigateur conserve cookies, localStorage et cache. Si vous passez au compte B dans le même navigateur, le site sait immédiatement qu'il s'agit de la même personne.
- Même empreinte + connexion à plusieurs comptes dans un court laps de temps = corrélation entre comptes
- Pistage par cookies intersites (même si les navigateurs modernes commencent à le restreindre)
- Des scripts de pistage tiers (Google Analytics / Facebook Pixel) qui relient l'activité d'un site à l'autre
Protection :
- Sous Firefox, l'extension Multi-Account Containers, qui isole les cookies et le stockage de chaque compte
- Profils multiples dans Chrome (avatar en haut à droite → Ajouter)
- Mesure extrême : faites tourner chaque compte dans sa propre machine virtuelle, chaque VM utilisant une sortie VPN différente
Tableau récapitulatif des protections
| Dimension | Mode d'exposition | Protection correspondante | Outil de détection |
|---|---|---|---|
| IP | WebRTC / IPv6 / DNS / contournement du CDN vers l'origine | Mode TUN + désactiver WebRTC + désactiver l'IPv6 | /leak |
| DNS | Résolveur dans un autre pays / sous-réseau divulgué via ECS | DNS du fournisseur VPN + DoH | /leak |
| Empreinte TLS | ja3 / ja4 révèle le client | Vrai navigateur grand public, pas d'outils anti-empreinte | Outil externe (browserleaks) |
| Empreinte HTTP | Canvas/WebGL/polices/fuseau horaire | Fuseau horaire / langue / polices cohérents avec la sortie VPN | /fingerprint |
| Couche TCP/IP | TTL / Window / MTU | Mode TUN, la pile du serveur VPN prend le relais | Outil externe (browserleaks tcp) |
| Comportement | Horaires / souris / habitudes de saisie | Décaler les horaires entre comptes + changer d'appareil | Aucun |
| Journaux VPN | Fournisseur sous injonction | Service no-log sous une juridiction respectueuse de la confidentialité | Consulter les rapports d'audit du fournisseur |
| Entre comptes | Même cookie / même empreinte | Multi-Account Containers / isolation par VM | /headers |
Conseils pratiques : de quel niveau d'anonymat avez-vous vraiment besoin ?
Avant de décider jusqu'où pousser vos protections, déterminez d'abord qui vous piste réellement:
- Annonceurs + courtiers en données (faible intensité) : uBlock Origin + refus des cookies tiers + un VPN classique suffisent pour la grande majorité des situations du quotidien
- Contrôle des risques antifraude (intensité moyenne) : ce qui précède + DNS du VPN cohérent + fuseau horaire / langue assortis + profils de navigateur isolés
- Concurrents commerciaux / robots de collecte (scrapers) (intensité moyenne à élevée) : ce qui précède + mode TUN + vrai navigateur (sans traces de Selenium) + nettoyage des cookies résiduels
- Autorités / enquêtes transfrontalières (intensité extrême) : tout ce qui précède n'est qu'un socle. Il vous faut Tor / Whonix / Tails / un VPS payé en espèces + XMR + des appareils totalement isolés
La plupart des gens n'ont besoin que des niveaux 1 et 2. Le niveau 3 et au-delà relèvent des spécialistes. N'alourdissez pas votre usage quotidien avec un anonymat dont vous n'avez pas besoin.
Pour aller plus loin
- browserleaks.com — test d'empreinte completTests WebRTC / Canvas / WebGL / TCP / ja3 au même endroit
- amiunique.org — unicité de l'empreinte du navigateurVoyez à quel point votre empreinte est unique dans la base de données de l'INRIA
- salesforce/ja3 — le fonctionnement de l'empreinte TLS
- privacytools.io — la boîte à outils anti-pistage complète
- Tor Project — le réseau d'anonymat ultime