¿El inicio de sesión de los dígitos de Twitter (sms auth code) es inseguro?

11

Twitter lanzó (hace algún tiempo) un nuevo kit llamado Digits que permite al cliente iniciar sesión con un número de teléfono y un código de autorización (recibido a través de sms). Me parece genial para la experiencia del usuario y estaba pensando en implementarlo en nuestra aplicación / sitio web también, pero ¿no es esto "muy" inseguro? Puedo imaginar varios problemas:

  • el número de teléfono es fácil de adivinar : esto permite que el atacante ejecute campañas SPAM ciegas exitosas incluso en función de la ubicación (estado, ciudad según el prefijo). Si la mayoría de los usuarios de Internet usaran números de teléfono en lugar de direcciones de correo electrónico, estoy seguro de que la cantidad de correo no deseado que reciben será mayor. Los spammers no tendrán que preocuparse por la recolección de direcciones de correo electrónico. Solo generarían números de teléfono con una buena posibilidad de detectar números válidos / activos.
  • el sms es inseguro : a diferencia del servicio de correo electrónico, el SMS no tiene un protocolo de autenticación (por lo que sé), DKIM, SPF, por lo que incluso los clientes experimentados no pueden verificar la integridad del remitente (es decir, si es Twitter o un número falso). Una vez que se registra / autentica con el número de teléfono, también establece SMS como canal de comunicación. Por lo tanto, no solo se envía el código de autenticación a través de SMS, sino que todas las comunicaciones (confirmaciones o lo que sea que envíe Twitter) se envían a través de un canal que no admite la autenticación. Esto es básicamente como el correo electrónico sin DKIM, SPF e incluso sin ningún filtro SPAM.
  • perturbación: bruta obliga a la mayoría de los números de teléfono válidos solo por diversión a generar perturbaciones (es decir, hacer que Twitter envíe códigos de autenticación a todos los números de teléfono posibles). Puede haber restricciones de IP razonables, pero no puedo ver esto deteniendo al atacante.
  • recolección de datos - > malware : el atacante encuentra qué números de teléfono están registrados en Twitter (ver Brute Force), les envía SMS (que parecen notificaciones de Twitter) con enlaces maliciosos.
  • phishing : el cliente puede estar más dispuesto a revelar un código recibido a través de sms que una contraseña. Si un formulario de phishing solicita un SMS recibido de Twitter (MITM), creo que el cliente está más dispuesto a proporcionarlo que una contraseña, ya que el código se recibe a petición (no se espera que sea un secreto que el cliente está recordando) y el proceso (espere el SMS y cópielo / péguelo) distrae al cliente de la página de inicio de sesión. También vale la pena tener en cuenta que la notificación por SMS cubre el encabezado de la interfaz de usuario (barra de direcciones).

    
pregunta themihai 28.04.2015 - 20:09
fuente

4 respuestas

8

Los dígitos aprovechan un solo 'factor' que se usa normalmente en la autenticación multifactor: "algo que tienes", que en este caso es tu teléfono. Sí, hay debilidades en la seguridad de un solo factor, al igual que solo usar una contraseña, pero hay fortalezas por encima de una contraseña simple, también.

  • disturbio : sí, un atacante podría enviar correo basura a la red del teléfono, pero eso no reduce la seguridad del proceso. podría crear un escenario DoS dependiendo de cómo se diseñen los dígitos en el backend.
  • recolección de datos - > malware : probé la demostración con un teléfono que no está registrado en Twitter y funcionó. No veo esto como una forma válida de descubrir usuarios de Twitter registrados para el phishing dirigido, no más que el spam general.
  • recolección de datos - > phishing : como investigador de phishing, puedo imaginar que esto podría ser cierto. Pero no estoy seguro de que un usuario sea realmente más susceptible al phishing de esta manera que cualquier otro tipo de phishing para contraseñas. No creo que entienda su situación de amenaza aquí.
  • el sms es inseguro : sí, SMS no es un canal seguro, al igual que el correo electrónico, pero recibe un código cuando ha activado el envío del código. No estoy seguro de que uno reciba un código gratuito y comience a buscar una aplicación en la que no haya iniciado sesión con el propósito de ingresarla. En cuanto a MITM, las mismas protecciones del sitio web se aplican a certificados, DNS, etc. y las amenazas serían comunes para los inicios de sesión basados en contraseña.

