Agujero de seguridad en facebook

Hace unos días, hablando con un amigo, le expliqué que a mi parecer, todas las redes sociales son inseguras, que ninguna brinda la suficiente seguridad, como para que yo depositase en ella mis datos, y que por lo tanto, por eso no utilizo facebook, ni nada similar.

Mi amigo, me respondió que facebook era muy seguro, que con los millones de personas que lo usan, seguro que muchos expertos lo habían auditado, a lo que yo le contesté que no se fiase de eso, que sistemas mas grandes, como windows, tienen muchos agujeros de seguridad, y que la seguridad no depende del número de usuarios del sistema.

Al final, todo ello desembocó en una mini discusión y finalmente, en una apuesta. Apostamos a ver si yo era capaz de descubrir un agujero de seguridad en facebook, lo suficientemente peligroso, como para robar información o incluso suplantar a un usuario normal.

Pues bien, hoy, después de solo unas cuantas horas mirando facebook, ya he encontrado el primer agujero de seguridad, un XSS que a priori no parecía explotable, pero que al final, con un poco de picaresca, he conseguido explotar.

El bug consiste en un enlace especialmente preparado, que si el usuario entra, verá su facebook, sin trampa ni cartón, pero en el centro, tendrá un texto que le dice que ha habido un error, y que haga click ahí para continuar, si lo hace, podremos ejecutar código Javascript en el contexto de facebook, y con ello, robar su cookie, por ejemplo.

Es un XSS normal y corriente, pero que requiere que el usuario siga un enlace, lo cual reduce un poco el % de éxito y la peligrosidad, ya que un usuario experto, vería el truco.

El bug reside en ciertas aplicaciones de facebook, hasta donde he podido averiguar, es decir, el usuario debe tener instalado en su facebook, una aplicación, las típicas de encuestas y cosas de esas, una vez con la aplicación instalada y autorizada, este bug solo funciona en algunas aplicaciones, por lo que la forma de proceder es la siguiente:

  1. Mirar que aplicaciones tiene instaladas tu amigo, y ver si alguna está afectada por el bug
  2. Si no tiene ninguna, invitarle a que use alguna que sabes que está afectada por el bug, esto es muy fácil
  3. Una vez el usuario tiene la aplicación afectada instalada, ya podemos proceder.

Ojo, no estamos hablando de una aplicación maligna creada por nosotros, sino de aplicaciones normales y corrientes, de las que usa la gente, las cuales algunas, son inseguras.

Una vez nuestro amigo tiene alguna aplicación vulnerable instalada, solo necesitamos que visite un enlace especialmente preparado, que le mostrará un mensaje de error, y le pedirá que haga click para continuar, ese enlace, es el XSS, que de hacer click, podría permitir robar la cookie, y enviarla a un sitio de terceros.

Yo he hecho la prueba con la aplicación “EreS BuEn PoLvO?” (lo siento, es la primera que vi vulnerable), y el enlace con el XSS, es el que sigue:

http://apps.facebook.com/qeres-buen-pol-ceijh/?target=list&send_id=1517598431&x=24897%22%20href=%22%20javascript:alert(document.cookie);%22%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Ccenter%3E%3Ch1%20style=%22color:red;position:relative;left:-60px;%22%3EA%20ocurrido%20un%20error,%20haz%20click%20aqu%C3%AD%20para%20volver%3C/h1%3E%3C/center%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3Cbr%3E%3C/a%3E%3Cspan%20style=%22

En este ejemplo, el enlace es totalmente inofensivo, si hacemos click en el texto “se ha producido un error…” solo veremos nuestra cookie en un pop up del navegador, pero nuestra cookie no se envía a ningún sitio.

Bastaría con modificar el alert, por un document.location para pasar la cookie a un sitio de terceros.

Como se puede ver, ninguna red social es segura, cualquiera con tiempo, paciencia e imaginación puede aprovecharse de cualquier cosa para suplantarte o robar tu identidad, cuando tu solo has hecho 2 clicks que parecían inofensivos.

Evidentemente, he notificado este agujero a facebook, por lo que en poco tiempo es probable que deje de funcionar (si es que hacen caso).

Para los escepticos: si os parece que esto es poco peligroso (robar la cuenta de alguien con 2 clicks de la victima) lo tenéis muy fácil: salid del blog y seguid con vuestras vidas, esto es un blog de seguridad informática (y frikadas), por lo que poner comentarios diciendo que un XSS no sirve para nada, solo conllevará la eliminación de los mismos.

About these ads

