it-swarm.dev

Perché Tor è più sicuro di un proxy?

Se uso un router Tor per navigare su Internet normale, il mio traffico deve uscire dalla rete Tor attraverso un nodo di uscita. Apparentemente il nodo di uscita può vedere i dati inviati originariamente.

  1. È vero?
  2. Se un avversario volesse deanonimizzarmi, non dovrebbe semplicemente invocare il proprietario del nodo di uscita o hackerarlo?
  3. Ciò significa che un proxy è altrettanto sicuro, poiché quanto sopra vale per entrambi?
24
DCIndieDev

In Tor , l'utente (tu) sceglie un percorso casuale attraverso diversi nodi per i suoi dati. Il primo nodo nel percorso conosce il tuo indirizzo IP, ma non quello che invii o dove. L'ultimo nodo ("nodo di uscita") conosce l'indirizzo del server di destinazione e vede i dati (a meno che non venga utilizzato SSL , ovviamente), ma non il tuo indirizzo IP . Ogni nodo nel percorso conosce solo gli indirizzi dei nodi precedente e successivo nel percorso.

Se un governo è intenzionato a svelare la privacy di Tor, allora la sua migliore possibilità è quella di configurare e gestire molti nodi (che, ovviamente, non non dì "fornito dal tuo governo amichevole"). Se il tuo computer sceglie casualmente un percorso che inizia da un nodo controllato dal governo e termina con un altro nodo controllato dal governo, entrambi i nodi possono correlare i loro dati piuttosto facilmente e rivelare sia il tuo IP che il server di destinazione (e i dati inviati, se non SSL). La correlazione è semplice perché mentre la crittografia nasconde i contenuti dei dati, non nasconde la lunghezza . Se il nodo A vede una richiesta di 4138 byte che entra nella rete Tor dal tuo IP e il nodo B vede una richiesta di 4138 byte entro il secondo successivo che esce dalla rete Tor e destinata al server www.example.com, quindi il nodo A e il nodo B, raccogliendo i loro dati, dedurranno che il tuo IP è stato coinvolto in una comunicazione a www.example.com.

Si può facilmente dimostrare che se la parte ostile non intercetta o dirotta i nodi di entrata e di uscita, la privacy viene mantenuta. Ma se lo fanno , la privacy evapora come una nebbia mattutina sotto il sole di mezzogiorno.

40
Thomas Pornin
  1. No, il nodo di uscita può solo decrittografare il messaggio ed effettuare la richiesta, ma non è a conoscenza di dove si trova l'host originale, l'unico nodo che sa dove si trova la persona è il secondo nodo. Ciò è dovuto alla crittografia a strati utilizzata da Tor. Ogni nodo conosce solo l'hop successivo e precedente, ma non l'intero percorso.
  2. No a causa di 1
  3. No a causa di 1

Come funziona Tor è descritto in uno dei post sul blog proprio su questo sito:

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

9
Lucas Kauffman

Vorrei indicarti questa risposta qui che descrive in termini semplici come funziona Tor.

Il nodo di uscita non ha idea da dove provengano i dati, questo è l'intero punto di Tor. La chiave di Tor sono i molteplici livelli di crittografia che attraversano i dati mentre viaggiano attraverso la rete Tor.

L'uso di un proxy, d'altra parte, implica una connessione diretta tra la macchina e il server proxy. Compromettere un proxy può rivelare abbastanza rapidamente chi è connesso ad esso.

5
user10211

So che è già stata data una risposta, ma molti dettagli importanti sono stati esclusi.

Come funziona il routing della cipolla

Il routing delle cipolle è una tecnica di anonimato in cui un percorso viene scelto in modo casuale attraverso un cluster di server, in modo tale che ogni connessione segua un percorso diverso. I relè specifici per la guardia, il centro e l'uscita sono scelti in modo casuale dal client Tor. Il percorso da guardia a uscita è chiamato circuito, e il client Tor lo ricorda. La protezione viene scelta una volta e rimane invariata per un lungo periodo (come spiegato di seguito), mentre il centro e l'uscita cambiano a intervalli periodici (una volta ogni dieci minuti o quando viene stabilita una nuova connessione). Il percorso imprevedibile e un gran numero di relè tra cui scegliere migliora notevolmente l'anonimato.

