Saltar a contenido

03.-Pruebas de gestión de identidad

4.3.- Pruebas de Gestión de Identidad

Las pruebas de gestión de identidad evalúan si la aplicación maneja correctamente la autenticación y autorización de los usuarios, asegurando que cada usuario tenga permisos adecuados según su rol. Además, buscan detectar posibles vulnerabilidades que permitan la enumeración de usuarios o el acceso no autorizado a información sensible.

Gestión de Roles

Los aplicativos web suelen implementar una gestión de roles para asignar permisos de manera estructurada y evitar la asignación manual de privilegios a cada usuario.

Objetivo de las pruebas de gestión de roles

Se verifica que:

  • Los permisos asignados a cada rol sean adecuados, evitando que un usuario tenga más privilegios de los permitidos.
  • No sea posible que un usuario de menor nivel (ej. operador) pueda ejecutar acciones reservadas a un administrador.
  • No existan escalaciones de privilegios debidas a fallos en la validación de permisos.

Enumeración de Usuarios

La enumeración de usuarios ocurre cuando un atacante puede obtener nombres de usuario o direcciones de correo electrónico a partir de las respuestas del sistema.

Formas de detección

Se analizan errores y mensajes generados en:

  1. Formularios de autenticación
  2. Respuestas diferentes al ingresar un usuario válido o inexistente.
  3. Mensajes como: "Usuario no encontrado" vs. "Contraseña incorrecta".
  4. Formularios de registro
  5. Indicaciones de que un correo ya está registrado: "El correo ya está en uso".
  6. Formularios de restablecimiento de contraseña
  7. Confirmaciones como "Se ha enviado un correo de recuperación" permiten confirmar la existencia del usuario.

Impacto de la enumeración de usuarios

  • Facilita ataques de fuerza bruta y phishing.
  • Permite a atacantes mapear cuentas de usuario y planificar ataques dirigidos.

image-20250227165227600

Conclusión

Las pruebas de gestión de identidad son esenciales para garantizar que los usuarios tengan los permisos correctos y evitar que información sensible, como nombres de usuario y correos electrónicos, sea accesible a atacantes. Implementar mensajes de error genéricos y validar adecuadamente los permisos minimiza estos riesgos.