¿Las verificaciones de números de teléfono con enlaces HTTP mágicos de SMS son menos seguras que OTP?

Aug 21 2020

Quiero verificar la propiedad del número de teléfono con una carga especialmente diseñada y encriptada dentro de una devolución de llamada de hipervínculo HTTP a través de SMS en lugar de enviar un código OTP de SMS y volver a escribirlo en la página web del servidor. La carga útil contendrá validez y caducidad, números aleatorios, etc.

No pude encontrar a nadie que usara este u otro método similar, excepto con fines publicitarios.

¿Estoy golpeando alguna vulnerabilidad obvia de la que no soy consciente?

Respuestas

1 Daveoc64 Aug 21 2020 at 16:25

Su propuesta es usar un código SMS OTP de manera efectiva, pero que sea mucho más largo de lo habitual.

Su código OTP más largo sería más resistente a las suposiciones de fuerza bruta, pero hay mejores formas de contrarrestar el problema de los ataques de fuerza bruta, por ejemplo:

  • Hacer que el código OTP caduque después de unos minutos (y enviar uno nuevo al usuario)
  • Invalide el código OTP si el usuario ingresa el código incorrecto demasiadas veces (por ejemplo, 3 veces)
  • Si la cuenta de usuario ve demasiados intentos de entrada de OTP, bloquéela por un tiempo

SMS OTP ahora es menospreciado porque SMS tiene muchas debilidades de seguridad. El mensaje SMS podría ser interceptado por otra persona (usando un ataque de intercambio de SIM o algún tipo de intercepción mientras el mensaje está en tránsito), y si eso sucede, el código OTP basado en URL más largo no ofrecerá ninguna seguridad adicional.

La usabilidad es el tema final: algunas personas no querrán abrir el enlace en su teléfono (por ejemplo, si están iniciando sesión en una computadora). Es posible que su teléfono ni siquiera tenga un navegador web que funcione o una conexión a Internet. Un código corto que pueden escribir en cualquier dispositivo es más conveniente.