How Tor works
(fonte: torproject.org )

Quando si inviano dati tramite Tor, i dati vengono crittografati con tre chiavi. Ogni livello specifica il successivo relè da utilizzare (come scelto dal cliente a caso):

  • Un'applicazione, come Tor Browser, richiede una pagina Web tramite Tor e lo comunica al client. Questa richiesta viene eseguita sulla rete locale utilizzando il protocollo SOCKS5.
  • Il client Tor crittografa i dati con tre chiavi e condivide ciascuna chiave con un relè casuale diverso. Crittografato in ogni livello è anche l'indirizzo del relè successivo. Questo viene quindi inviato alla guardia.
  • The Guard riceve i dati e spoglia il terzo livello, usando la sua chiave. Inoltra i dati al relè specificato nel terzo strato, il relè centrale.
  • Il relè centrale riceve i dati e rimuove il secondo strato, usando la sua chiave. Inoltra i dati al relè specificato nel secondo strato, l'uscita.
  • L'uscita riceve i dati e rimuove il (primo) livello finale, usando la sua chiave. Controlla il sito di destinazione e inoltra i dati ora completamente decrittografati.
  • Il sito di destinazione riceve i dati e invia una risposta all'IP di origine, l'uscita.

Ora il traffico è stato inviato con successo alla sua destinazione, ma deve tornare indietro. I relè Tor mantengono quale relè comunica con esso in memoria, quindi quando riceve una risposta da quel relè, sa dove inviarlo. In questo modo, il relè centrale sa che la guardia gli ha chiesto di inviare i dati all'uscita e lo ricorda, quindi quando quella stessa uscita restituisce i dati, può inoltrarli alla guardia:

  • L'uscita riceve la risposta, aggiunge la destinazione del relè precedente (il centro), lo crittografa con la sua chiave e lo invia al relè intermedio.
  • Il relay centrale lo riceve, aggiunge la destinazione del relay precedente (la guardia) e aggiunge un altro livello di crittografia usando la sua chiave prima di inviarlo alla guardia.
  • La guardia lo riceve e aggiunge un terzo livello di crittografia con la sua chiave prima di fornirti i dati, il client Tor.
  • Il client Tor lo riceve e rimuove tutti i livelli di crittografia. Fornisce quindi la risposta a qualsiasi applicazione richiesta (come Tor Browser).

Questo è il concetto originale dietro routing di cipolla . Tutto questo accade in un secondo o due.

onion routing diagram

Chi può vedere cosa?

In realtà ho scritto questa risposta perché nessuno era collegato al diagramma EFF obbligatorio su Tor. Ciò descrive ogni punto di interesse e ciò che un determinato avversario può osservare:

Tor and HTTPS

Dal punto di vista dei relè, tre cose sono vere:

  • La guardia sa chi sei (il tuo IP), ma non quello che stai facendo (la tua destinazione).
  • L'uscita sa cosa stai facendo, ma non chi sei.
  • Il nodo centrale non sa nulla di te.

L'anonimato deriva dal fatto che nessuna entità può sapere chi sei e cosa stai facendo.

Attacchi di analisi del traffico contro Tor

Per essere rianimizzato usando Tor, non assumendo alcun attacco contro di te direttamente (exploit software, hardware backdoor, guasti OPSEC), un'entità che sa chi sei e un'entità che sa cosa stai facendo deve colludere. Nel diagramma, quell'avversario è etichettato come NSA. La linea tratteggiata nera mostra la condivisione dei dati, il che significa che le informazioni di temporizzazione precise possono essere utilizzate per correlarti. Questo si chiama attacco di analisi del traffico ed è un rischio quando l'avversario monitora entrambe le estremità della connessione. Tor ha solo una limitata capacità di protezione contro questo, ma per fortuna è spesso sufficiente, poiché c'è così tanto traffico con cui confondersi. Considera la seguente sequenza temporale di eventi:

  • ISP1 vede 203.0.113.42 invia 512 byte crittografati (253 non crittografati) di dati a t + 0.
  • ISP2 vede example.com riceve una richiesta di 253 byte per /foo.html at + 4.
  • ISP2 vede example.com invia una risposta di 90146 byte at + 5.
  • ISP1 vede 203.0.113.42 riceve una risposta di byte crittografata 90424 (90146 non crittografata) at + 9.

