¿Cómo es vulnerable esta configuración de registro?

4

Estoy desarrollando una aplicación móvil para iOS y Android que, debido a las especificaciones proporcionadas por la administración, presenta algunas fallas de seguridad. Sin embargo, no puedo explicar en términos concretos por qué las especificaciones no son seguras y, por lo tanto, no puedo convencerlas de que cambien sus requisitos.

Algunos antecedentes; cuando implementamos el registro de usuarios, hay dos opciones para hacerlo: completar un número de teléfono móvil (y activar una verificación de SMS) o conectarse con Facebook. El backend es un RESTful API.

El primer defecto es que cuando nos conectamos con Facebook, todavía quieren que el usuario cree un nombre de usuario y una contraseña en la aplicación. Lo único para lo que quieren usar el inicio de sesión de Facebook es completar automáticamente algunos de los datos en el formulario de registro, como el nombre de usuario. Esto significa que el inicio de sesión de Facebook es esencialmente inútil ya que el backend nunca ve un token de inicio de sesión de Facebook exitoso. Todavía se reduce a datos enviados de forma.

El segundo defecto es que cuando nos registramos usando nuestro número de teléfono móvil, quieren que la contraseña se complete después de el paso de verificación de SMS. Así que el flujo es:

  1. registrarse con un número de teléfono móvil,
  2. obtener una verificación por SMS
  3. proporcione la contraseña. Esto significa que la persona que registró su el número de teléfono móvil no está garantizado para ser el que también está suministrando la contraseña.

Por supuesto, el inicio de sesión del usuario es lo que usted esperaría: complete el nombre de usuario / número de teléfono móvil y la contraseña. Siempre, incluso cuando se registraron a través de Facebook.

Mi pregunta es, ¿cuáles son algunos de los ataques que un pirata informático podría hacer para aprovechar una configuración de registro como esta? Tengo la intención de utilizar esta información para hacer un caso más concreto de por qué debería cambiar el flujo de registro.

    
pregunta markovchain 02.06.2018 - 06:42
fuente

1 respuesta

3
  

¿Cuáles son algunos de los ataques que un pirata informático podría hacer para aprovechar una configuración de registro como esta?

Aunque es muy probable que esto no le ayude en su caso a cambiar el flujo de registro, lo primero que viene a la mente es abusar de la función de SMS. Dado que solo se requieren un nombre de usuario y un número de teléfono, se puede utilizar para:

  1. Sacar a la compañía de los créditos SMS (según la configuración)
  2. Haga que la empresa tenga mala reputación para enviar mensajes de texto aleatorios (en caso de que el nombre de la empresa se utilice en el mensaje SMS).
  3. En un ataque de repetición, esto podría generar costos innecesarios.
  4. El flujo de registro de la empresa se puede utilizar como una "plataforma de broma".

Una mejor solución sería que un usuario ingrese un nombre de usuario, una dirección de correo electrónico y obtenga el número de teléfono mediante programación ( enlace ) desde la aplicación móvil.

Se envía un correo electrónico a la dirección de correo electrónico dada con un enlace de verificación. Cuando el usuario hace clic en el enlace de verificación del correo electrónico, se debe establecer una contraseña. Asegúrese de que una vez que se haya establecido la contraseña, el enlace de registro se invalide.

Además, el enlace de registro debe tener un tiempo de vida específico, por ejemplo, debe expirar después de X cantidad de tiempo.

    
respondido por el Jeroen - IT Nerdbox 02.06.2018 - 08:18
fuente

Lea otras preguntas en las etiquetas