Mejores prácticas de formulario de inicio de sesión [cerrado]

2

Así que estoy en el proceso de hacer un formulario de inicio de sesión para los usuarios, y me gustaría hacer las cosas tan seguras como razonables. Es un sitio para consumidores, no un sitio financiero, pero al ver cómo me gusta que las cosas estén seguras cuando inicio sesión en un sitio web, trato de mantener las cosas lo más seguras posible en mi formulario.

Pasos que he tomado hasta ahora:

El sitio tiene un certificado ssl con un servidor configurado para admitir los encriptaciones más fuertes y al mismo tiempo permite que la ruina de Internet acceda a nuestro sitio (tenemos algunos clientes antiguos, año bueno)

La contraseña está hash con bcrypt.

Para el formulario de inicio de sesión, estoy usando un csrf_token generado por hasing bcrypt from

  • nombre de host
  • usuario ip
  • session_id
  • id_usuario

la identificación de usuario se genera para cada usuario que visita el GUID cuando aún no ha iniciado sesión, esto se almacena en la sesión en el primer acceso al sitio y no es visible para los usuarios.

El csrf no se vuelve a generar para cada solicitud de página debido a problemas de historial y, como se dijo, no somos una institución financiera y para cualquier complemento es trivialmente fácil de cosechar cualquier token de csrf. Así que ese es un paso que no necesito dar para asegurar la página (lo que he leído en este sitio de todos modos)

las secuencias de comandos entre sitios están deshabilitadas.

agregó X-Frame-Options: SAMEORIGIN headers

La pregunta: ¿Hay otros pasos que pueda seguir o necesito considerar que aseguren el proceso de inicio de sesión / interacción del usuario?

    
pregunta Tschallacka 03.02.2017 - 11:36
fuente

1 respuesta

1
  • Contraseña larga con compensación de número, alfabeto y símbolo.
  • Los nombres de usuario deben ser únicos
  • Restrinja el número de intentos de inicio de sesión fallidos para evitar ataques de fuerza bruta y bloquee temporalmente al usuario para su verificación
  • No permitir mensajes de error en caso de que no se pueda dar una sugerencia de uso o de pirateo informático
  • La credencial debe transmitirse en conexión segura
  • Asegure la funcionalidad de cambio de contraseña
  • Generación de imagen CAPTCHA
respondido por el Yousef Ali 03.02.2017 - 12:23
fuente

Lea otras preguntas en las etiquetas