Dado su modelo de riesgo, no estoy seguro de que los dígitos sean menos seguros que una contraseña. Es un mecanismo de desafío-respuesta que usa un teléfono como un factor. El usuario puede utilizar las protecciones de la página de inicio de sesión y las protecciones personales del teléfono (bloqueos, encriptación, gestión remota) para hacer esto más seguro que un mecanismo de contraseña típico. Sí, todavía es un factor único, y sí, hay formas en que un usuario puede hacer esto inseguro, pero el mecanismo en sí no es intrínsecamente inseguro.

    
respondido por el schroeder 28.04.2015 - 20:31
fuente
1

Según este artículo en Wired, es.

enlace

El ataque: "... Los hackers, como él lo dice, llamaron a Verizon, se hicieron pasar por él y convencieron a la compañía para que redirigiera sus mensajes de texto a una tarjeta SIM diferente, interceptando sus códigos de inicio de sesión de una sola vez".     

respondido por el aaronvargas 17.07.2016 - 21:04
fuente
0

Sí, es inseguro, además de violar la privacidad de su usuario.

Esta solución ofrece a Twitter, el operador de telefonía móvil del usuario y los distintos gobiernos de los países donde Twitter y el operador mencionado tienen la capacidad de suplantar a sus usuarios en su plataforma sin que se den cuenta. Para que quede más claro: cualquier empleado o atacante no autorizado dentro de Twitter o el operador del usuario puede iniciar sesión como cualquiera de sus usuarios.

Y como si ya no fuera lo suficientemente malo, esto hace que Twitter esté al tanto de los horarios y ubicaciones (IP, agente de usuario, cualquier metadata del navegador) desde donde los usuarios inician sesión, por lo que Twitter ahora puede correlacionar esta información con la compilación un perfil del usuario, en qué sitios inicia sesión, en qué momentos y si tiene una cuenta de Twitter (basada en cookies, ya que controlan tanto el dominio de Dígitos como el dominio de Twitter normal) para que puedan contaminar su línea de tiempo con patrocinadores tweets basados en la información que ahora conocen sobre el usuario.

Finalmente, preguntar a los usuarios su número de teléfono no es una buena idea si desea que los usuarios se registren en su sitio. Como usuario experto en tecnología, no lo daría por las razones mencionadas anteriormente, pero la mayoría no lo hace. los usuarios expertos todavía se negarían a hacerlo solo para evitar el spam potencial de SMS.

    
respondido por el user42178 29.04.2015 - 08:23
fuente
0

Aquí hay dos problemas más para agregar a la lista:

  1. Inicie una autenticación de dígitos en su dispositivo con el número de teléfono de su objetivo. Luego, navegue por su destino para obtener el código de autenticación de la pantalla de bloqueo de su teléfono (use su dispositivo para tomar una foto del dispositivo de destino si es necesario). Ingrese el código en su dispositivo y estará en la cuenta del objetivo.

  2. Ya que está bloqueado en el dispositivo móvil por SMS, solo el propietario del dispositivo puede iniciar sesión en la aplicación desde ese dispositivo. Si el propietario le permite a alguien pedir prestado su dispositivo para acceder a los datos propios de otra persona (como lo haría un navegador web para revisar su correo en el dispositivo de otra persona), la forma obvia de autenticar (usando el número del dispositivo móvil en su mano) resultará en un acceso involuntario a la cuenta del propietario del dispositivo.

respondido por el David K. Hess 06.06.2015 - 19:00
fuente

Lea otras preguntas en las etiquetas