Come scansionare un sito .onion

Tempo di lettura: 6 minuti
Data pubblicazione: October 20, 2016

Un sito .onion è un sito creato (solitamente) per proteggere la propria privacy, per mantenere l’anonimato ed essere sicuri che nessuno possa risalire alla nostra identità. Sebbene la privacy possa essere protetta, se l’applicazione web è configurata in malo modo, la possibilità che il sito venga colpito o defacciato rimane comunque alta. In questo articolo andrò a spiegare come scansionare un sito “nascosto” utilizzando il software nmap e nikto.

Configurazione

Per poter scansionare un sito del genere bisogna modificare il file hosts in modo che il nostro dispositivo possa raggiungerlo. Per farlo, basta digitare (in Linux)

sudo vi /etc/hosts

Uso vi poiché mi è più comodo, ma qualsiasi editor (nano, gedit, geany, etc.) può andare bene. All’interno del file, bisogna inserire tre righe obbligatorie per effettuare la scansione. che sono:

127.0.0.1	localhost
127.0.1.1	hostname
127.0.0.1    indirizzodelsito.onion

Dove per hostname intendo il nome della vostra macchina (se non lo sapete basta digitare hostname nel terminale). Nel mio caso, il file hosts risulterà cosi

File /etc/hosts
File /etc/hosts

Scansione con nmap

Per poter effettuare la scansione bisogna eseguire tor, quindi

sudo service tor start

e decidere il comando da passare a nmap per la scansione.

Nel mio caso ho scansionato la pagina di HiddenWiki per vedere quali porte aperte e quali servizi aveva aperti con il semplice comando

sudo nmap -sTUV --script default --proxy socks4://127.0.0.1:9050 zqktlwi4fecvo6ri.onion -T3

Ho inserito l’opzione socks4://127.0.0.1:9050 perchè per scansionare un sito tor dobbiamo a nostra volta agire sulla rete tor, e il comando ci permette di scansionare tramire essa (è utilissimo anche quando si eseguono scansioni e non si vuole far conoscere il proprio indirizzo IP). Consiglio di evitare di utilizzare script o comandi molto lenti, poiché potreste dover aspettare ore o giorni per avere un risultato (avevo provato ad inserire lo script vuln con l’opzione -T1 ma la fine della scansione era programmata 12 ore dopo).

scanonionhiddenwiki
scanonionhiddenwiki

Molto probabilmente moltissimi siti avranno il servizio tcpwrapped, ma questa scansione è solamente il primo passo per capire come possa essere strutturato il sito.

Scansione con nikto

Un’altra possibilità è scansionare il nostro obiettivo utilizzando nikto, che ci potrebbe fornire, in questo caso, molte più informazioni. Per eseguire la scansione, bisogna prima creare un tunnel tra il nostro dispositivo e il sito target. Per farlo digito

socat TCP4-LISTEN:8080,reuseaddr,fork SOCKS4A:127.0.0.1:sitoonion.onion:80,socksport=9050

Dove:

  • la porta 8080 è stata scelta da me, potete utilizzarne una qualsiasi;
  • sitoonion.onion è il sito target, insieme alla porta 80;
  • la porta 9050 è la porta di default di tor.

Lasciando aperto il terminale con il comando appena eseguito, scansiono la porta 80 (ma se ne possono scegliere altre, anche in base alla scansione effettuata con nmap) ed eseguo nikto con un semplicissimo comando

nikto -h 127.0.0.1:8080
scanonionnikto
scanonionnikto

Per colpire il sito in maniera “più sostanziale” e con altri software, basta lasciare il terminale con socat attivo ed utilizzare un altro programma facendo passare la connessione tramite 127.0.0.1:8080.

Conclusioni

Questo articolo è stato scritto puramente per fini divulgativi e in nessun modo voglio incitare ad attaccare siti appartenenti alla rete tor. Ovviamente non penso che nessuno si dispiaccia se qualche sito di pedopornografia e simili venga hackerato, anzi. Ringrazio Andrew Jason per il post su nmap e Hacking Exposed 7 per la tecnica socat, di cui ignoravo l’esistenza.