Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

SocialPhish: scoprire le credenziali dei social tramite phishing

SocialPhish permette di creare finte pagine di login simili a quelle di molti siti noti, da eBay a Twitter, per "rubare" le credenziali tramite phishing.
SocialPhish permette di creare finte pagine di login simili a quelle di molti siti noti, da eBay a Twitter, per "rubare" le credenziali tramite phishing.
Link copiato negli appunti

Per quanto i provider di servizi e-mail si sforzino di salvarci da attacchi malevoli, tutti noi riceviamo quasi giornalmente qualche messaggio che ci spinge a cliccare su link opportunamente mascherati, tutti finalizzati (più o meno maldestramente) a carpire dati sensibili. Questo modo di procedere, in cui un attaccante invia moltissimi messaggi di questo tipo (che fungono da "esche" nel "mare" di Internet), in cerca di qualche utente che "abbocchi" all'inganno cliccando su link fraudolenti, è noto con il nome di phishing. Come si intuisce, questa terminologia richiama (volutamente) proprio la metafora dell'amo da pesca gettato in mare, sperando che qualche pesce abbocchi.

È evidente a tutti come tale pratica sia potenzialmente (se non effettivamente) illegale. Ciò nonostante, è molto utile cercare di capire come fa un hacker malintenzionato a realizzare attacchi di questo tipo. Soprattutto, è particolarmente istruttivo conoscere gli strumenti che vengono utilizzati in questo ambito, per capirne i punti deboli e saperne riconoscere le applicazioni.

Con questo spirito, nel seguito esploreremo un semplice strumento specificamente pensato per il phishing, che facilita l'ottenimento delle credenziali degli utenti. SocialPhish è infatti uno strumento che genera automaticamente una finta pagina di login di uno tra circa 30 diversi siti web (tra cui eBay, Twitter, Facebook, PayPal e molti altri), riproducendone le fattezze in tutto e per tutto. Accedendo ai link che puntano a tali pagine, un utente distratto e ignaro potrebbe inserire le sue credenziali pensando di effettuare il login al sito reale, finendo invece per inviarle direttamente al PC dell'attaccante malintenzionato.

Figura 1. Interfaccia di SocialPhish: si notano tutti i siti supportati (click per ingrandire)Interfaccia di SocialPhish: si notano tutti i siti supportati

Prima di continuare, ribadiamo un concetto fondamentale: appropriarsi di dati sensibili di altri utenti, senza che questi ne siano consapevoli, costituisce reato. Le finalità di questo articolo sono prettamente didattiche, e qualsiasi scopo diverso è fortemente scoraggiato dallo scrivente e da HTML.it, restando ben lontano dalle nostre intenzioni.

Installare SocialPhish

Per potere utilizzare SocialPhish, dobbiamo innanzitutto installarlo. Prima di farlo, assicuriamoci che sul nostro sistema sia già installato l'interprete PHP, ed i tool curl, wget ed unzip. Si noti, inoltre, che tutti gli esempi che seguono fanno riferimento ad un uso su sistemi Linux, sebbene sia possibile eseguirlo anche su Windows 10 ricorrendo al sottosistema Windows su Linux (di cui abbiamo parlato in questa guida), oppure utilizzando strumenti come Cygwin.

Poiché questo tool è disponibile su GitHub, possiamo sfruttare Git per clonare il repository in locale:

git clone https://github.com/xHak9x/SocialPhish.git

Alternativamente, possiamo semplicemente scaricare il repository compresso in un unico file .zip direttamente da GitHub. Scompattandolo all'interno di una cartella denominata SocialPhish, potremmo procedere come segue:

cd SocialPhish
chmod +x socialphish.sh

Di fatto, SocialPhish non è altro che un semplice script .sh, che abbiamo reso eseguibile con i comandi precedenti.

Prima di eseguirlo, è però necessario installare manualmente ngrok, uno strumento che ci permetterà di effettuare il port forwarding (di cui abbiamo parlato in questo articolo). La sua installazione è teoricamente già prevista durante la prima esecuzione; tuttavia, durante i nostri test si è resto necessario effettuarla manualmente, al fine di bypassare alcuni bug.

Verifichiamo quindi l'architettura della macchina su cui stiamo eseguendo il nostro script (possiamo farlo mediante il comando uname -a). Sulla base di essa, eseguiamo il comando seguente:

wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-<ARCH%gt;.zip

Al posto di <ARCH%gt; sostituiremo i386 nel caso in cui la nostra architettura fosse a 32 bit, oppure amd64 se stiamo lavorando su un'architettura a 64 bit.

Una volta completato il download, scompattiamo l'archivio .zip ed assegniamo i permessi di esecuzione al file così ottenuto:

unzip ngrok-stable-linux-<ARCH%gt;.zip
chmod +x ngrok

Usare SocialPhish

Completata la procedura appena descritta, non resta che eseguire SocialPhish:

./socialphish.sh

All'avvio, verrà visualizzata la stessa schermata mostrata in Figura 1.

Come abbiamo già detto, SocialPhish ci permette di creare dei siti web che imitano le pagine di login di vari siti. Per questo motivo, la prima cosa che ci viene mostrata è una lista dei 32 siti web. Scegliendone uno, e digitando il numero ad esso corrispondente, ci viene chiesto di selezionare una delle opzioni di port forwarding possibili. Qui sceglieremo la seconda (corrispondente all'uso di ngrok), ed in seguito la porta da utilizzare a tal fine (possiamo lasciare quella di default, ovvero la 3333).

A questo punto, SocialPhish si occuperà di avviare un server PHP sulla nostra macchina, e di offrire la pagina "fake" che abbiamo deciso di utilizzare, sfruttando la URL pubblica generata tramite ngrok.

Figura 2. Output di SocialPhish (click per ingrandire)

Non resta quindi che utilizzare questa URL all'interno di una qualunque mail o altro canale di distribuzione analogo. Chiunque accederà alla URL si troverà davanti una pagina quasi identica a quella del social network che abbiamo utilizzato, e se "abbocca" a questo scherzetto, finirà per inviarci non solo le sue credenziali, ma anche tutta una serie di informazioni sulla sua località d'origine, tutte tratte dal suo indirizzo IP.

Figura 3. Esempio di pagina "fake" che simula il login di Twitter (click per ingrandire)Esempio di pagina "fake" che simula il login di Twitter
Figura 4. Dati catturati da SocialPhish (click per ingrandire)Dati catturati da SocialPhish

Si noti che le credenziali vengono automaticamente salvate anche su un file di testo.

Note finali

Come detto all'inizio, lo scopo di questo articolo non è quello di spingere gli utenti a creare strumenti di phishing. Anzi, l'obiettivo è quello di conoscere i modi in cui possibili malintenzionati possono trarci in inganno. Ad esempio, l'URL mostrata nella precedente Figura 3 evidenzia un semplice modo per identificare un sito malevolo: la pagina di login di Twitter non sarà mai su un dominio diverso da twitter.com. È quindi bene fare attenzione a questo genere di dettagli, non solo sul browser, ma anche su eventuali email (specialmente quando i mittenti sono sconosciuti, oppure nei casi in cui il contenuto è insolitamente sgrammaticato, o comunque sospetto).

Concludiamo questo articolo con un semplice video dimostrativo che riassume i passi descritti in precedenza:


https://www.youtube.com/watch?v=z0_geo1CKjo

Ti consigliamo anche