METTIAMO TOR IN UNA GABBIA IMPENETRABILE

scussuni script

L’ottobre scorso un gruppo di hacker etici italiani (We Are Segment) coordinati da Filippo Cavallarin aveva scoperto una vulnerabilità MOLTO SERIA sulle versioni MacOs e Linux del tor browser, dovuta ad un bug di firefox. Questo bug poteva essere usato per forzare la connessione diretta dell’host, in modo da individuare l’indirizzo IP del visitatore (deanonimizzazione). Lo staff di We Are Segment, dimostrando una grandissima correttezza, segnalò il problema a TorProject che dovutte intervenire in tutta fretta per arginare la falla di sicurezza. Per chi vuole consultare le fonti eccovele:

Comunicato del 3 novembre 2017 di Torproject

Disabilitare i javascript (se non lo avete già fatto) per il link in basso

Rivendicazione di We Are Segment post correzione bug

Quando un calcolatore si collega ad una rete anonima, ha tecnicamente un solo modo per evitare di rivelare la propria identità, deve instradare TUTTO il traffico prodotto ESCLUSIVAMENTE sulla rete anonimizzante e non al di fuori di essa.

La prima AVVERTENZA sull’uso corretto di Tor infatti afferma che: “Tor non protegge tutto il traffico Internet del tuo computer quando lo esegui. Tor protegge solo le tue applicazioni che sono configurate correttamente per inviare il loro traffico Internet attraverso Tor.”

Questo ci fa capire quanto sia dannoso per il nostro anonimato qualunque fuga dati dalla nostra macchina, in quanto rivelatrice dell’ip con il quale noi stiamo operando.
A tal fine esistono già diverse soluzioni orientate a migliorare l’isolamento del nostro pc come Tails e Whonix solo per citarne alcune tra le più note e apprezzate.
Tor è spesso oggetto dei miei esperimenti, mi è sempre piaciuto vederlo in azione soprattutto quando si avvia la prima volta e crea 5, 6, 7 connessioni tcp con la sua rete prima di lasciarmene solo una, quella con il guardian di navigazione. Vi siete mai chiesti che cosa succederebbe se noi accendessimo a questo punto il firewall con una sola istruzione di default: DROPPARE TUTTO IL TRAFFICO IN INGRESSO ED USCITA del pc? Verrebbe da pensare che resteremmo sicurmente tagliati fuori dal nostro guardian e invece NO. Non succede assolutamente nulla a Tor, in quanto il router onion ha già stabilito la sua connessione al guardian e quindi possiamo continuare tranquillamente a navigare e senza il minimo rischio di essere deanonimizzati per fughe, perchè da questo momento in poi, il nostro computer è perfettamente sigillato dentro ad una GABBIA. Tor starà un po’ strettino, ma per nostra fortuna si sa adattare.

Per riconfigurare il firewall al volo (io uso UFW), ho predisposto questo script con una serie di istruzioni che UFW deve eseguire in rapida sequenza: resettarsi, droppare in entrata e uscita ed abilitarsi. Mentre scrivo questo articolo ho proprio questa configurazione firewall. Da quando uso questa configurazione macchina le mie perdite sono state lo ZERO ASSOLUTO. Sono soltanto 4 righe di istruzioni molto elementari e comprensibili da chiunque, ma assolutamente EFFICACI. Per testarlo e farmi sapere le vostre impressioni dovete avere in macchina il firewall ufw. Ecco lo script che potete copiare ed incollare su un normale editor testuale…

#!/bin/bash
sudo ufw reset
sudo ufw default deny incoming
sudo ufw default deny outgoing
sudo ufw enable

Potete salvarlo come scussuni.sh e dargli gli attributi di esecuzione con

chmod +x scussuni.sh

Quando finite la vostra sessione onion, disconnettevi e solo dopo, ripristinate le sane regole di default. Eccone uno che potrebbe fare il caso vostro, perchè ripristina delle regole ottimali per la navigazione (SOLO IN CLEARNET). Se avete necessità di aprire delle specifiche porte per le vostre esigenze comunicative, potete chiaramente modificarlo a vostro piacimento.

#!/bin/bash
sudo ufw reset
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw enable

Chiamatelo come più vi aggrada e abilitatelo all’esecuzione.

Considerazioni finali

Il presente script viene rilasciato così com’è, al fine di studio,  svago e per giochi di varia natura (LOL!!!).

Ecco cosa la root della mia macchina vede per DNS dopo la blindatura:

# nslookup darknet.it
;; connection timed out; no servers could be reached

Impossibile nemmeno da root riuscire a conoscere l’IP pubblico della macchina dopo la blindatura:

# curl ifconfig.me
curl: (6) Could not resolve host: ifconfig.me

È COSA BUONA E GIUSTA iniziare una sessione darknet cambiando SEMPRE l’indirizzo mac di tutte le vostre schede di rete e per diminuire la superficie di attacco, sarebbe bene chiudere tutti i servizi non necessari in ascolto, sandboxando pure le applicazioni che usate.
La mia macchina ha solo un processo in ascolto e quel processo (fidato) si chiama Tor. Tutti gli altri servizi, li ho disattivati dall’avvio automatico perchè non mi interessano, regolatevi per come meglio credete, fate voi.

Per i meno ferrati che volessero vedere tutte le porte in ascolto sulla propria macchina ricordo che basta dare da terminale:

netstat -ntulp

(possibilmente da root o con privilegi amministrativi per vedere tutte le informazioni).

Una piccola guida introduttiva al comando netstat la trovate qui.

Come dissi ieri notte, ad un anonimo sconosciuto, incontrato  in una sperduta chat irc della rete onion:

“Non c’è felicità, se non è condivisa!”