MegaLab.it
Stampa Articolo
Aperiodico gratuito di informatica
 
20101115204448_2043109691_20101115204416_420858487_EBMSflln8Fl.png

Facebook e sicurezza: sfatiamo le credenze e i falsi miti

22/12/2011 - articolo
Sicurezza - Facebook è ormai diventato il social network più famoso e utilizzato in tutto il mondo con i suoi milioni e milioni di utenti. Per questo motivo sta diventanto il bersaglio preferito per molti cybercriminali che sfruttano la popolarità del sito per diffondere vere e proprie catene "semi automatiche" a scopi lucrosi.

Introduzione

Quanti di noi, che utilizzano Facebook, si sono visti taggati in qualche messaggio di un nostro amico, asserendo di essere ripresi in qualche video sconcertante, cosa in realtà rivelatasi falsa? Io ho ormai perso il conto.

Queste catene che si diffondono con tale rapidità sono veicolate per mezzo di diverse tecniche: una fra le tipologie di attacco più comuni che colpiscono gli utenti del social network è il "clickjacking", utilizzato massicciamente così da condividere involontariamente il contenuto indesiderato.

Cliccando su di un elemento in una pagina appositamente programmata il click viene catturato e reindirizzato, ad insaputa dell'utente, su di un altro oggetto. Per indurre l'utente a cliccare si cerca di "smuovere" la sua curiosità lanciando delle vere e proprie esche "appetitose", come foto "compromettenti" di personaggi famosi e contenuti sexy.

Tipologie dell'attacco

Questo attacco può essere portato a termine in due modi: utilizzando in modo improprio i Javascript o sfruttando un IFRAME nascosto.

Il clic dell'utente su un elemento di una pagina HTML viene gestito dalla funzione event handler, che una volta riprogrammata con parametri differenti, reindirizza il click dell'utente verso destinazioni del tutto diverse da quelle da lui volute.

Il malintenzionato sfrutta un IFRAME - un elemento HTML incluso nella pagina - che permette di caricare all'interno di questa una qualsiasi altra pagina web. Per renderlo invisibile l'attaccante imposta l'elemento trasparente mediante CSS impostandolo trasparente. I click effettuati sulla pagina web visibile vengono in realtà eseguiti su quella celata.

Il perché di tutto...

Dietro queste attività truffaldine si celano motivi economici. Infatti più utenti condividono quel contenuto, maggiore sarà la sua visibilità.

Più il numero di click aumenta, più si riempiono le tasche dei criminali.

Di conseguenza c'è una crescita continua delle minacce scoperte nei social network come evidenziato da questo grafico elaborato da Sophos Lab.

Immagine.png

Nelle prossime pagine...

In seguito analizzeremo uno degli innumerevoli casi capitati tra le nostre mani, in modo da divenire più consapevoli riguardo questi fenomeni e concluderemo l'articolo inserendo alcune precauzioni da prendere quando usufruiamo di un social network come Facebook.

Tutto comincia da una Tag

Fimmagine.png

Il messaggio è composto tramite stringhe preimpostate: ciò significa che al posto della frase "che ci fai in questo video" possiamo trovare "Guarda ti hanno ripreso in questo video": per tutte le possibili combinazioni vi rimandiamo alla prossima pagina. Il nome che compare nel post dove siamo stati "taggati" è preso dal nome del nostro account di Facebook.

First.jpg

Il fantomatico Controllo di sicurezza Facebook

Second.jpg

Babburubu2.png

Snap.png

Blocco.php e "Offerte"

Caricando questa pagina si vedrà un finto player di YouTube, che è in realtà una rozza immagine jpeg ospitata sul sito Imageshack.

Il finto player è però sormontato dalla finestra Controllo Sicurezza Video che non può essere chiusa impedendo la visualizzazione del video e "obbligando" l'utente a completare una delle offerte proposte.

Snap2.png

