jueves, 10 de diciembre de 2015

Bug grave en Lovoo: El like infinito

En esta ocasion y viendo que mi post vulnerabilidades de Badoo tuvo un existo mucho mayor del esperado, decidí crearme un perfil de la red social Lovoo solo para comprobar su seguridad como ya hice con Badoo, no obstante, tras varios test, la unica vulnerabilidad grave que encontré fue la siguiente:

Bug del like infinito (Fallo grave):

Al parecer recientemente cambiaron la interfaz de Lovoo añadiendo la funcion de dar likes a las fotos. Estas fotos guardan la referencia de las personas que dieron like y un contador de likes aparte que hace mucho mas simple las consultas a los perfiles de usuario a los servidores. No obstante, por un descuido de los desarrolladores, cuando pulsas el boton like en una foto el contador incrementa, pero si decides quitar el like, este no decrementa. Como resultado, si haces click repetidamente en el boton del like, puedes dar a esa foto los likes que quieras, incluso si la foto es tuya propia. Este proceso se puede automatizar con programas como Fiddler web debugger. Usando Fiddler, se podría automatizar el proceso durante horas si se quisiera (obteniendo miles y miles de likes), no esta del todo comprobado pero yo lo hice funcionar durante 10 minutos obteniendo mas de 1000 likes y no hay captchas ni nada que te detenga.

Captchas poderosos muy mal utilizados:
La version web de Lovoo utiliza un metodo de captcha muy poderoso de "reCaptcha" en el que el usuario debe seleccionar 2 o 3 fotos con muy mala calidad y a veces manipuladas que contengan lo que se le pide (Se permite seleccionar una imagen incorrecta como maximo). Este captcha solo se usa en las nuevas solicitudes de chat, los cuales tienen limite diario, lo cual convierte a este capcha en algo inutil.

A continuación os comento rápidamente otras vulnerabilidades menos importantes relacionadas con las fechas y horas, las cuales deberían estar ocultas al usuario:

Revelación fecha de creación de los usuarios:
Igual que ocurria con Badoo, en Lovoo el ID de usuario consiste en 24 cifras hexadecimales, de las cuales solo las primeras son la ID de usuario, siendo las ultimas una verificación para que la gente no vaya curioseando quien se creó la cuenta de Lovoo 5 segundos despues como si se podia hacer en Badoo. Estas IDs de usuario se crean secuencialmente permitiendo estimar cuanto tiempo lleva creada una cuenta.

Fechas y horas precisas:
Pero... La cosa no acaba aquí: Cuando la aplicación accede a un usuario, sus fotos tienen una fecha de subida y el usuario una fecha de ultima conexion entre otras fechas. Estas se muestra en la web con mensajes que dan muy poco detalle como "Hace un par de semanas" o "Hace una hora", pero si vemos la respuesta que ha mandado el servidor, dentro de la respuesta encontraremos parametros como "CreatedAt" en el caso de las fotos o "LastOnlineTime" en el caso de la fecha de ultima conexión, que contienen un numero.
Este numero es equivalente al entero de 32 bits que transformado en time_t es la fecha y hora GMT con precisión de un segundo.


No hay comentarios:

Publicar un comentario