53 Responses to “Agujero de seguridad en facebook”


  1. 1 DZPM abril 28, 2009 en 1:06 pm

    1) La vulnerabilidad no está “en facebook”, sino “en algún plugin de facebook”.
    Es muy difícil permitir la suficiente flexibilidad a los plugins garantizando que no puedan tener bugs.

    2) ¿”A” ocurrido un error? Se te ha caído una letra por el agujero ;-)

    Hay muchas aplicaciones que se valen de trucos así para obtener popularidad. En estos casos es más efectivo el botón “reportar aplicación”.

  2. 2 rabano abril 28, 2009 en 1:09 pm

    Te iba a comentar lo mismo que DZ, el error es de un portlet de Facebook, que a saber como estan hecho.

    De igual forma, comprometen la seguridad del sistema.

  3. 3 jcarlosn abril 28, 2009 en 1:09 pm

    Pero cuidado, DZPM, el agujero está en el sistema de plugins de facebook, no en la propia aplicación en si.

    Cualquier aplicación que permita ver una lista de apps (basicamente) utilizando esa API, está afectada, por lo que…

    ¿De que nos sirve aquí el botón reportar aplicación?

    La aplicación utiliza una API legitima, que está defectuosa, como muchas otras, de hecho puse una de ejemplo, pero echando un ojo rapidamente, hay mas afectadas.

    Por lo que considero que al exisitir el error en la propia API de facebook, el error está en facebook y no en el plugin.

    Es como cuando petan libpng, y petán con ello X programa que la usaba. Hay que considerar que el error es del programa? No, es de libpng.

  4. 4 jcarlosn abril 28, 2009 en 1:12 pm

    Adicionalmente, olvidando todo lo explicado, si yo puedo crear esa aplicación, meterla en facebook, y darte un enlace, ya hay XSS en facebook, es decir, la cookie que voy a recibir es la de facebook, no la de mi App. Por lo que, dejando a un lado los conceptos de arquitectura de facebook, el hecho final es que se roba la cookie de facebook, con un XSS, mediante acciones que no requieren privilegios, ni advierten al usuario de nada.

  5. 5 Emili abril 28, 2009 en 2:10 pm

    La seguridad de un sitio la marca el eslavon mas debil. En el momento que se aceptan pluguins de terceros es muy dificil hacer que todo el sistema sea seguro.

    De todas formas hay que utilizar bastante ingenieria social para hacer lo que dices. Crear tu propia aplicación y conseguir que tu victima la acepte podria ser mas sencillo. En tu aplicacion puedes añadir el javascript que quieras sin necesidad de bugs.

    Con un poco de suerte, las cookies de sesion estan vinculadas a la IP de cada usuario logueado. Por lo que leer las cookies serviria de poco si no utilizas la misma IP que tu victima. Lo has comprobado?

    Saludos!

  6. 6 blasfemia abril 28, 2009 en 3:29 pm

    Ahorita los denuncio a Facebook por hacer cosas indebidas.

  7. 8 Marc abril 28, 2009 en 3:44 pm

    El XSS de robar la cookie es fácilmente parcheable (no por robar la ID de sesión si no por evitar que se pueda utilizar desde otro sitio), el problema es que muchos desarrolladores no pueden dedicar las horas necesarias a revisar el sistema y incluso a veces estas redes sociales las montan desarrolladores/programadores sin ninguna idea de seguridad web.

    De igual forma, estoy de acuerdo contigo con que es un fallo de facebook, ya que es su obligación (o no) la de asegurar poner las suficientes limitaciones al desarrollo de aplicaciones para evitar el XSS.

    Aparte, no conozco la API de fuckbook como para afirmar nada, pero… ¿hay herramientas de validación de datos? porque un validador de variables GET para evitar el javascript: o el tag script es algo absolutamente necesario (entre otras muchas cosas).

  8. 9 alexarugues abril 28, 2009 en 3:45 pm

    Hola Emili,

    En teoría, los responsables de facebook intentan velar por la seguridad de los plugins (hasta cierto punto como hemos comprobado). Si realizas una aplicación claramente maliciosa, esta va a ser sin duda bloqueada por los webmasters de esta red social en cuestión. No siempre la cookie está relacionada con la ip si bien creo que no es el caso de facebook. En todo caso si tumbamos la ip original y spoofeamos la nuestra, podríamos inducir alguna cosita más a la conexión (no se si incluso se podría realizar un cambio de contraseña), en todo caso sería algo de lo que evidentemente no obtendríamos una respuesta…Me equivoco?

    • 10 alexarugues abril 28, 2009 en 4:00 pm

      Retiro lo de la password… no se puede automatizar pq te pide la anterior… Lo que si creo factible es automatizar una pregunta y una respuesta para resetear la cuenta…

  9. 11 hookdump abril 28, 2009 en 4:19 pm

    Muy interesante el agujero descubierto! Ya mismo hare un par de pruebas, me dio curiosidad =)

    Saludos!

  10. 12 Carlos abril 28, 2009 en 4:41 pm

    Alguien me puede decir qué riesgo se corre robando las cookies del documento? Qué tipos de datos van en esas cookies y como se puede utilizar para hacer daño a alguien? Por ahora no soy capaz de ver hasta donde llega el peligro.

  11. 13 dmgonzam abril 28, 2009 en 5:03 pm

    “si hacemos click”, es clic

  12. 14 dhduhd abril 28, 2009 en 7:55 pm

    y qué ganaste?

  13. 15 otromas abril 28, 2009 en 8:29 pm

    Me ha parecido muy interesante y he estado haciendo algunas pruebas. Veo que uno de los valores importantes de la cookie sería por ejemplo: XS, login_x, h_user, c_user, pero ninguno de ellos aparecen en la captura de la cookie, sólo aparecen datos que aparentemente no son útiles.

    Desde el punto de vista de la inseguridad de facebook (o de aplicaciones de terceros) por este agujero, ¿qué posibilidades nos aporta informaciones como: locale=es_ES, x-referer=http://www.facebook.com/home.php, …?

    Gracias por hacerme pasar una tarde entretenida ;)

  14. 16 jcarlosn abril 28, 2009 en 8:36 pm

    hola otromas,

    a mi si me coge todas las cookies de facebook, fijate que cuando estás en apps.facebook.com estás logueado, se ve tu usuario arriba etc, Esto sería imposible sin todas las cookies.

    Un saludo.

    • 17 otromas abril 28, 2009 en 9:09 pm

      Ummh… Si ejecuto el enlace sin estar logeado, primeramente me pide el usuario, y a continuación me muestra la aplicación con el mensaje de error. Los valores de la cookie que obtengo son los mismos que si ejecuto el enlace sobre una sesión abierta:
      locale, s_vsn_facebookpoc_1, test_cookie, s_cc, s_sq, presence y x-referer, si no me dejo alguno.

      ¿A ti te salen XS, login_x, h_user, c_user entre otros?

  15. 18 jakol ete abril 28, 2009 en 10:50 pm

    los programas nunca fallan, solo existen malos pensadores

  16. 19 John Doe abril 28, 2009 en 11:00 pm

    Recomiendo instalar el plugin de Firefox NoScript.

  17. 20 codigodeamor abril 29, 2009 en 12:11 am

    http://codigodeamor.wordpress.com/

    visiten, reinagurado desde hace poco y actuaizandoce cada dia.

  18. 21 Eduardo abril 29, 2009 en 6:30 am

    No es por maldad, pero logicamente este tipo de pluging que buscan el click enlacan y nos presentan accesos a publicidades en usan los datos a los cuales les hemos autorizado, estan basados en la popularidad.
    Nacen y mueren igual de rapidamente, no solo en facebook si no cualquier red social es por esta corta vida, que deben pensar enganches rapidos y llamativos continuamente (Que polvo eres, que personaje de ……, etc) , por eso no es raro que se queden bugs perdidos en ellos.
    Yo por eso y estoy de acuerdo contigo limito mucho los datos que facilito en estas redes, porque soy consciente de sus riesgos.

    Salu2.

  19. 22 necart abril 29, 2009 en 9:33 am

    Desde mi punto de vista (tecnicismos informáticos a parte), los agujeros de Windows no son comparables con los de Facebook y demás redes sociales. Porque Windows necesita tener esos agujeros para vendernos los antivirus y demás historias. Es negocio. En las redes sociales es que son unos dejados y punto.

    Yo uso esas redes sociales, pero directamente no pongo ni todos mis datos ni los completamente reales (Mis amigos no necesitan saber mi nombre completo, mi dirección o mi teléfono, porque ya lo conocen). Y si me roban la cuenta, poco van a sacar de ahí. Ademas, si hay quien consigue colarse en webs bancarias, ¿qué no podrán hacer con facebook?

    Un saludo, me ha parecido interesante.

    Necart.

  20. 23 HoLy KiLleR abril 29, 2009 en 9:36 am

    Que Genial
    muchas gracias

  21. 24 PiensoLuegoPiensoLuegoExisto abril 29, 2009 en 4:49 pm

    Clap, clap! Muy bueno! Creo que eso demuestra que no importa lo grande que se sea, siempre habrá un Talón de Aquiles en cualquier cosa.

    Parece que no fueron suficientes los problemas de Google, la gente sigue creyendo ciegamente en grandes redes sólo por eso, porque son grandes ‘y todo el mundo está ahí y no puede pasar nada’…

    Mis felicitaciones, me saco el sombrero!

    PD: Recuérdale a tu amigo que te pague la apuesta!

    Saludos
    PLPLE

  22. 25 Txarli junio 25, 2009 en 2:03 pm

    Internet Explorer 8 no me ha dejado abrir el sitio, modificando el contenido de la página para evitar un posible ataque de scripts de sitios.

    O sea que esa falla de seguridad es evitable escribiendo bien los navegadores.

    No he hecho más pruebas…

  23. 26 snake te pone critico !!! julio 20, 2009 en 10:20 am

    facebook es una lacra hay que eliminarlo te pude dibulgar tu privacidad aunque yo igual esa esa mierda !!!

  24. 27 carlos agosto 4, 2009 en 9:36 pm

    pero donde encuentro el cookis con la contrasena del facebook de la otra persona.

    gracias

  25. 28 carlos agosto 4, 2009 en 9:37 pm

    donde encuentro las cookis con el password del facebook de la otra persona.

  26. 30 nietas noviembre 4, 2009 en 6:02 am

    valla buena info ni enterado estaba xD y ami k me gusta jugar el farmville de facebook xD y solo por eso tengo uno xD

    • 31 Suymar enero 13, 2010 en 12:45 pm

      Hola, estamos haciendo un trabajo sobre fallos de seguridad en las redes sociales y tu articulo nos ha parecido muy interesante. Hemos pinchado en el link y vemos el error, pero al pinchar en él no nos aparece el pop up con las cookies. Agradeceriamos tu ayuda.
      Seria posible incluir algunos datos de tu articulo como ejemplo en nuestro trabajo?

      Gracias

  27. 32 oscaredoardo abril 9, 2010 en 11:30 pm

    chupenmee el tremen2

  28. 33 prpp diciembre 15, 2010 en 4:07 am

    Hola a todos, yo desearia saber como poner obtener el uid de facebook, me explico:
    Cuando alguien entre a mi sitio web, deseo obtener el uid del usuario facebook que está logueado en ese ordenador.

  29. 34 Luisa - muestras gratis de cosmeticos octubre 28, 2011 en 6:26 pm

    Hola que tal, valla esta explicacion aunque me parece muy avanzada para mi, entiendo que representa un riesgo para todos los usuarios de una red tan importante como facebook, asi que estare al pendiente de esto, muchas gracias por tan valiosa información.

  30. 35 coco marzo 3, 2012 en 4:39 am

    muy interesante

  31. 36 h2ct4r junio 27, 2012 en 10:57 pm

    Estoy viendo si puedo hacer una inyeccion SQL ya me dijo que es vulnerable la pagina esa,
    soy un hacker profesional
    (no soy de anonymous y sus ataques culeros)
    contactame al mi correo hectormanueltorrescalix7@gmail.com

  32. 37 koba.to mayo 6, 2013 en 8:32 pm

    At this time I am ready to do my breakfast, later than having
    my breakfast coming yet again to read other news.

  33. 38 David junio 18, 2013 en 10:08 pm

    Hoy en dia hay poca privacidad, incluso Google nos espia y ya no hablemos de Prism…


  1. 1 ¿Agujero de seguridad en Facebook? - Faceblog Trackback en abril 28, 2009 en 3:35 pm
  2. 2 Top Posts « WordPress.com Trackback en abril 29, 2009 en 12:28 am
  3. 3 Agujero de seguridad en facebook « Ministerios Israel Valenzuela Trackback en abril 29, 2009 en 3:18 pm
  4. 4 Redes Sociales Agujero de seguridad en facebook « Desvaríos informáticos Red Social en Internet Agujero de seguridad en facebook « Desvaríos informáticos Trackback en abril 30, 2009 en 4:09 am
  5. 5 Diazr » Vulnerabilidad crítica en Tuenti Trackback en abril 30, 2009 en 9:22 pm
  6. 6 ¿Donde está el Chapulín Colorado virtual? « Sueños Mentirosos Trackback en mayo 2, 2009 en 5:20 am
  7. 7 ¿Donde está el Chapulín Colorado virtual? « Jkrincon Trackback en mayo 23, 2009 en 4:04 am
  8. 8 GoRhY » Oculta los tests o encuestas de los demás en tu Facebook Trackback en junio 23, 2009 en 6:35 am
  9. 9 Aplicaciones vulnerables a ataques XSS en Facebook Trackback en julio 26, 2010 en 3:04 pm
  10. 10 En Internet no todo es perfecto « El gerundio del ocio Trackback en septiembre 1, 2010 en 3:05 am
  11. 11 En Internet no todo es perfecto | EL GERUNDIO DEL OCIO Trackback en octubre 5, 2010 en 7:59 pm
  12. 12 Agujero de seguridad en facebook Trackback en diciembre 27, 2010 en 4:22 pm
  13. 13 your input here Trackback en septiembre 15, 2014 en 2:35 am
  14. 14 far cry download for pc free Trackback en septiembre 15, 2014 en 7:13 am
  15. 15 keygen download Trackback en septiembre 15, 2014 en 8:33 am

Deja un comentario

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s





Seguir

Recibe cada nueva publicación en tu buzón de correo electrónico.

%d personas les gusta esto: