web-dev-qa-db-fra.com

Pourquoi Tor est-il plus sûr qu'un proxy?

Si j'utilise un routeur Tor pour naviguer sur Internet, mon trafic doit quitter le réseau Tor via un nœud de sortie. Apparemment, le nœud de sortie peut voir les données envoyées à l'origine.

  1. Est-ce vrai?
  2. Si un adversaire voulait me désanonymiser, ne devrait-il pas simplement assigner le propriétaire du nœud de sortie ou le pirater?
  3. Cela signifie-t-il qu'un proxy est à peu près aussi sûr, car ce qui précède s'applique aux deux?
24
DCIndieDev

Dans Tor , l'utilisateur (vous) choisit un chemin aléatoire à travers plusieurs nœuds pour ses données. Le premier nœud du chemin connaît votre adresse IP, mais pas ce que vous envoyez ni où. Le dernier nœud ("nœud de sortie") connaît l'adresse du serveur cible et voit les données (sauf si SSL est utilisé, bien sûr), mais pas votre adresse IP . Chaque nœud du chemin ne connaît que les adresses des nœuds précédent et suivant du chemin.

Si un gouvernement a l'intention de percer la vie privée de Tor, alors sa meilleure chance est de configurer et d'exploiter un grand nombre de nœuds (qui, bien sûr, pas disent "fournis par votre gouvernement amical" ). Si votre ordinateur choisit au hasard un chemin qui commence par un nœud contrôlé par le gouvernement et se termine par un autre nœud contrôlé par le gouvernement, les deux nœuds peuvent corréler leurs données assez facilement et révéler à la fois votre adresse IP et la cible serveur (et données envoyées, si aucun SSL). La corrélation est simple car si le chiffrement masque le contenu des données, il ne masque pas le longueur. Si le nœud A voit une demande de 4138 octets entrer dans le réseau Tor à partir de votre IP, et le nœud B voit une demande de 4138 octets dans la seconde qui suit, sortant du réseau Tor et destiné au serveur www.example.com, puis le nœud A et le nœud B, en rassemblant leurs données, déduiront que votre IP a été impliqué dans une communication avec www.example.com.

Il peut facilement être prouvé que si la partie hostile n'écoute pas ou ne détourne pas les nœuds d'entrée et de sortie, votre confidentialité est préservée. Mais si elles faites, alors l'intimité s'évapore comme une brume matinale sous le soleil de midi.

40
Thomas Pornin
  1. Non, le nœud de sortie ne peut que déchiffrer le message et faire la demande, mais il ne sait pas où se trouve l'hôte d'origine, le seul nœud qui sait où se trouve la personne est le deuxième nœud. Cela est dû au cryptage en couches utilisé par Tor. Chaque nœud ne connaît que le saut suivant et précédent, mais pas tout le chemin.
  2. Non à cause de 1
  3. Non à cause de 1

Le fonctionnement de Tor est décrit dans l'un des articles de blog sur ce site Web:

http://security.blogoverflow.com/2012/04/tor-exploiting-the-weakest-link/

9
Lucas Kauffman

Je voudrais vous indiquer cette réponse ici qui décrit en termes simples comment fonctionne Tor.

Le nœud de sortie n'a aucune idée d'où proviennent les données, c'est le point entier de Tor. La clé de Tor réside dans les multiples couches de cryptage que les données traversent lors de leur parcours sur le réseau Tor.

L'utilisation d'un proxy, d'autre part, implique une connexion directe entre votre machine et le serveur proxy. Compromettre un proxy peut révéler assez rapidement qui y est connecté.

5
user10211

Je sais que cela a déjà été répondu, mais beaucoup de détails importants ont été omis.

Fonctionnement du routage des oignons

