Una vulnerabilidad de Facebook permitía secuestrar cuentas
Credit to Author: Naked Security| Date: Wed, 20 Feb 2019 11:40:37 +0000
Si eres un experto en seguridad en busca de un buen programa de recompensas por la caza de bugs, Facebook puede ser un buen lugar donde empezar.
Esta red social ha sufrido gran cantidad de molestos fallos de seguridad durante los últimos años, a los que ahora se les puede añadir una vulnerabilidad que permite saltarse la protección CSRF (del inglés Cross-site request forgery o falsificación de petición en sitios cruzados) que podría permitir secuestrar una cuenta de usuario de varias formas.
Descubierta por el investigador “Samm0uda” en enero, el problema se centra en lo que técnicamente se conoce una URL vulnerable “endpoint”, en este caso facebook.com/comet/dialog_DONOTUSE/?url=XXXX. El investigador explica:
Este endpoint se encuentra en el dominio principal www.facebook.com lo que hace más sencillo a un atacante el engañar a sus víctimas a visitar el URL.
Los ataques CSRF ocurren cuando un atacante engaña a un usuario a visitar un enlace malicioso que envía instrucciones a una web vulnerable que parecen provenir del navegador del usuario.
Todo lo que se necesita para que funcione es que el usuario debe estar autenticado cuando esto ocurre, aunque el usuario no se da cuenta de que está ocurriendo algo.
Esta técnica ha sido muy popular durante años, por lo que las webs utilizan tokens anti-CSRF, que se cambian cada vez que hay una petición de cambio de estado.
En este caso, el investigador fue capaz de saltarse la protección añadiendo fb_dtsg al token CSRF en el POST del cuerpo de la petición como parte del engaño.
En un abrir y cerrar de ojos
Un ataque exitoso permitiría a un ciberatacante publicar en el muro del usuario, cambiar su foto de perfil y engañarlo a borrar su cuenta.
Sin duda, el secuestro de la cuenta realizado al cambiar el correo de recuperación del usuario o su número de teléfono sería más complicado al necesitar que la victima visitara dos URL, uno para hacer el cambio y otro para confirmarlo.
Por lo que para saltarse esto, tendría que buscar endpoints donde esté presente el parámetro “next” para que el secuestro de la cuenta se pueda realizar con un único URL.
Ese paso extra es lo que redujo la recompensa de Samm0uda de 40.000$ (para secuestros que no requieran intervención adicional del usuario) a 25.000$ (para los que sí).
El 31 de enero, cinco días después de informar a Facebook, se solucionó el problema, según dijo el experto.
Las vulnerabilidades en Facebook se han convertido en un tema recurrente, incluyendo una gran filtración que afectó a casi 50 millones de cuentas el pasado septiembre, después de que los atacantes explotaran una vulnerabilidad para robar unos tokens de acceso.
Poco después, un investigador informó como cualquier usuario podía convertirse a sí mismo en administrador de cualquier cuenta de Facebook Business.
Como en este último caso, estos problemas han proporcionado a sus descubridores una buena recompensa. De hecho, Facebook dijo en diciembre que había pagado 1,1 millones de dólares durante 2018, 7,5 desde 2011.
Para una empresa tan grande y rentable como Facebook, eso es una miseria. ¡Larga a la vida a los investigadores!
Para manteneros al día de las últimas amenazas haceros fans de nuestra página de Facebook o síguenos en Twitter para intercambiar experiencias en torno al mundo de la seguridad. Si deseas recibir nuestro boletín de seguridad en tu correo electrónico, suscríbete en la siguiente aplicación: