L’anonymat Tor n’est pas absolu
Tor (The Onion Router) fonctionne en encapsulant votre trafic dans 3 couches de chiffrement, chacune décryptée par un relais différent. Le guard (entry node) connaît votre IP, le middle relay ne connaît rien, et l’exit node voit le trafic final non chiffré. En théorie, aucun acteur ne peut lier votre IP à votre destination.
En pratique, un adversaire qui contrôle 5-10% du réseau peut vous désanonymiser en 48h.
Le problème des guard nodes persistants
Pour éviter la guard fingerprinting, Tor utilise un système de guard rotation lente : votre client choisit 3 guards et les garde pendant 2-3 mois. Si un attaquant compromet l’un de vos guards, il peut :
- Logger tous vos horaires de connexion (timestamps)
- Corréler ces timestamps avec l’activité sur les exit nodes
- Si l’attaquant contrôle aussi des exits, il peut lier votre IP réelle à vos destinations
Statistiquement, avec 10% du réseau sous contrôle, un attaquant a ~30% de chance de contrôler au moins un de vos guards OU exits. Avec les deux, la corrélation devient triviale.
Attaque par corrélation temporelle
T0 : Alice se connecte à Tor via Guard A (contrôlé par adversaire)
Guard A note : IP = 93.184.216.34, timestamp = 14:23:08
T1 : Alice accède à un site sensible via Exit B (contrôlé par adversaire)
Exit B note : destination = whistleblower.onion, timestamp = 14:23:12
DELTA : 4 secondes (latence réseau typique)
CORRÉLATION : IP 93.184.216.34 = whistleblower.onion user
Même sans contrôler le middle relay, l’attaquant peut faire des corrélations statistiques en analysant les patterns de trafic : taille des paquets, timing des requêtes, durée des sessions.
L’attaque Sybil à grande échelle
En 2014, un groupe a ajouté 115 relais malveillants au réseau Tor (environ 6% du total). Ces relays étaient configurés pour logger les métadonnées de tous les circuits. Après 5 mois, le Tor Project les a détectés et bannis, mais ils avaient déjà collecté des téraoctets de données.
Coût estimé : $10,000/mois (loyer serveurs) pour contrôler 5-10% du réseau. C’est largement accessible pour un gouvernement ou une organisation bien financée.
Les relays Tor sont volontaires et non audités. N’importe qui peut en héberger un. La NSA, le FSB, et probablement plusieurs autres agences de renseignement opèrent leurs propres guards et exits.
Guard Discovery via timing analysis
Un attaquant peut forcer votre client Tor à changer de circuit en :
- Bloquant les guards actuels (via DDoS ou null-routing BGP)
- Forçant une reconnexion → votre client choisit un nouveau guard
- Répétant l’opération jusqu’à ce qu’il contrôle votre nouveau guard
Avec un peu de patience, un attaquant qui contrôle 10% des guards a une probabilité cumulée de > 90% de devenir votre guard après 30 rotations forcées.
Website Fingerprinting (WFP)
Même si Tor chiffre le trafic, un observateur local (ISP, VPN) peut déduire quel site vous visitez en analysant :
- Taille des paquets : chaque page web a une signature unique (images, JS, CSS)
- Ordre des requêtes : le navigateur charge les ressources dans un ordre prévisible
- Timing inter-paquets : les serveurs répondent à des vitesses différentes
Une étude de 2022 (Tao Wang, U. Waterloo) montre qu’avec un classifieur ML entraîné sur 100 sites, on peut identifier la page visitée avec 95% de précision via Tor. Les attaques récentes (2024-2025) atteignent 98% avec des Transformers.
Défenses et contre-mesures
1. Bridges (ponts obfusqués)
Au lieu d’un guard public, utilisez un bridge non répertorié. L’adversaire ne peut pas bloquer ce qu’il ne connaît pas. Problème : les bridges sont limités en bande passante et peuvent aussi être malveillants.
2. Vanguards (guards de guards)
L’add-on Vanguards ajoute des layer 2/3 guards pour compliquer les attaques de corrélation. Au lieu d’un circuit à 3 sauts, vous avez 5-6 sauts avec des guards intermédiaires.
3. Padding de trafic
Tor Browser envoie des paquets factices (dummy traffic) pour masquer les patterns. Mais c’est coûteux en bande passante et désactivé par défaut.
4. Utiliser Whonix ou Tails
Isoler Tor dans une VM dédiée empêche les fuites applicatives. Votre OS ne peut pas leaker votre IP réelle si Tor tourne dans une VM sans accès réseau direct.
Les limites fondamentales
Tor protège contre la surveillance passive (écoute de masse) mais pas contre un adversaire global actif qui peut :
- Observer à la fois l’entry et l’exit
- Contrôler une partie significative du réseau
- Injecter du trafic pour forcer des timing patterns
Si la NSA, le FSB ou Mossad vous cible personnellement, Tor ne suffira pas. L’anonymat distribué suppose qu’un seul adversaire ne contrôle pas l’ensemble du réseau. Or les agences de renseignement collaborent (Five Eyes, Nine Eyes) et peuvent combiner leurs données.
Tor + VPN : vraiment plus sûr ?
Tor over VPN : vous vous connectez d’abord au VPN, puis à Tor. Avantage : votre ISP ne voit pas que vous utilisez Tor. Inconvénient : le VPN voit votre IP réelle et peut logger.
VPN over Tor : vous vous connectez à Tor, puis au VPN via l’exit. Avantage : le VPN ne connaît pas votre IP. Inconvénient : le guard Tor connaît toujours votre IP réelle.
La vraie solution : un VPN sans logs (vérifié par audit indépendant) + Tor + bridges + Whonix + trafic padding + opsec strict. Même comme ça, un adversaire avec des ressources illimitées peut tenter une corrélation.
Conclusion : l’anonymat est un jeu de probabilités
Tor réduit drastiquement votre surface d’attaque. Passer de 1 adversaire (votre ISP) à N adversaires distribués (les relays) est un gain énorme. Mais Tor n’est pas magique.
Si vous êtes un journaliste sous dictature, un lanceur d’alerte face à une corporation, ou un activiste ciblé par un État, sachez que :
- Tor ralentit l’adversaire, ne l’arrête pas
- Un guard compromis + un exit compromis = désanonymisation
- Les attaques de corrélation fonctionnent avec 5-10% du réseau sous contrôle
- La NSA/FSB contrôlent probablement plus que ça
L’anonymat absolu n’existe pas. Tor est un outil de réduction de risque, pas une garantie.