
Tallow - Tor trasparente per Windows
Tallow è un piccolo programma che reindirizza tutto il traffico in uscita da una macchina Windows attraverso la rete di anonimato Tor. Qualsiasi traffico che Tor non può gestire, ad esempio UDP, viene bloccato. Tallow intercetta e gestisce anche le richieste DNS prevenendo potenziali perdite.
Tallow ha diverse applicazioni, tra cui:
Nota: da solo, Tallow non è progettato per essere una soluzione di anonimato forte e completa. Vedi le avvertenze più sotto.
Usando l'interfaccia grafica di Tallow, premi semplicemente il grande pulsante "Tor" per iniziare a reindirizzare il traffico attraverso la rete Tor. Premi di nuovo il pulsante per fermare il reindirizzamento Tor. Nota: la tua connessione Internet potrebbe subire un'interruzione temporanea ogni volta che premi il pulsante.
Per verificare se il reindirizzamento Tor funziona, visita il seguente sito: https://check.torproject.org.
Tallow utilizza la seguente configurazione per connettersi a Internet:
+-----------+ +-----------+ +----------+
| PC |------->| TOR |------->| SERVER |
| a.b.c.d |<-------| a.b.c.d |<-------| x.y.z.w |
+-----------+ +-----------+ +----------+
Qui (a.b.c.d) rappresenta l'indirizzo locale, e (x.y.z.w) rappresenta un server remoto.
Tallow usa WinDivert per intercettare tutto il traffico da/verso il tuo PC. Tallow gestisce due tipi principali di traffico: traffico DNS e flussi TCP.
Le query DNS vengono intercettate e gestite da Tallow stesso. Invece di trovare l'indirizzo IP reale di un dominio, Tallow genera un "finto" dominio pseudo-casuale (nell'intervallo 44.0.0.0/24) e usa questo indirizzo nella risposta alla query. Il fake-IP viene anche associato al dominio e registrato in una tabella per riferimento futuro. L'alternativa sarebbe cercare l'IP reale tramite Tor (che supporta il DNS). Tuttavia, poiché Tallow usa SOCKS4a, l'IP reale non è necessario. Gestire le richieste DNS localmente è molto più veloce.
Anche le connessioni TCP vengono intercettate. Tallow "riflette" le connessioni TCP in uscita in connessioni SOCKS4a in entrata verso il programma Tor. Se la connessione è verso un fake-IP, Tallow cerca il dominio corrispondente e lo usa per la connessione SOCKS4a. Altrimenti la connessione viene bloccata (per impostazione predefinita) o viene utilizzata una connessione diretta SOCKS4 tramite Tor. Connettere TCP a SOCKS4(a) è possibile con un po' di magia (vedi redirect.c).
Tutto il resto del traffico viene semplicemente bloccato. Questo include tutto il traffico in entrata (non Tor) e il traffico in uscita che non è TCP né DNS. Inoltre, Tallow blocca tutti i domini elencati nel file hosts.deny. Questo include domini come Windows Update, Windows phone home e alcuni server pubblicitari comuni, per evitare sprechi di larghezza di banda di Tor. È possibile modificare e personalizzare il tuo file hosts.deny come preferisci.
Tallow deriva dal prototipo TorWall (dove "tallow" è un anagramma di "torwall" senza la 'r').
Tallow funziona in modo leggermente diverso e mira a reindirizzare tutto il traffico, non solo la porta HTTP 80. Inoltre, a differenza del prototipo, Tallow non usa Privoxy né altera in alcun modo il contenuto dei flussi TCP (vedi avvertenze più sotto).
Per compilare Tallow è necessario il cross-compilatore MinGW per Linux.
È anche necessario scaricare e inserire le seguenti dipendenze esterne nella directory contrib/:
Poi esegui semplicemente lo script build.sh.
Attualmente Tallow non tenta in alcun modo di anonimizzare il contenuto del traffico inviato attraverso la rete Tor. Queste informazioni potrebbero essere usate per de-anonimizzarti. Vedi questo link per maggiori informazioni. Tallow non dovrebbe essere usato come garanzia di forte anonimato a meno che tu non sappia cosa stai facendo.