Le routage de l'oignon est une technique d'anonymat dans laquelle un chemin est choisi au hasard à travers un cluster de serveurs, de sorte que chaque connexion emprunte un itinéraire différent. Les relais spécifiques pour la garde, le milieu et la sortie sont choisis au hasard par le client Tor. Le chemin de la garde à la sortie s'appelle le circuit, et le client Tor s'en souvient. La garde est choisie une fois et reste la même pendant longtemps (comme expliqué ci-dessous), tandis que le milieu et la sortie changent à intervalles périodiques (soit une fois toutes les dix minutes, soit lorsqu'une nouvelle connexion est établie). Le chemin imprévisible et le grand nombre de relais à choisir améliorent considérablement l'anonymat.

How Tor works
(source: torproject.org )

Lorsque vous envoyez des données via Tor, les données sont cryptées avec trois clés. Chaque couche spécifie le relais suivant à utiliser (tel que choisi par votre client au hasard):

  • Une application, comme Tor Browser, demande une page Web via Tor et le dit au client. Cette demande est effectuée sur votre réseau local à l'aide du protocole SOCKS5.
  • Le client Tor crypte les données avec trois clés et partage chaque clé avec un relais aléatoire différent. L'adresse du relais suivant est également chiffrée dans chaque couche. Celui-ci est ensuite envoyé au garde.
  • Le garde reçoit des données et dépouille la troisième couche, à l'aide de sa clé. Il transmet les données au relais spécifié dans la troisième couche, le relais du milieu.
  • Le relais du milieu reçoit des données et dépouille la deuxième couche, à l'aide de sa clé. Il transmet les données au relais spécifié dans la deuxième couche, la sortie.
  • La sortie reçoit des données et supprime la (première) couche finale, à l'aide de sa clé. Il vérifie le site de destination et lui transmet les données désormais entièrement décryptées.
  • Le site de destination reçoit les données et envoie une réponse à l'adresse IP d'origine, la sortie.

Maintenant, le trafic a été envoyé avec succès vers sa destination, mais il doit revenir. Les relais Tor gardent quel relais communique avec lui en mémoire, donc quand il reçoit une réponse de ce relais, il sait où l'envoyer. De cette façon, le relais du milieu sait que le gardien lui a demandé d'envoyer des données à la sortie, et il s'en souvient donc lorsque cette même sortie lui rend des données, il peut les transmettre au gardien:

  • La sortie reçoit la réponse, ajoute la destination du relais précédent (le milieu), la chiffre avec sa clé et l'envoie au relais du milieu.
  • Le relais du milieu le reçoit, ajoute la destination du relais précédent (le gardien) et ajoute une autre couche de chiffrement à l'aide de sa clé avant de l'envoyer au garde.
  • Le gardien reçoit cela et ajoute une troisième couche de cryptage avec sa clé avant de vous donner les données, le client Tor.
  • Le client Tor le reçoit et supprime toutes les couches de cryptage. Il donne ensuite la réponse à toute application qui le demande (comme le navigateur Tor).

C'est le concept original derrière routage de l'oignon . Tout cela se produit en une seconde ou deux.

onion routing diagram

Qui peut voir quoi?

J'ai en fait écrit cette réponse car personne n'est lié au diagramme EFF obligatoire sur Tor. Cela décrit chaque point d'intérêt et ce qu'un adversaire donné peut observer:

Tor and HTTPS

Du point de vue des relais, trois choses sont vraies:

  • Le gardien sait qui vous êtes (votre IP), mais pas ce que vous faites (votre destination).
  • La sortie sait ce que vous faites, mais pas qui vous êtes.
  • Le nœud du milieu ne sait rien de vous.

L'anonymat vient du fait qu'aucune entité ne peut savoir qui vous êtes et ce que vous faites.

Attaques d'analyse du trafic contre Tor

Pour être désanonymisé à l'aide de Tor, en supposant qu'aucune attaque directe contre vous (exploits logiciels, matériel de porte dérobée, échecs OPSEC), une entité qui sait qui vous êtes et une entité qui sait ce que vous faites doit s'entendre. Dans le diagramme, cet adversaire est appelé NSA. La ligne pointillée noire montre le partage de données, ce qui signifie que les informations de synchronisation précises peuvent être utilisées pour vous corréler. C'est ce qu'on appelle une attaque d'analyse du trafic et constitue un risque lorsque votre adversaire surveille les deux extrémités de la connexion. Tor n'a qu'une capacité limitée de se protéger contre cela, mais heureusement, c'est souvent suffisant, car il y a tellement de trafic avec lequel se fondre. Considérez la chronologie des événements suivante:

  • ISP1 voit 203.0.113.42 envoyer 512 octets chiffrés (253 non chiffrés) de données à t + 0.
  • ISP2 voit example.com recevoir une demande de 253 octets pour /foo.html à t + 4.
  • ISP2 voit example.com envoyer une réponse de 90146 octets à t + 5.
  • ISP1 voit 203.0.113.42 recevoir une réponse d'octets chiffrés 90424 (90146 non chiffrés) à t + 9.

ISP1 est tout FAI entre vous et le gardien, et ISP2 est tout FAI entre la sortie et la destination. Si tout cela peut être surveillé et que ISP1 et ISP2 sont complices, alors avec un calcul suffisant, on peut conclure que l'adresse IP 203.0.113.42 a accédé à example.com/foo.html. Tor rend cela plus difficile de plusieurs façons. Premièrement, gardes persistants réduit les chances qu'un adversaire puisse observer les étapes 1 et 4 en ajoutant un grand nombre de gardes malveillants au réseau. Deuxièmement, Tor envoie le trafic en cellules de 512 octets chacun (ou du moins auparavant. C'est 514 octets maintenant ), donc la première étape impliquerait l'envoi de 512 octets, mais l'étape 2 afficherait toujours 253 octets reçus. Troisièmement, le nombre de Hops Tor passe augmente la gigue de latence. De ce fait, chaque horodatage ultérieur différera d'un petit temps mais aléatoire. Il est donc difficile de distinguer les autres connexions qui transfèrent une quantité similaire de données à un moment similaire de votre connexion.

Il y a eu de nombreuses attaques académiques contre Tor qui reposent sur l'analyse du trafic, mais elles supposent toujours un petit monde où les latences sont toutes fixes et déterministes. Ce sont les attaques qui ont tendance à être rapportées dans les médias, bien qu'elles ne s'appliquent pas au réseau Tor actuel dans un monde où chaque réseau est plein de bruit.

Attaques d'analyse du trafic contre un proxy

Ce type d'attaque est difficile à réaliser contre Tor car un adversaire peut ne pas avoir accès à la fois à ISP1 et ISP2. Même s'ils le font, l'infrastructure de l'un d'entre eux peut ne pas être suffisante pour enregistrer des horodatages haute résolution (par exemple, en raison de la réduction des enregistrements NetFlow de granularité), et leurs horloges internes peuvent différer légèrement. Avec un proxy, cependant, cette attaque est beaucoup plus facile à réaliser. C'est un problème même si vous faites entièrement confiance au fournisseur de proxy. Considérez cette chronologie alternative des événements, où ISP1 représente le FAI du service proxy lui-même:

  • ISP1 voit 203.0.113.42 envoyer 253 octets de données à t + 0.
  • ISP1 voit le serveur proxy envoyer une demande de 253 octets à example.com pour /foo.html à t + 1.
  • ISP1 voit example.com envoyer une réponse de 90146 octets à t + 2.
  • ISP1 voit 203.0.113.42 recevoir une réponse de 90146 octets à t + 3.

Avec ces informations entre les mains d'ISP1, il devient assez facile de conclure que 203.0.113.42 a demandé example.com/foo.html. Il n'y a pas de remplissage, et pratiquement pas de gigue (car le délai est uniquement aussi long qu'il faut au service proxy pour transmettre la demande en interne). Pour cette raison, ce seul FAI sait à la fois qui vous êtes et ce que vous êtes faites, et tout ce qu'il a à faire est de connecter le fait qu'ils viennent de la même personne. Facile. C'est le principal inconvénient technique des procurations, même si leur nature souvent sommaire et leur histoire de mauvaise honnêteté sont ignorées.

5
forest

ajouter aux autres réponses

  • L'utilisation d'un proxy vous aide à masquer votre adresse IP et offre un certain niveau d'anonymat mais cela ne vous rend pas introuvable. vous pouvez être suivi en utilisant les journaux générés par le proxy.
  • Une meilleure approche serait d'utiliser un outil de commutation de proxy qui continue de changer le serveur proxy par lequel votre trafic est acheminé après des intervalles de temps fixes. un de ces outils est Commutateur de proxy
  • De cette façon, vous continuez de passer d'un proxy à un autre dans le monde entier. La plupart de ces proxys sont en place pendant un très petit intervalle de temps, donc le traçage devient très difficile.
  • Il existe des sites Web comme anonymizer.com et vtunnel.com qui vous permettent d'accéder aux sites Web bloqués (bloqués par votre administrateur ou le gouvernement chinois;)) via un proxy.
1
Shurmajee