Twitter afectado por ataque de XSS

Esta mañana twitter arregló una vulnerabilidad que permitía injectar código JavaScript arbitrariamente dentro del site. Según se alega twitter conocía de este problema desde hace algún tiempo y no había hecho nada hasta que ayer se reportaron cientos de ataques.

Entre los ataques que se vieron se destacan el que le hicieron a Sarah Brown, esposa del primer ministro inglés. En este ataque se re dirigía a las víctimas a un site de pornografía, aparentemente basado en Japón.

Como funcionaba la vulnerabilidad es que twitter no estaba verificando del todo los url que convertia en enlaces. Basicamente twitter usa una libreria que añade links automaticamente a todos los url que los usuarios ponen en sus mensajes. Estos links son verificados y se le remueve cualquier tipo de código JavaScript que puedan tener. Pero parece que no estaban verificando correctamente después que encontraban el símbolo de @. Alguien se dio cuenta de esto y así nació esta avalancha de ataques.

Un ejemplo de un url que crearía un popup a cualquier usuario que hiciera hover:

twitter.com/gcollazo#@"onmouseover="javascript:alert('hola!');"/

Este tipo de vulnerabilidad en un site tan grande como twitter es un gran problema. Estas vulnerabilidades se usan para engañar a los usuarios y potencialmente robarles data.

Lección: Nunca debemos confiar en el “input” de los usuarios. Siempre debemos considerarlo venenoso.