ISP1 è qualsiasi ISP tra l'utente e la guardia e ISP2 è qualsiasi ISP tra l'uscita e la destinazione. Se tutto ciò può essere monitorato e ISP1 e ISP2 colludono, quindi con un calcolo sufficiente, si può concludere che l'indirizzo IP 203.0.113.42 ha avuto accesso example.com/foo.html. Tor rende questo più difficile in alcuni modi. Innanzitutto guardie persistenti riducono la possibilità che un avversario sia in grado di osservare i passaggi 1 e 4 aggiungendo un gran numero di guardie maligne alla rete. In secondo luogo, Tor invia il traffico in celle di 512 byte ciascuno (o almeno era. È 514 byte ora ), quindi il passaggio uno prevede l'invio di 512 byte, ma il passaggio 2 mostrerebbe comunque 253 byte ricevuti. In terzo luogo, il numero di Hops Tor subisce un aumento del jitter in latenza. Per questo motivo, ogni timestamp successivo differirà per un tempo piccolo ma casuale. Ciò rende difficile distinguere altre connessioni che trasferiscono una quantità simile di dati in un momento simile dalla tua connessione.

Ci sono stati molti attacchi accademici contro Tor che si basano sull'analisi del traffico, ma assumono sempre un piccolo mondo in cui le latenze sono tutte fisse e deterministiche. Questi sono gli attacchi che tendono a essere segnalati dai media, nonostante non si applichino all'attuale rete Tor in un mondo in cui ogni rete è piena di rumore.

Attacchi di analisi del traffico contro un proxy

Questo tipo di attacco è difficile da attuare contro Tor perché un avversario potrebbe non avere accesso a ISP1 e ISP2. Anche se lo fanno, l'infrastruttura di uno di essi potrebbe non essere sufficiente per registrare timestamp ad alta risoluzione (ad esempio, a causa della ridotta granularità dei record NetFlow) e i loro clock interni potrebbero differire leggermente. Con un proxy, tuttavia, questo attacco è molto più facile da eseguire. Questo è un problema anche se ti fidi completamente del provider proxy. Considera questa sequenza temporale alternativa di eventi, in cui ISP1 rappresenta l'ISP del servizio proxy stesso:

  • ISP1 vede 203.0.113.42 invia 253 byte di dati a t + 0.
  • ISP1 vede il server proxy inviare una richiesta di 253 byte a example.com per /foo.html at t + 1.
  • ISP1 vede example.com invia una risposta di 90146 byte a t + 2.
  • ISP1 vede 203.0.113.42 riceve una risposta di 90146 byte at + 3.

Con queste informazioni tutte nelle mani di ISP1, diventa abbastanza facile concludere che 203.0.113.42 ha richiesto example.com/foo.html. Non c'è riempimento e praticamente nessun jitter (poiché il ritardo è solo finché il servizio proxy richiede l'inoltro della richiesta internamente). Per questo motivo, questo singolo ISP sa sia chi tu sei e cosa stai facendo, e tutto ciò che deve fare è collegare il fatto che provengono la stessa persona. Semplice. Questo è il principale svantaggio tecnico dei proxy, anche quando la loro natura spesso abbozzata e la storia di scarsa onestà sono ignorate.

5
forest

aggiungendo alle altre risposte

  • L'uso di un proxy ti aiuta a nascondere il tuo indirizzo IP e fornisce un certo livello di anonimato ma non ti rende rintracciabile. puoi essere monitorato usando i log generati dal proxy.
  • Un approccio migliore sarebbe quello di utilizzare uno strumento di commutazione proxy che continui a cambiare il server proxy attraverso il quale il traffico viene instradato dopo intervalli di tempo fissi. uno di questi strumenti è Proxy switcher
  • In questo modo continui a passare da un proxy all'altro in tutto il mondo. La maggior parte di questi proxy è attiva per un intervallo di tempo molto limitato, quindi la traccia diventa molto difficile.
  • Esistono siti Web come anonymizer.com e vtunnel.com che consentono di accedere a siti Web bloccati (bloccati dall'amministratore o dal governo cinese;)) tramite un proxy.
1
Shurmajee