Analizzando il codice sorgente si nota che nella testata della pagina è presente il codice di monitoraggio fornito da Histats utilizzato per profilare al meglio i propri visitatori ed incrementare le future visite.

Ora potrò vedere questo filmato?

Dopo aver completato un'offerta (ed aver aiutato l'autore della truffa a raggranellare qualche soldo) il video "sconcertante" che viene visualizzato è questo: ovviamente noi non siamo ripresi nel filmato.

Attenzione! Potrebbe urtare la vostra sensibilità.

Voglio saperne di più!

Maggiori informazioni e un'analisi più dettagliata sono presenti nella pagina successiva.

Questo articolo è stato scritto dopo che la truffa era già stata debellata dal team di Facebook, quindi non abbiamo potuto testarla direttamente. Per condurre quest'analisi ci siamo basati principalmente sull'analisi dei file sorgente. Per questo motivo invitiamo tutti i lettori a segnalare eventuali imprecisioni ed errori.

Un file flash molto particolare

Tramite questo file vengono visualizzate in successione le seguenti schermate:

Image 1.jpg

Un finto player identico a quello di YouTube:

Babburubu.png

Il fantomatico controllo di sicurezza Facebook

Soffermiamoci qualche secondo su questa parte:

Decompilando il file SWF abbiamo rinvenuto il seguente ActionScript:

Cod1.png

Appena si clicca sull'elemento Button 14 viene eseguito l'ActionScript sopra riportato che memorizza negli appunti del proprio OS questa stringa:

Cod2.png

Allo stato attuale il Javascript non può funzionare perché manca la J iniziale.

Sfruttando questo espediente del file SWF si conduce una truffa che funzionerà su i più disparati sistemi operativi e browser, a patto però che su di essi sia presente Adobe Flash Player 8 o superiore (rilasciato nel 2005) e che i Javascript siano attivi.

L'ultima schermata mostrata dal file SWF è questa:

Babburubu2.png

Digitando la J l'utente ha completato lo script Javascript, premendo CTRL + V ha incollato il contenuto degli appunti di Sistema. Premendo Invio il comando viene eseguito dal Browser, che carica il contenuto di fb.php.

Fb.php

Inizialmente viene eseguita la funzione overlay() che crea un nuovo div nella pagina, una sezione, e gli assegna proprietà per renderlo quasi identico ad un reale avviso di Facebook.

Cod3.png

Questa è l'immagine visualizzata:

Verify.png

Successivamente viene invocata la funzione readCookie ('c_user') che si occupa di ricavare l'ID dell'utente che ha "abboccato": in particolare il document['cookie']. La maggior parte dei nomi assegnati alle variabili sono offuscati, tuttavia si può comunque dedurre che viene estratto il cookie 'c_user' tra quelli memorizzati sul computer. Un rapido controllo dei cookie ci permette di accertare che il numero che la funzione restituisce è quello nella forma 100000xxxxxxxxx, ovvero nella forma dello user_id.

Cod4.png

Questa porzione di codice contribuisce a creare una XMLHttpRequest e tramite una richiesta GET viene caricata una pagina che contiene ID e nomi dei nostri principali amici.

Cod5.png

Quindi vengono effettuate operazioni per avere una variabile friends utilizzabile dalla funzione contin, controllata da setTimeout che genera traffico verso Facebook.com dopo 2000 millisecondi dall'esecuzione delle funzioni precedenti.

Più precisamente, la funzione contin()svolge le seguenti azioni:

La variabile _0x62cbx17 assume come valore il numero di amici; se maggiore di 30 tale valore viene forzato a quest'ultimo numero.

Dopo la solita danza di richieste GET e POST, a riga 129 si entra nel ciclo for che genera il messaggio message, estraendo da p1, p2 e p3 un elemento random attraverso la funzione randomValue() definita precedentemente e unendo il tutto con un join(). La struttura di un messaggio è quindi: saluto (es. Ciao, OMG, ROTFL!!), nome dell'utente, domanda (es. che ci fai, ti hanno taggato) e la stringa in questo video, con due punti di domanda o un punto esclamativo. È interessante notare come questa caratteristica dello script permette una traduzione rapida e una diffusione internazionale; senza troppi problemi è possibile replicare questo script modificando i tre array p1, p2, p3 e poche altre parti del codice.

