Twitter horror

Non nutro una particolare simpatia per i social network più famosi, preferisco occuparmi delle implicazioni che possono portare in ambito di privacy e web security. Twitter è una piccola eccezione: mi piace perchè è immediato e semplice.

Twitter, come altri social network, è stato bersaglio di problemi di sicurezza nel corso del tempo. Recentemente ho notato, insieme a Rosario Valotta, un problema di sicurezza che poteva permettere ad un attaccante di prendere il pieno controllo di un account tramite il click su di un link da parte della vittima.

Più nel dettaglio il problema era relativo alla validazione dei parametri della query string: a causa di alcuni caratteri Unicode non correttamenti gestiti dall’applicazione e dall’output del nome del paramentro senza encoding era possibile far scattare un XSS richiamando una URL di questo genere:

http://twitter.com/testxss?<script>alert(‘xss’)</script>=%A2

Il problema della validazione dei caratteri unicode su Ruby On Rails, framework sul quale Twitter è basato, è stato risolto a Settembre 2009. Niente di nuovo, anche se non eravamo a conoscenza dell’articolo prima di fare indagini sulla vulnerabilità trovata. E’ buffo che nei primi giorni di Settembre, Brian Mastenbrook (a cui vanno i crediti per il problema degli Unicode su RoR), sul suo blog ha dichiarato:

After a few days of not receiving a response from either vendor, I decided to ping both of them to get an update. I pinged a security researcher who I knew worked at Twitter, and after a little back and forth things were quickly resolved and Twitter was patched.

Probabilmente hanno installato la patch senza fare code review dell’intero software o perlomeno delle funzioni utilizzate per la validazione dell’output.

L’XSS sul dominio twitter.com permetteva il pieno controllo dell’account della vittima al solo click di un link presente in un twit . Una falla innocente, come viene classificato l’XSS, in questo caso poteva innescare una infezione virale proprio per la natura su cui si basano i social network.
Tecniche come identity stealing, malware distribution e spam sarebbero state immediate.

Il video seguente dimostra in azione la vulnerabilità sfruttata da un JavaScript di poche righe scritto in qualche minuto:

Twitter dovrebbe curarsi maggiormente della sicurezza dei propri utenti, ed essi dovrebbero avere maggiore cura delle informazioni personali che pubblicano nel World Wide Web.

Disclosure:

  • 27 Ottobre: trovata la vulnerabilità
  • 28 ottobre:  Twitter avvisato del problema
  • 3 Novembre: Twitter riconosce il problema nella advisory di Brian Mastenbrook (ma non era già stata installata la patch?)
  • 10 Novembre: Twitter corregge la pagina di errore togliendo l’output del nome del paramentro
 

A quando la carta d’identità?

Facebook non ha nessun rappresentate ufficiale in Italia: l’unica sede in Europa è quella di Londra. Nessun problema fin quando non viene bloccato il proprio  l’account. Qualcuno ne sa qualcosa.

Senza dover andare troppo indietro, FBHive all’inizio di Giugno ha segnalato un bug che permetteva l’accesso incondizionato alle informazioni personali di qualsiasi account presente sul social netowork. La segnalazione  a Facebook è stata fatto il 7 Giugno e solo dopo il 23 Giugno, quando FBHive ha pubblicato un post,  il bug è stato preso sul serio e corretto nell’arco di qualche ora. Senza dover entrare troppo nel tecnico il bug permetteva, tramite la modifica a piacimento del parametro “userid”, inviato dalla pagina che gestisce le modifiche al proprio profilo personale, la visualizzazione delle informazioni personali dell’account avente l’userid specificato.

L’ultima moda di Facebook sono state le vanity url, ovvero la possibilità di legare (in maniera indissolubile) una URL breve al proprioprofilo. Una mossa, forse avventata, fatta per portarsi alla pari di altri tutti i social network concorrenti. Il cybersquatting era inevitabile e così è stato. Per correre ai ripari hanno attivato un metodo di verifica:

Prima di impostare il tuo nome utente, devi verificare il tuo account.

Prossimamente verrà chiesta la carta d’identità per poter usare un social network?

La privacy è sempre un concetto astratto, che nei prossimi anni si dovrà delineare. Questo concetto si evolverà con l’evolvere dei cittadini digitali che sempre più faranno coincidere la propria identità reale con quella virtuale.

