Uno de los leaks de los que he hablado muchas veces es el famoso "leak del login", donde al final para saber si un usuario tiene cuenta o no en una plataforma, el atacante intenta, con el número de teléfono, dirección de correo electrónico o con el DNI ( o NIF) como vimos en el último ejemplo, "Recuperar la Contraseña", "Hacer Login", o "Crear directamente la Cuenta".
Si la plataforma tiene este leak y es "verbose", en algún momento del proceso de "Hacer Login", "Recuperar la Contraseña" o "Crear la Cuenta", dará un mensaje diferente si el usuario ya existe o si el usuario no existe en la plataforma. Con esta información, sabremos si la persona con ese número de teléfono, con esa dirección de correo electrónico o con ese DNI se ha sacado una cuenta en esa plataforma. Algo que puede ser muy valioso, com o cuento en la charla de "Big Data & AI for Bad Guys".
Figura 2: Big Data & AI for Bad Guys
Así que, para evitarlo, todas las plataformas tienen que evitar ese comportamiento diferente, y hacer que el proceso de la misma información tanto si existe como si no existe esa cuenta, y hacer las diferencias en las comunicaciones que se tengan directamente con ese número de teléfono o esa dirección de e-mail, como expliqué en el artículo de "Cómo evitar fugas de información en el proceso del Login, de Recuperación de Contraseña y de Creación de Cuentas".
El caso de TikTok con el Leak del Login
Probando con TikTok, me encontré con una curiosidad bastante curiosa. Como muchas otras plataformas, TikTok sufre de este problema de seguridad y privacidad en la "Recuperación de Contraseña", donde si pones una dirección de e-mail te dice si está registrada a una cuenta o no, lo que lo hace un buen candidato para nuestro "Dirty Business Card".
Probando una cuenta de e-mail no asociada a ninguna cuenta de TikTok vemos el mensaje claro de que la cuenta No existe, pero si damos con una cuenta que sí que está asociada, entonces nos da el Time-Out de 60 segundos para introducir el código de un solo uso para recuperar la contraseña.
Esto es un leak de privacidad que debería evitar TikTok con un proceso similar al que describe el artículo de "Cómo evitar fugas de información en el proceso del Login, de Recuperación de Contraseña y de Creación de Cuentas", haciendo que tanto si la cuenta está asociada como no, de en la web el mismo mensaje de resultado.
Figura 5: Proceso sin leak de información |
Lo curioso es que, en el caso del SMS el comportamiento no es "verbose", pero es aún más extraño aún. En este caso, si introducimos un número de teléfono para "Hacer Login" suponiendo que está asociado a una cuenta, la plataforma envía el SMS con el código al número y pone el contador a contar.
Pero si pones un número de teléfono que NO tiene asociada ninguna cuenta, también da el mismo Time-Out, lo que hace suponer que la cuenta existe. Pero NO existe, y aún así envía al dueño del número de teléfono con un mensaje que al dueño del teléfono le va a extrañar.
Figura 7: El proceso de Login es como si estuviera registrado.
Esto está bien, porque no es verbose, pero no debería enviar
el SMS a un número que no es cuenta de la plataforma.
Este comportamiento puede ser raro, e incluso ser utilizado en ataques de ingeniería social, haciendo creer a una persona que le han robado el número de teléfono y lo han usado para sacarse una cuenta de TikTok o... imaginación al poder.
Además, como veis en la imagen superior, algunas de las pasarelas SMS que utilizan en algunos servidores pueden dar problemas con el UNICODE del mensaje, y salen caracteres extraños, lo que puede preocupar aún más a usuarios y no usuarios.
Figura 9: Libro de "Cómo protegerse de los peligros en Internet" de José Carlos Gallego en 0xWord |
Sea como fuere, creo que TikTok, que es una plataforma que me encanta - aunque es verdad que me he tomado un tiempo de relax en la generación de vídeos, tiene que arreglar estos dos comportamientos, que no son correctos ninguno de ellos.
¡Saludos Malignos!
Autor: Chema Alonso (Contactar con Chema Alonso)
No hay comentarios:
Publicar un comentario