Cod6-1.png

Cod7.png

Il messaggio viene inviato con _0x62cbx2b['send'](_0x62cbx29) (riga 140) aggiungendo a _0x62cbx29 stringhe particolari per rendere comprensibile a Facebook la richiesta di pubblicazione: la spiegazione passo-passo di questa parte (riga 134) appesantirebbe inutilmente l'articolo, basti sapere che è con quel passaggio che viene condivisa la catena.

Cod6-2.png

Sfruttando un ciclo for viene ripetuta l'azione di pubblicazione del link nocivo per un numero di volte pari a quello degli amici _0x62cbx17. Ora vediamo la parte riguardante la pagina blocco.php.

Blocco.php e "Offerte"

Come abbiamo già accennato precedentemente in questa pagina è presente un falso video di YouTube che può essere visionato solo dopo aver completato almeno una delle offerte proposte.

L'immagine JPEG del falso player è la seguente:

Fake_yout_player.jpg

Analizziamo la sezione del codice sorgente della pagina relativa a quest'immagine:

Cod9.png

Esaminando questa sezione del codice sorgente è facile intuire che - dopo aver completato le offerte - cliccando sull'immagine del falso player, la vera pagina relativa al video di YouTube verrà caricata in una nuova scheda, come indicato con target="_blank".

Le offerte che precludono la fruizione del video sono mostrate da Crazylead. Questo sito permette una pratica discutibile che consente ai propri utenti di guadagnare lasciando completare ai visitatori delle offerte presenti sui siti affiliati.

Histats.com

Inoltre è presente il codice di monitoraggio fornito da Histats.com: Histats è un sito online di analisi che consente ai propri clienti di inserire codici traccianti sui loro siti web e permette di analizzare le statistiche sulle visite in tempo reale.

Le informazioni raccolte quando si visita la pagina sono il Browser e il sistema operativo in uso, l'indirizzo IP, il tempo trascorso sul sito, il sito dal quale si proviene: tutte queste informazioni vengono sfruttate dal malintenzionato per profilare al meglio i propri visitatori ed incrementare le future visite.

Conclusioni

Siamo ormai giunti a conclusione di questo articolo, speriamo di aver sfamato la vostra curiosità e di aver risposto ai vostri interrogativi. Vi poniamo un'ultima domanda.

Questa truffa sfrutta quasi esclusivamente il fattore umano, quindi un modo efficace per proteggersi da queste minacce è quello di ricordare i vecchi episodi e di navigare con cautela.

Una protezione parziale di supporto viene comunque fornita dalle seguenti applicazioni che ci avvisano in presenza di contenuti potenzialmente pericolosi sul nostro profilo o tra i messaggi dei nostri amici come BitDefender Safego, Norton Safe Web, Defensio e MyPageKeeper.

Gli utenti di Firefox possiedono una difesa in più: NoScript, famoso componente aggiuntivo, che fornisce una protezione avanzata contro il clickjacking, previene l'esecuzione di script e plugin indesiderati o pericolosi e mitiga le vulnerabilità di Cross-site scripting (XSS).

Anche questo non basta...

Purtroppo come ben sappiamo nessun prodotto è in grado di garantirci una protezione completa ed efficace al 100%, ma combinando una navigazione consapevole e l'utilizzo di strumenti specifici il rischio di cadere in queste truffe si riduce notevolmente.

Alcuni consigli utili:

MegaLab.it rispetta la tua privacy. Per esercitare i tuoi diritti scrivi a: privacy@megalab.it .

Copyright 2008 MegaLab.it - Tutti i diritti sono riservati