Il “Grande Fratello” ci osserva ma ancora possiamo fare qualcosa per evitare di essere spiati e tenere nascosta la nostra identità. Ecco come
La diffusione capillare di Internet ha semplificato notevolmente la possibilità di accedere e/o creare informazioni o semplicemente esprimere la propria opinione. I contenuti spesso corrono dal basso, nei blog, nei siti di news amatoriali e nelle community. In un mondo perfetto i creatori e i lettori di queste informazioni, chiunque essi siano, non subirebbero alcuna limitazione e/o censura. Nel mondo reale, invece, censura e norme comuni spesso pongono limiti alla nostra libertà. L’esempio classico arriva dall’oriente: in Cina basta scrivere qualche critica al Regime, magari su un blog o in un forum pubblico, per ritrovarsi in carcere da un giorno all’altro. Inoltre, è quasi impossibile ottenere informazioni indipendenti per via dei “filtri” gestiti dagli ISP cinesi nei confronti dei server esteri di informazione non approvati dal Governo. Purtroppo, l’uso di uno pseudonimo non basta per garantirsi l’anonimato: le comunicazioni possono essere tracciate una volta determinato l’indirizzo IP dell’utente attraverso la cattura del traffico di rete o semplicemente incrociando i log degli ISP e dei server contattati. Serve dunque uno strumento per garantire lo scambio di informazioni libero, sia per casi analoghi a quello cinese, sia per assicurare la voglia di anonimato a garanzia della propria privacy di un semplice lettore o scrittore su un forum/blog. Tuttavia, l’anonimato ha due pericolosi nemici: il primo riguarda coloro i quali vorrebbero risalire all’identità degli utenti anonimi e chiudere i circuiti che garantiscono la loro riservatezza. Il secondo è l’anonimato stesso. Alcuni circuiti anonimi, infatti, sono “isole felici” per tutti coloro i quali cercano di sfruttarlo per fini meno nobili e reati di ogni genere, primo tra tutti la diffusione di materiale pedopornografico. Fortunatamente, i circuiti anonimi seri, pur garantendo la possibilità di ogni utente di comunicare su argomenti che possono essere ritenuti immorali da parte della popolazione, sono aperti alla lotta contro il terrorismo e la pedofilia, ponendo filtri o agevolando eventuali indagini delle forze di polizia contro coloro che hanno sfruttato il circuito in modo non lecito.
Da Freenet a tor
La rete libera per eccellenza è Freenet, un progetto GNU per la comunicazione libera e anonima. La rete è composta da nodi collegati in peer-to-peer (P2P), i quali ospitano al loro interno parte dei contenuti pubblicati dagli utenti anonimi. L’anonimato è garantito dalle comunicazioni criptate tra utente e nodo e tra nodi stessi. Il possessore di un nodo non ha la possibilità di conoscere i contenuti memorizzati nella cache perché tale possibilità permetterebbe di risalire all’identità di un utente. Purtroppo Freenet ha un bassissimo livello di diffusione dovuto principalmente all’impossibilità di uscire al di fuori del circuito senza perdere la propria condizione di anonimato. Ad esempio, un blogger può creare un blog nel circuito di Freenet, ma non può utilizzare un servizio di blog come Blogger in modo anonimo. Analogamente, per accedere ai contenuti della rete anonima è necessario utilizzare il software di Freenet. Inoltre, qualora nel circuito venissero immessi contenuti illegali, essi rimarrebbero al suo interno fino alla loro rimozione automatica che arriverebbe solo dopo diverso tempo che nessuno accede ai contenuti non graditi nel circuito. La creazione di un circuito anonimo chiuso non è affatto la soluzione ideale, dato che non risolverebbe i problemi di censura espressi in precedenza. Più che garantire l’anonimato dei contenuti, è più sensato garantire l’anonimato degli utenti rendendo il percorso a ritroso per una eventuale rilevazione molto più difficoltoso. La rete peer-to-peer di Tor (The Onion Router – www.torproject.org/index.html.it) non fa altro che mettere in comunicazione due indirizzi TCP/IP, ad esempio quello dell’utente con il server che ospita un blog, utilizzando diversi nodi intermedi. Questa modalità di veicolazione dei dati è definita instradamento a cipolla (onion routing) ed è studiata per garantire la massima sicurezza e riservatezza. Per capire il perché questo strumento è considerato riservato e sicuro è necessario illustrare le tipologie di nodo Tor più comuni:
- Client : sono i nodi che si collegano alla rete Tor con il ruolo di inoltrare le richieste nel circuito. Esso viene installato in un punto di “raccolta” pubblico o sul PC che si vuole rendere anonimo;
- Exit : sono i nodi di uscita del traffico anonimo dalla rete Tor. Il servizio di destinazione crederà che la comunicazione sia partita da uno di questi nodi, anche se essa è stata iniziata a migliaia di chilometri da esso;
- Relay : questi nodi vengono usati per allungare il percorso tra il nodo client e quello di uscita.
Il modo con cui i dati di passaggio nei nodi intermedi vengono inoltrati e codificati garantisce la massima sicurezza e riservatezza: i dati sono criptati e ogni nodo pone una firma ai dati ricevuti per garantire che il nodo successivo non possa leggere e/o alterare i messaggi veicolati. Apponendo la propria firma su quella degli altri nodi, la decriptazione del messaggio sarà possibile solo al possessore di tutte le chiavi di decriptazione. Solo il nodo di uscita ha tutte le chiavi di decriptazione necessarie per risalire al messaggio originario e dunque inoltrarlo verso l’indirizzo di destinazione. Questo sistema, oltre che essere sicuro, è anche molto performante, in quanto l’operazione di codifica e decodifica è generalmente molto veloce e non causa un consumo di banda elevato come accadeva invece per la rete peer-topeer di Freenet. Ovviamente, questo sistema non è perfetto e il punto debole è rappresentato dai nodi di uscita. Il proprietario del nodo o una persona terza capace di sniffare il traffico uscente da esso può leggere il contenuto della comunicazione. Inoltre, partendo dal nodo di uscita è teoricamente possibile iniziare il percorso a ritroso fino al nodo di origine. Per ovviare al primo limite esposto è vivamente consigliato utilizzare servizi criptati (HTTPS, SSH, ecc.). Per la seconda problematica, invece, possiamo vivere sonni tranquilli: difficilmente si riesce ad andare a ritroso in tutti i nodi perché è necessaria la collaborazione degli ISP dei nodi di passaggio, i quali in genere sono tenuti a rispondere unicamente alle forze dell’ordine durante delle indagini su eventuali reati. Tornando al caso della censura in Cina, le autorità cinesi difficilmente riescono a ottenere dati di utenti di ISP di stati che non condividono la censura o la cui azione non rappresenta un reato nel loro stato. Dal punto di vista tecnico, il client di Tor è un semplice Socks Server, il quale è del tutto analogo ai proxy per le pagine web. A differenza di quelli canonici, i quali semplicemente redirigono le connessioni richieste ad un nodo di snodo, i Socks Server di Tor immettono nel circuito anonimo la connessione e i dati ad essa associati. Nei computer client Tor viene utilizzato in simbiosi con Privoxy (www.privoxy.org): un proxy HTTP per il traffico anonimo il quale non solo può utilizzare Tor per veicolare le connessioni, ma depura persino le richieste effettuate dal browser di qualsiasi elemento che possa in qualche modo permettere di risalire alla reale identità dell’utente anonimo. L’installazione di Tor e Privoxy è estremamente semplice dato che essi sono disponibili per qualsiasi distribuzione, senza dover necessariamente compilarli. Nella pagina principale del progetto sono disponibili informazioni esaustive e tutto il necessario (anche per Windows) per accedere al circuito anonimo. Ovviamente, è necessario configurare adeguatamente entrambi i software, tuttavia grazie all’interfaccia grafica (frontend) TorK possiamo evitare la noiosa modifica dei file di configurazione testuali. Anche qui, nel sito web del programma TorK sono disponibili i pacchetti di installazione per ogni distribuzione e il codice sorgente. Il frontend è stato creato per l’ambiente desktop KDE 3.5, ma possiamo ugualmente utilizzarlo anche con Gnome o il nuovo KDE 4. Ovviamente, per quest’ultimo il supporto non è ancora perfetto, ma è previsto un port completo verso la nuova piattaforma di sviluppo per applicazioni desktop in tempi relativamente brevi.
Durante la prima esecuzione di TorK apparirà un wizard che ci guiderà durante al configurazioneI primi passi verso l’anonimato
Dov’è Tor
Dopo le schermate di presentazione, bisogna specificare dov’è l’eseguibile di Tor nel nostro sistema e se è eseguito in fase di avvio o manualmente. Consigliamo di selezionare la seconda opzione, in modo da non consumare banda inutilmente qualora non volessimo essere anonimi o aiutare la rete Tor.
Tipo di nodo
Il wizard ci chiede il tipo di nodo da creare. Ovviamente, se vogliamo restare solo anonimi scegliamo la voce client. Per “partecipare” alla rete e aiutare così gli altri utenti del circuito, possiamo far sì che il nodo abbia anche il ruolo di Relay oppure impostarlo come nodo di uscita rinunciando alla funzionalità client.
La nostra identità
Il proxy privoxyPuò sembrare strano ma è necessario impostare un nome a nostra scelta e una e-mail per il nostro nodo Relay o di uscita per la segnalazione di problemi o per bloccare traffico non gradito nel circuito. Non ci sono obblighi, dunque possiamo non inserire una e-mail valida se lo riteniamo più opportuno.
Setup del proxyCome per Tor, Tork chiede ancora i dati per l’esecuzione di Privoxy. Anche in questo caso è consigliata l’esecuzione manuale del programma, dato che esso funziona correttamente solo in presenza di Tor attivo nel sistema. In realtà non è indispensabile, ma è utile per la navigazione con il browser.
Sotto controlloTorK sfrutta la possibilità di Tor di accettare un file di configurazione esterno. Purtroppo, Privoxy non usa questo sistema. Per questo motivo il wizard chiederà la posizione della configurazione di Privoxy che utilizzeremo in modo da modificare automaticamente le impostazioni quando serve.
Il pannello di controlloTorK monitora le connessioni in entrata ed in uscita dal PC. Per ottenere tutte le informazioni necessarie, esso deve essere eseguito con i permessi di root. Tuttavia, questa libertà può permettere ad altri l’accesso al traffico. Se abbiamo un PC condiviso con altri, sconsigliamo di abilitare questa opzione.
Tork è un vero e proprio pannello di controllo per Tor. La schermata principale contiene una serie di pulsanti azione, con una ricca descrizione per ogni elemento, dalla quale è possibile avviare ed arrestare il nodo Tor o utilizzare alcune applicazioni nella modalità anonima. È possibile rendere anonime anche connessioni SSH, telnet e aprire una generica console a linea di comando nella quale sono state impostate le giuste variabili di ambiente utilizzate dalla maggior parte dei programmi per l’utilizzo del Socks Server di Tor. TorK, inoltre, sfrutta le potenzialità di alcuni software che possono utilizzare diversi profili utente. In particolare, Firefox, Kopete, Thunderbird e Konqueror possono essere eseguiti in una sessione totalmente anonima, che utilizza Tor come mezzo di trasporto per le connessioni e nella quale vengono ridotti al minimo l’accesso acookie e ad altri dati che potrebbero essere trasmessi sui server. Il secondo tab di Tork mostra tutte le informazioni sui nodi Tor conosciuti, i circuiti collegati al proprio nodo e i nodi di frontiera o di ingresso da noi raggiungibili. Per garantire maggiore riservatezza, non vedremo informazioni sul traffico in transito sul nostro nodo. Però, possiamo vedere lo stato delle richieste sul circuito Tor da noi effettuate. Inoltre, a seguito di ogni richiesta apparirà una piccola finestra sul desktop anche se il frontend è minimizzato. Grazie ad essa è possibile verificare se stiamo navigando in modo anonimo o se il programma da noi utilizzato si sta connettendo alla destinazione senza passare dal circuito Tor.
Bypassare i filtri imposti da molti paesi europei
In alcuni paesi, compresi quelli europei e non ultimo l’Italia, è nata la moda di imporre il divieto di accesso ad alcuni siti bloccandone il traffico o le richieste DNS (vedi il caso dei siti di scommesse e Pirate Bay). Con TorK è possibile sfruttare una caratteristica di Tor unica nel suo genere: la possibilità di scegliere la nazionalità del nodo di uscita. In questo modo, i filtri presenti in uno stato vengono bypassati passando da un paese che non ha tali limiti. Questa caratteristica è stata determinante per la diffusione del circuito anonimo realizzato con Tor, in quanto la conoscenza del paese di origine e di quello di uscita permette anche la realizzazione di nodi ponte (chiamati bridge), i quali vengono usati per cercare di abbattere ogni tentativo di ostacolare la diffusione di questo sistema di anonimato in paesi in cui i reati di opinione sono molto frequenti.
Massima prudenza, sempre! L’anonimato non è mai completo
Fin qui, tra le altre cose, abbiamo anche capito che questo strumento non è perfetto e non assicura l’anonimato al 100%. Per questo motivo gli utilizzatori stessi del circuito sconsigliano vivamente comunicazioni non criptate in quanto il nodo di uscita ha la possibilità di leggere i dati originari. Ma il vero pericolo per il proprio anonimato è la mancanza di prudenza nell’utilizzo dei servizi Internet. Anche se si utilizza lo strumento più sicuro al mondo, l’anonimato è nullo se l’utente firma allegramente il suo pensiero pubblicamente con il suo nome e cognome. Ovviamente, bisogna sempre essere prudenti anche in aspetti meno banali. Fortunatamente TorK ci avvertirà con una serie di messaggi sulle possibili problematiche relative al nostro stato di anonimato. Il primo tra tutti è la rimozione dei plugin Java e Flash per i browser, in quanto essi potrebbero provare a eseguire connessioni dirette alla rete rendendo vano l’utilizzo di Privoxy e Tor. Un altro aspetto da non sottovalutare sono le richieste di tipo DNS, le quali permettono ad altre persone di scoprire cosa l’utente sta visitando in quel momento, anche se il traffico è veicolato nel circuito Tor, nel quale dovrebbe risultare anonimo. In quest’ultimo caso è necessario assicurarsi che il programma che accede alla rete utilizzi unicamente i Socks Server o servirsi del comando “tor-resolve” qualora fosse necessario conoscere un indirizzo IP di un hostname “proibito”. Seguendo questi semplici consigli sarà praticamente impossibile risalire alla nostra identità e potremo accedere a siti vietati ed esprimerci liberamente senza il rischio di ritorsioni.