domenica 6 luglio 2008

Utilizzo di 'Portable TOR' nell'analisi di siti malware

Come premessa vorrei sottolineare che questo post non descrivera' in dettaglio il funzionamento di TOR e delle utilities ad esso collegate poiche' esistono in rete centinaia di pagine che spiegano il funzionamento e le varie modalita' di utilizzo e di configurazione del software Inoltre questa non e' una guida su come utilizzare TOR per connessioni anonime in quanto i vari parametri, come settati nel post, riducono fortemente la caratteristica di TOR di garantire l'anonimato del collegamento Internet.
Tra le svariate tipologie di siti malware, ce ne sono alcune che prevedono una diversa risposta da parte del sito che vogliamo analizzare a seconda della provenienza geografica di chi vista la pagina.
In pratica a diverso IP corrisponde una diversa pagina web restituita dal server e di conseguenza, a volte, quando e' anche presente un download, la possibilita' di ricevere un file malware personalizzato a seconda del nostro IP.

Il problema che si incontra piu' di frequente in questi casi e' come far vedere al server malware a cui siamo connessi , un indirizzo IP diverso dal nostro reale, sostituendolo con uno attribuibile ad una specifica nazione.(es Italia).
Infatti, se il trovare in rete indirizzi di proxy server 'Non anonimi' ( cioe' che mostrano l'indirizzo IP reale di chi li usa) e funzionanti e' facile, non e' altrettanto facile , (almeno dalla Thailandia), trovare “proxy Anonimi' associati ad uno specifico IP e che consentano inoltre una discreta velocita' di connessione.

Una semplice soluzione e' quindi quella di utilizzare TOR, per facilita' di installazione, nella sua versione 'portable', l'addon TOR button per Firefox e modificare il file di configurazione tor.cfg per forzare l'IP della nazione che vogliamo, per cosi dire, 'simulare'.

L'utilizzo di Poratable TOR semplifica in maniera notevole tutta la procedura di installazione che consiste solo nello scompattare in un folder del nostro pc le cartelle che contengono tutto quanto servira' per attivare TOR e per gestirne i suoi parametri.

Una volta installato TOR potremo attraverso l'addon TOR button di Firefox attivare o disattivare la funzionalita TOR in maniera automatica per eseguire i nostri test evidenziando il possibile comportamento al diverso IP del server malware con in piu' il grosso vantaggio di poter continuare ad utilizzare Firefox nella nostra configurazione preferita per esaminare pagine pericolose.

I passi da seguire, oltre alla installazione di TOR e dell'addon TOR button in Firefox consistono solamente nella modifica del file tor.cfg presente nel folder DATA di Portable TOR.
Il file tor.cfg permette, tra le altre cose di forzare i parametri degli exit nodes di tor (praticamente il nodo di uscita della conenssione TOR che sara' anche quello visto dal server a cui ci collegheremo) e per fare questo bastera' aggiungere le righe che vediamo (nell esempio si forza l'exit node su IP italiani)

# A list of preferred nodes to use for the last hop in circuits, when # possible.
ExitNodes bodengo, fortytwoATdico, cyberiad,pboxlevel3,pboxlevel4

# If set, Tor will fail to operate when none of the configured ExitNodes can # be used.
StrictExitNodes 1

I nomi di server da usare che vedete in ExitNodes es. 'fortytwoATdico' si possono ricavare semplicemente aprendo l'utility 'View the network' dal pannello di configurazione installato in automatico in Portable TOR


e copiando il nome del server (es.fortytwoATdico) corrispondente alla nazione che ci interessa 'simulare'
Inoltre cliccano sul collegamento al server, sempre sulla stessa utility ci verra' mostrata la path della connessione TOR attualmente in uso.


L'istruzione ExitStricNodes serve poi a forzare l'uso dei nodi di uscita impostati nel file ma attenzione al fatto che , come ricorda anche il commento presente ne file .cfg, nel caso che tutti i nodi impostati fossero OFF avremo il blocco di TOR in quanto non avrebbe possibilita' di stabilire una connessione.
Questo un trace con TOR attivo:

Alcuni altri dettagli da tenere in considerazione sono:
L'uso di TOR BUTTON in Firefox abilita o disabilita alcune funzionalita' del browser e quindi occorre settare le opzioni dai parametri di configurazione dell'addon stesso per evitare blocco di scripts, cronologia ecc....
Se si usa un firewall che limita alcune porte in uscita occorrera' settare nel pannello di controllo di TOR , l'uso di queste porte.

Ricordo ancora che l'uso di TOR effettuato utilizzando la configurazione vista ora e' utile SOLO per avere un IP ben definito da utilizzare nelle analisi di un sito e non per garantirci un anonimato attraverso TOR in quanto l'utilizzo di IP fissi in uscita (exitNodes) o volendo anche in ingresso (entry nodes) porta a limitare la possibilita di TOR di rendere anonima la nostra connessione cosi' come il disabilitare alcune funzioni di TOR BUTTON.(blocco java scripts ecc...)

In conclusione, portable TOR, nella configurazione provata, puo rivelarsi utile per testare il comportamento di un sito malware a seconda del nostro IP e inoltre permette di cambiare velocemente un IP per osservare eventuali diversita' nel contenuto delle pagine che ci vengono proposte dal server malware

Oltre ai nomi di server presenti nella utility Tor citata in precedenza, su questi siti possiamo trovare descrizione e stato di funzionamento di diversi server TOR e attingere a nuovi nomi di server da inserire nel file di configurazione tor.cfg

http://torstatus.blutmagie.de/

http://torstatus.kgprog.com/

https://torstat.xenobite.eu/index.php?SortBy=G

Aggiornamento

N.B. Onde evitare equivoci ricordo che NON tutti i nodi TOR possono essere utilizzati come ExitNode ed occorre quindi verificare attraverso i links alle pagine di cui sopra , nei dettagli del nodo, se questo e' abilitato come exitNode e con quali 'policy'.

Inoltre a questo link si potra' eventualmente verificare, passando l'indirizzo IP, se si tratta di nodo TOR e fornendo l'IP di destinazione e la porta usata (.... optionally see if that Tor server's Exit Policy would permit it to exit to a certain destination IP address and port) se si potra' utilizzarlo come ExitNode per raggiungere quel determinato IP su una specifica porta (vedi 'exit policy' del nodo).


Edgar

Nessun commento: