10 Errores Que Debes Evitar En Tus Procesos De Autenticación y Como Solucionarlos – Parte 2 (Final)

6 minuto(s)

En la parte anterior llamada 10 Errores Que Debes Evitar En Tus Procesos De Autenticación y Como Solucionarlos – Parte 1, vimos 5 errores que debes evitar en tus procesos de autenticación y como solucionarlos para lograr la máxima seguridad en tus servidores de los atacants maliciosos. Espero que apliques los consejos que te estoy dando, estos te ayudarán a evitar dolores de cabeza en el futuro. Bien en esta segunda y última parte, veamos el último grupo de Errores Que Debes Evitar En Tus Procesos De Autenticación y Como Solucionarlos, vamos con ello.

Partes

Antes de continuar, te invito a leer los siguientes artículos:

Asimismo te invito a escuchar el Podcast: “Porque Todo Desarrollador Debes Ser AutodidactaVentajas y Desventajas de Usar 2 o Más Monitores Para un Desarrollador (Anchor Podcast): 

Spotify: Sound Cloud: Apple Podcasts Anchor Podcasts

Bien ahora continuemos con el Post: 10 Errores Que Debes Evitar En Tus Procesos De Autenticación y Como Solucionarlos – Parte 2 (Final). 

Al igual que en la Parte 1, para conocer mejor estos Errores Que Debes Evitar En Tus Procesos De Autenticación y Como Solucionarlos, te compartiré su nombre, descripción y una imagen de referencia. 

Contraseña Débil

No es raro encontrarse con un sitio web que no tiene un plan de contraseña seguro en orden. Hace poco probé una aplicación que requería una longitud mínima de contraseña de 5 caracteres. A medida que los desarrolladores intentan encontrar el equilibrio adecuado entre seguridad y facilidad de uso, esta falla se vuelve más común. Cuando trabajes con contraseñas, asegúrate de que la contraseña que sugieres a los usuarios o la contraseña que crea un usuario sea una combinación de símbolos, números y letras mayúsculas y minúsculas. Evita que configuren contraseñas débiles.

Como Solucionarlo:

  • Solicitar que el usuario ingrese un mínimo de 8 a 12 caracteres.
  • Las contraseñas que incorporen nombres de usuario o nombres corporativos deben evitarse por seguridad.
  • Las letras mayúsculas y minúsculas deben mezclarse.
  • Usa una biblioteca para calcular la seguridad de la contraseña, verifica que las dependencias y la capacidad de mantenimiento sean mínimas.
  • Cuando un usuario tiene un perfil público, asignales un nombre para mostrar diferente y evita usar la dirección de correo electrónico del usuario como nombre para mostrar, ya que invita al spam.

Pasemos al siguiente error que debes evitar en tus procesos de autenticación.

Restablecimiento de Contraseñas Incorrecto

Esto no es muy frecuente, pero de vez en cuando, veo una aplicación web que tiene esta capacidad implementada incorrectamente. A menudo, esto se debe a que la contraseña del usuario se le envió por correo electrónico o el token utilizado para restablecer la contraseña no era lo suficientemente seguro. Enviar la contraseña de texto sin formato al usuario final es otro problema que afecta el restablecimiento de contraseña.

Esto es terrible por varias razones, una de las cuales es que la contraseña se envió por correo electrónico, lo que se considera inseguro. Esto podría significar que la contraseña se almacenó en la base de datos sin el hash suficiente o en un formato que podría revertirse, como base64. Hashing es una técnica utilizada para verificar o validar la calidad de varios tipos de entrada. En los sistemas de autenticación, se utiliza principalmente para evitar el almacenamiento de contraseñas de texto sin formato, y Hashing hace que sea increíblemente difícil para los atacantes descrifrar las contraseñas almacenadas. Base64 es un métpdp para convertir datos binarios en texto. El método se usa con frecuencia para enviar información basada en contenido a través de Internet.

Como Solucionarlo:

  • Cifra siempre las contraseñas de los usuarios antes de almacenarlas, no las almacenes en su forma original.
  • Solo envía correos electrónicos transaccionales después de validar y verificar las direcciones de correo electrónico verificando los caracteres válidos y enviando un enlace de verificación con un token.

Bien, pasemos al siguiente error que debes evitar en tus procesos de autenticación.

Cierre de Sesión Inseguro

Esta es otra vulverabilidad que puede causar grandes estragos en una aplicación. También es esencial brindarles a tus usuarios una forma segura de cerrar sesión para que sus sesiones no puedan ser tomadas. Si estás almacenando el identificador de sesión en el lado del servidor, el método de cierre de sesión debería invalidarlo y borrar la cookie de sesión en el navegador. Esto evita que los atacantes puedan robar cookies de sesión y luego usarlas para iniciar una nueva sesión.

Como Solucionarlo:

  • Cuando el usuario cierra su sesión, borra la cookie de sesión del navegador e invalida el identificador de sesión si se almacena en el servidor.
  • Durante el cierre de sesión, las sesiones de usuario y los tokens de autenticación deben invalidarse correctamente.

Continuemos con el siguiente error que debes evitar en tus procesos de autenticación.

Dar Pie A Los Ataques de Fuerza Bruta

El ataque de fuerza bruta es una técnica utilizada por los usuarios maliciosos para averiguar las credenciales del usuario probando varias credenciales posibles. En este ataque, los piratas intentan adivinar las contraseñas para pasar la autenticación de una sola cuenta. Al usar scripts que prueban muchas contraseñas de uso común de un diccionario y millones de contraseñas filtradas de violaciones de datos anteriores, estos intentos tienen más posibilidades de éxito.

Como Solucionarlo:

  • Limita los intentos de inicio de sesión a una dirección IP o rango definido bloqueando el acceso a la URL de autenticación.
  • No uses términos de diccionarios en ningún idioma. En lugar de usar palabras, es preferible usar cadenas de caracteres aleatorios.
  • Bloquea direcciones IP maliciosas con CAPTCHAS.
  • Realiza un seguimiento de los intentos fallidos de inicio de sesión de un usuario y bloquea la cuenta.

Vale, pasemos al último error que debes evitar en tus procesos de autenticación.

No Salvaguardar Las Rutas

Otro error que he visto cometer a los desarrolladores en lo que respecta a la autenticación es “no proteger las rutas”. Es vital proteger las rutas específicas de tu aplicación de los usuarios no autenticados, ya que esto evitará que usuarios desconocidos accedan a algunos de los datos privados de tu aplicación.

Como Solucionarlo:

  • Proteje la ruta a la que deseas que accedan los usuarios no autenticados.
  • Si un usuario intenta acceder a una ruta específica, rediríjelo a la página de inicio de sesión/registro si no está autenticado.

Bien hasta aqui llegamos con con este Post en donde te comparto 10 errores que debes evitar en tus procesos de aunteticación y como solucionarlos.

Conclusión

Al implemtar autenticación en tu aplicación, debes extremar las precauciones como desarrollador porque algunos métodos podrían ser muy dañinos para tu proyecto y abrir la puerta a que los atacantes tomen control de los datos de los usuarios y de la aplicación. Con suerte, este Post ha resaltado tales errores y brindado consejos sobre como solucionarlos.

Nota (s)

  • No olvides que debemos usar la Tecnología para hacer cosas Buenas por el Mundo. 

Síguenos en nuestras Redes Sociales para que no te pierdas nuestros próximos contenidos.