Per ora manca la consapevolezza del Web: Internet ha memoria ed è sempre disponibile.
Facebook, come altri social network, è già la nostra carta d’identità on-line:  dati anagrafici, relazioni interpersonali, tendenze (politiche, sessuali,ecc..), ecc.

Si possono utilizzare tutti i social netowrk che si vuole, ma è necessario avere ben chiaro quale sarà il bacino di utenti che usufruirà delle nostre informazioni. A tal proposito consiglio la lettura della guida alla configurazione dei parametri sulla privacy previsti da Facebook e la policy scritta da Giovy.

 

Month of Twitter bug

Twitter Luglio sarà il mese dei bug legati  a tutti i servizi che utilizzano le  API di Twitter: Month of Twitter Bug (MoTB per gli amici) appunto.
Ieri sono stati pubblicati diversi XSS riguardanti il servizio bit.ly utilizzato per rendere più brevi le URL. La pericolosità degli XSS sta nel fatto che nell’account di bit.ly si possono inserire i profili di Twitter in modo da postare gli aggiornamenti direttamente da quel servizio. In questo modo un XSS può permettere all’attaccante di aggiornare l’account di Twitter della vittima senza che questa se ne accorga.

Per ora non sono state ancora pubblicate i dettagli del secondo servizio coinvolto a causa del fuso orario.
Per oggi 2 Luglio è statopublicato un XSS sul servizio HootSuite che permette la gestione di più account Twitter. Leggendo i commenti del post però sembra che ci siano altri XSS sul servizio oltre a quello segnalato dal MoTB.

L’idea è venuta ad Aviv Raff, già coinvolto nel Month Of Browser Bug creato da H.D. Moore, per mettere in luce quanto sia importante la cura della sicurezza dei servizi terzi che utilizzano le API di Twitter. Non ci vorrebbe molto a scrivere un worm che, sfruttando tutte queste vulnerabilità, impatti su un gran numero di utenti di Twitter.

Sarà sicuramente interessante leggere tutte le vulnerabilità che verranno pubblicate durante il mese.

 

Le Webmail sono morte, viva le Webmail

Il fenomeno Webmail 2.0 è scoppiato da quando Google con la sua Gmail, ha scosso i concorrenti proponendo svariati giga per archiviare la propria posta elettronica online.
Non sempre però va tutto come dovrebbe e succede che la privacy della propria casella viene messa a rischio da vulnerabilità XSS e CSRF; evidentemente di criticità media-bassa nella svariata maggioranza di casi.
In questo caso però, grazie alla somma di più problemi un attacker può modificare le configurazioni delle caselle di posta elettronica delle vittime, impostando l’inoltro automatico di tutte le mail in arrivo verso un account e-mail da egli controllato. In tal modo è possibile violare la riservatezza delle caselle delle vittime senza ricorrere ai comuni metodi di identity stealing (cookie stealing, credential stealing), ma semplicemente inviando e-mail, preparare ad arte, alle vittime.
La pericolosità di questa tecnica è resa critica grazie a tre fattori:

  1. semplicità di exploiting (cross-browser)
  2. scarsa awareness della vittima (nessuna interazione richiesta oltre all’apertura della mail stessa)
  3. diffusione sul web (ampia diffusione della piattaforma vulnerabile e possibilità di propagazione virale)

Sia chiaro, nessuna novità nella categoria delle vulnerabilità delle Web Application, ma una dimostrazione di come l’insieme di alcune di queste può portare ad uno dei più gravi problemi mai registrati on-the-wild su Web Application. I bug scoperti sono adatti per sfruttati da quello che potrebbe essere uno dei più grandi e gravi Worm delle Web Application: numero di domini Internet coinvolti maggiore di 10 (cross-domain) e semplicità di propagazione.

Prima di scendere nei dettagli del funzionamento dell’attacco è doveroso precisare che il problema è stato corretto a tempo di record dal vendor che si è dimostrato attento alla sicurezza dei propri clienti.

(Continua…)

 

Crittoanalisi alternativa

Security

Se gli attacchi di crittoanalisi matematica non funzionano, rimane sempre il metodo Rubber-hose.