miércoles, 22 de septiembre de 2010

Twitter y sus cookies

Como explican los chicos de Securitybydefault en http://www.securitybydefault.com/2010/09/twitter-y-las-galletas-caducadas.html , twitter no está destruyendo realmente las cookies (ni siquiera aunque uno cierre sesión como dios manda xD) o al menos no en un tiempo razonable.
Esto qué quiere decir? quiere decir que se pueden reutilizar las cookies para continuar una sesión que fue abierta con las de la ley (con usuario y password correctos). De esta forma, quien se haga con nuestras cookies es capaz de utilizar nuestra cuenta.

Inconvenientes:
-Una vez obtenida la cookie el usuario malvado podría eliminar todos nuestros followers, agregar nuevos, insultar a mamá y papá, decirle a la novia que no la querés ver mas xD (podría no ser tan malvado), etc etc etc.

Algo bueno?:
-emm... digamos que si. Este usuario poseído, no podrá hacer cambios irreversibles como cambiar la contraseña o el mail asignado a nuestra cuenta, porque para ello debería conocer nuestra contraseña y estamos suponiendo que tenemos una contraseña segura y que no tiene relación alguna con el nombre de la cuenta ni el mail, ni nada tan predecible.

Realmente funciona? SISI, hace mas de 2hs cree una cuenta en twitter (luego de haber probado con mi cuenta privada) y aún se puede entrar utilizando las cookies.

Las cookies son las 12 siguientes:

.twitter.com    TRUE    /    FALSE    1285196450    __utmb    43838368.10.10.1285194542
.twitter.com    TRUE    /    FALSE    1348266650    __utmv    43838368.lang%3A%20es
.twitter.com    TRUE    /    FALSE    0    __utmc    43838368
.twitter.com    TRUE    /    FALSE    1348266650    __utma    43838368.1707552852.1285194542.1285194542.1285194542.1
.twitter.com    TRUE    /    FALSE    0    _twitter_sess    BAh7DzoVaW5fbmV3X3VzZXJfZmxvdzAiLXNob3dfZGlzY292ZXJhYmlsaXR5%250AX2Zvcl9zb3l1bmFwcnVlYmFtYXMwOhNwYXNzd29yZF90b2tlbiItMmRhMjM3%250AZTA5NTdjYmE0NjJhNDQ1YjE4Nzg1NDE0NTgzYmQ4NDBlMjoMdHpfbmFtZSIN%250AQnJhc2lsaWE6CXVzZXJpBMNcjgs6E3Nob3dfaGVscF9saW5rMDoHaWQiJTUy%250AYjY0YTg2ODZmZjM2ZWU1NTIyYWIwZjhiNzNlYjY5IgpmbGFzaElDOidBY3Rp%250Ab25Db250cm9sbGVyOjpGbGFzaDo6Rmxhc2hIYXNoewAGOgpAdXNlZHsAOgxj%250Ac3JmX2lkIiVjNzA1MjRiNjZlODFkOGE2ZWQ3MTI2NGRmOTVhN2QyNDoPY3Jl%250AYXRlZF9hdGwrCGomkDsrAQ%253D%253D--91b23fa140937e74c8499f08229b4484cc3d73c3
.twitter.com    TRUE    /    FALSE    0    auth_token    2da237e0957cba462a445b18785414583bd840e2
.twitter.com    TRUE    /    FALSE    1300962542    __utmz    43838368.1285194542.1.1.utmcsr=(direct)|utmccn=(direct)|utmcmd=(none)
.twitter.com    TRUE    /    FALSE    1285799324    k    190.230.174.206.1285194524262928
twitter.com    FALSE    /    FALSE    0    lang    es
twitter.com    FALSE    /    FALSE    0    tz_offset_sec    -10800
twitter.com    FALSE    /    FALSE    0    original_referer    4bfz%2B%2BmebEkRkMWFCXm%2FCUOsvDoVeFTl
twitter.com    FALSE    /    FALSE    1287786524    guest_id    128519452426515090

Para realizar la prueba es necesario copias las cookies anteriores a un archivo e importarlas a nuestro browser preferido (entiendase FIREFOX) mediante algún plugin como ser "Add N Edit Cookies", una vez importadas vamos a www.twitter.com y magia!! :P somos "soyunapruebamas".






Podemos ver las cookies importadas:




Las cookies _twitter_sess, __utmc, auth_token, lang, original_referer y tz_offset_sec expiran (teóricamente) al finalizar la sesión, pero claramente NO lo están haciendo.
__utmb expira: 09/22/2010 21:24:32.
__utmv expira: 09/21/2012 20:54:32
__utma expira: 09/21/2012 20:54:32
k expira: 09/29/2010 19:28:44
__utmz expira: 03/24/2011 07:29:02
guest_id expira: 10/22/2010 19:28:44


A las 21:15 del 22 de septiembre de 2010, habiendo expirado casi todas las cookies, aún es posible utilizarlas...


La misma prueba hecha en facebook nos demuestra el funcionamiento esperado de las cookies:
-Si no cerramos sesión, las cookies se pueden reutilizar.
-Si cerramos sesión, las cookies se invalidan y es necesario volver a autenticarse.


Esto a simple vista podría no parecer peligroso, pero sumado a la aparición de un bug XSS en twitter, es posible que nuestras cookies sean robadas y ya no podríamos invalidarlas cerrando la sesión.


Aca un poco mas sobre una de las cookies auth_token: http://domdingelom.blogspot.com/2008/12/all-your-twitter-are-belong-to-us.html .
Aca un poco mas sobre el bug XSS: http://www.rtve.es/noticias/20100921/twitter-sufre-mayor-ataque-su-historia-culpa-fallo-seguridad/355656.shtml .

Importen las cookies, prueben y no hagan destrozos a "soyunapruebamas", gracias xD.

Archivo cookiest.txt http://www.megaupload.com/?d=1JX7UNZJ .
Hash MD5: 973b5eff003532bb2f4508cfcd9c9f93  cookies.txt

4 comentarios:

  1. Una buena forma de evitar estos problemas con XSS es utilizando buenos clientes como twhirl,tweetdeck, etc. :D

    ResponderEliminar
  2. Detalle a tener MUY en cuenta xD, al copiar las cookies al editor de blogspot, me reemplazo las tabulaciones por espacios y de esta forma no se pueden importar directamente al browser y es necesario cambiar los espacios por tabulaciones. Haciendo eso todo va de perlas.

    ResponderEliminar
  3. Agregado el archivo formateado correctamente, descargable desde MU.

    ResponderEliminar
  4. La cuenta fue desactivada por algún motivo, pero la cookie me permitió reactivarla xD y con la misma cookie se puede seguir utilizando la cuenta...

    ResponderEliminar