mercoledì 28 settembre 2011

Facebook traccia gli utenti anche dopo logout, smentita del network?


L’hacker Nic Cubrilovic ha pubblicamente accusato Facebook di tracciare le attività dei suoi utenti anche dopo l'effettuazione del "logout". Facebook ha definito questo "piccolo inconveniente" come un "bug", ma le numerose critiche ricevute hanno costretto il social network ha fornire delle spiegazioni più plausibili. Il ricercatore, dopo aver effettuato una serie di test analizzando le intestazioni delle richieste HTTP inviate dal browser web al dominio facebook.com, ha verificato come il social network alteri il contenuto dei suoi cookie nel momento in cui viene effettuato il logout dal servizio anziché provvedere ad una loro rimozione. 

Poiché il dato che consente di identificare in modo univoco l'account Facebook usato dall'utente resta conservato all'interno del cookie. "Anche se sei disconnesso, Facebook sa ancora e può tenere traccia di ogni pagina visitata . L'unica soluzione è eliminare tutti i cookies di Facebook nel tuo browser, oppure utilizzare un browser separato per le interazioni su Facebook", ha affermato con certezza l'australiano. Ecco come appaiono le intestazioni HTTP in merito alle richieste di facebook.com. In primo luogo, una richiesta normale per l'interfaccia web come un utente connesso invia i seguenti cookie:


La richiesta per la funzione logout vedrà, quindi, questa risposta dal server, che tenta di disinserire i cookie seguenti:


Per rendere più facile vedere le impostazioni dei cookies, i nomi sono in corsivo. Se si confrontano i cookie che sono stati impostati in una richiesta di accesso, e si confrontano con i cookie che vengono usati per la richiesta logout, presto si saprà che ci sono un certo numero di cookies che non vengono eliminati, e ci sono due cookie (local e lu) che ricevono solo nuove date di scadenza, e vengono impostati tre nuovi cookie (W, fl, L). Adesso, facendo una successiva richiesta a facebook.com come 'logout' utente:


I cookie primari che identificano un utente sono ancora lì (act è il numero dell'account), anche se si sta guardando una pagina di logout. La richiesta disconnessione ancora invia nove diversi cookie, tra i più importanti quelli che identificano l'utente. "Questo non è ciò che il 'logout' dovrebbe significare - Facebook altera solo lo stato dei cookie, invece di rimuoverli tutti quando un utente si disconnette", sottolinea Cubrilovic. E prosegue: "Con il mio browser registrato da Facebook, ogni volta che visito ogni pagina con un pulsante, come Facebook, o il tasto azione, o qualsiasi altro widget, le informazioni, compreso il mio ID account, è ancora in fase di invio a Facebook. L'unica soluzione per Facebook non sapere chi sei è quello di cancellare tutti i cookie Facebook".


Questa storia ha riportato alla mente l'esperto ad un esperimento che aveva effettuato qualche tempo prima. Nic Cubrilovic aveva creato creato un certo numero di falsi account di Facebook dopo aver abbandonato il suo browser. Dopo aver utilizzato i falsi account per qualche tempo, ha scoperto che venivano suggeriti al suo reale account come un amico. Facebook in qualche modo sapeva che erano tutti provenienti dallo stesso browser, anche se aveva effettuato la disconnessione. Ci sono gravi conseguenze se si utilizza Facebook da un terminale pubblico. 

Se si effettua il login su un terminale per l'accesso e poi preme 'Logout', si stanno ancora lasciando le proprie "impronte digitali" che restano registrate (sotto forma di cookie) fino a che qualcuno esplicitamente non cancella tutti i Facebook cookie per quel browser. Associare un ID account con un vero nome è facile - come l'ID stesso ID viene utilizzato per identificare il profilo. "Facebook conosce ogni account di Facebook che ha avuto accesso da ogni browser e utilizza tali informazioni per suggerire gli amici. La forza del valore 'stessa macchina' nell'algoritmo che elabora gli amici da suggerire può essere bassa, ma succede ancora. Questo è anche facile da testare e verificare", conclude l'hacker.


Se si desidera visualizzare i registri sono salvati qui. In particolare i cookie vengono mantenuti dopo il logout e le richieste successive, e il cookie a_user, che contiene l'user ID dell'utente, viene mantenuto per il riavvio della sessione. Ma soprattutto, lo stato della connessione viene mantenuta attraverso queste connessioni HTTP. In questo modo, secondo l'esperto, anche se l’utente effettua la disconnessione dal sito può essere comunque tracciato sui siti Web che contengono i Social Plugins di Facebook. 

Nik Cubrilovic spiega di aver segnalato il problema a Facebook in più riprese, inviando questo problema via email il 14 novembre 2010 e successivamente il 12 gennaio 2011, ma di non aver mai ricevuto risposta in merito. Finalmente, dopo questa pubblicazione che ha suscitato una marea di polemiche, Facebook è dovuto intervenire ufficialmente spiegando attraverso il portavoce Arturo Bejar, un ingegnere della piattaforma, che i cookie rilasciati al momento del logout sarebbero usati per motivi legati alla sicurezza e che non verrebbero utilizzati per tracciare gli utenti, né per raccogliere informazioni per poi rivendenderli a terzi, come si legge sulla pagina dedicata nel Facebook Help Center.

Dopo aver valutato la procedura e aver sancito come "bug" la persistenza dell’ID utente all’interno del browser, Facebook è intervenuto per rimuovere l'user ID ma continua a conservare altre informazioni (quali accesso alla piattaforma, browser utilizzato, ecc.) per finalità quali la lotta allo spam, phishing ed ai bot. Cubrilovic avverte di aver già identificato altri difetti simili nel funzionamento di Facebook, pertanto consiglia di eliminare i cookie manualmente dopo ogni sessione o utilizzando software appositi

Il problema ci riporta all'agosto 2011, quando i ricercatori dell'Università di Berkeley hanno scoperto che alcuni dei siti più popolari del web (tra i quali lo stesso Facebook) utilizzano un servizio di monitoraggio che non può essere evitato - anche quando gli utenti bloccano i cookie, disattivano la memorizzazione in Flash, o utilizzano la navigazione in "incognito" dei browser. Per poter effettuare un "logout definitivo" è possibile utilizzare il plugin appositamente creato dai ricercatori Ashkan Soltani e Brian Kennish e disponibile per il vostro browser collegandovi a questa pagina.

Nessun commento:

Posta un commento