Una brutta sorpresa ha accolto quest’oggi gli utenti di Twitter. Una vulnerabilità insita nel social network che milioni di persone utilizzano quotidianamente per pubblicare messaggi brevi, ha permesso il verificarsi di una serie di attacchi XSS (“cross site scripting attacks“), molto simili a quelli che ha subìto YouTube lo scorso mese di luglio (ved. questa notizia).
Le vulnerabilità XSS, delle quali abbiamo parlato in questa pagina ed in questi articoli si rilevano sempre estremamente pericolose.
Nel caso dell’attacco odierno a Twitter, gli aggressori sono stati in grado di inserire codice JavaScript nei messaggi pubblicati sul servizio di “microblogging”. Se un sito web consente ad un utente di inserire dei contenuti ed esporli sul web, è necessario che venga sempre effettuata un’attenta analisi dei dati introdotti: le informazioni debbono essere filtrate o codificate in modo tale che eventuali codici HTML, JavaScript o VBScript non vengano accettati in ingresso.
Twitter converte gli URL inviati dagli utenti in un collegamenti ipertestuali cliccabili. Gli aggressori hanno notato che in caso di utilizzo del simbolo “@
“, il processo di conversione non aveva luogo in modo corretto. Grazie a questa “svista” in fase di sviluppo, si è trovato così il modo per inserire del codice JavaScript nei “cinguettii”. Con tutte le spiacevoli conseguenze che ne derivano.
Dal momento che il codice JavaScript inserito nel messaggio di testo viene eseguito nel contesto del dominio “twitter.com”, lo stesso codice ha così libero accesso a tutte le altre funzionalità del sito, compresa la possibilità di pubblicare nuovi “tweet“.
Ed ecco che sul social network sono cominciati a comparire migliaia di messaggi che causavano l’apertura di siti web a sfondo pornografico o la comparsa di elementi grafici arbitrari nelle pagine del servizio.
Come spiega Graham Cluley di Sophos, gli aggressori hanno basato tutto l’impianto dell’attacco sull’uso dell’evento JavaScript onMouseOver
che, come noto, provoca l’esecuzione di codice non appena il puntatore del mouse viene portato su un particolare elemento. Il video in calce mostra ciò che è accaduto.
Twitter ha comunicato di aver definitavamente risolto il problema.