La puerta de atrás del inicio de sesión
La recuperación existe porque la gente olvida. Pero es, literalmente, un camino para entrar sin la contraseña. Si ese camino es demasiado cómodo, el atacante lo usará contra ti. Diseñarlo bien no es complicar al usuario: es que solo el dueño real de la cuenta pueda recorrerlo.
Cómo debe funcionar (y por qué)
[El flujo seguro de recuperación]
Esta actividad interactiva ('Explicacion visual') requiere el motor completo de Lumbre. El contenido estatico se muestra arriba; para la experiencia interactiva, visita la version online de este objeto.
Las reglas que evitan la puerta abierta
| Regla | Qué ataque previene |
|---|---|
| Mensaje neutro («si el correo existe…») sin confirmar si la cuenta existe | Enumeración de cuentas registradas |
| Token aleatorio, largo y de un solo uso | Adivinar o reutilizar un enlace |
| Expiración corta (minutos) | Enlaces robados que siguen válidos |
| Invalidar el token tras usarlo y al cambiar la contraseña | Reutilización del mismo enlace |
| Nada de «preguntas de seguridad» (nombre de tu mascota) | Respuestas fáciles de investigar en redes |
Prompt de recuperación
Implementa la recuperacion de contraseña con estas reglas (confirma cada una):\n- al pedir recuperacion, responde SIEMPRE el mismo mensaje, exista o no el correo (no reveles cuentas)\n- genera un token aleatorio largo, guardado hasheado, con expiracion de 15 minutos y de un solo uso\n- envia un enlace con ese token al correo del usuario\n- al usarse el token y cambiar la clave, invalida el token\n- NO uses preguntas de seguridad tipo "nombre de tu mascota"\n\nExplica como invalido el token tras usarlo.Prueba
Cuando alguien escribe un correo en «recuperar contraseña», la app responde «ese correo no está registrado». ¿Qué problema abre esa respuesta?
Un enlace de recuperación que nunca caduca es más cómodo y aceptable para producción.
Detecta la recuperación insegura
Revisas el flujo de recuperación de una IA. Señala la decisión que abre una puerta:
- El token se guarda hasheado en la base de datos.
- El enlace caduca a los 15 minutos.
- La recuperación se resuelve con «preguntas de seguridad»: nombre de mi mascota, ciudad de nacimiento.
- Al cambiar la contraseña, el token queda invalidado.
Identifica la linea con error.
Escribe tu flujo de recuperación como reglas con su ataque asociado (mensaje neutro, token que caduca, un solo uso). Pídele a la IA que confirme cada regla al entregar.