Loading
_ DESCIFRANDO CONEXIÓN SEGURA...

Enlaces y códigos de un solo uso: caducidad y alcance

5 tareas · 35 min · Principiante

Un enlace de recuperación o un código por SMS es una contraseña temporal: quien lo tiene, entra. Por eso importa cómo se genera, cuánto vive, cuántas veces sirve y para qué cuenta y qué acción vale. Seguros Tanguarín te entrega el código que genera sus tokens, una copia de la tabla donde los guarda y una semana de peticiones a la ruta que restablece contraseñas, junto con la queja de una asegurada que no pidió nada.

0 de 5 · 0%

Objetivo de la sala

Un enlace de recuperación o un código por SMS es una contraseña temporal: quien lo tiene, entra. Por eso importa cómo se genera, cuánto vive, cuántas veces sirve y para qué cuenta y qué acción vale. Seguros Tanguarín te entrega el código que genera sus tokens, una copia de la tabla donde los guarda y una semana de peticiones a la ruta que restablece contraseñas, junto con la queja de una asegurada que no pidió nada.

Un token de un solo uso bien hecho cumple cinco cosas a la vez. Sale de un generador criptográfico, para que nadie pueda predecirlo. Vive poco: minutos para un código que se escribe a mano, una o pocas horas para un enlace. Sirve una sola vez, y al usarse se invalida junto con los demás tokens pendientes de esa cuenta. Queda atado a una cuenta y a un propósito: el que se emitió para verificar un correo no sirve para restablecer una contraseña. Y se guarda como huella, no en claro, para que una copia de la base no entregue tokens vivos.

Basta con que falle una para que el resto pierda valor: un token impredecible que nunca vence es una contraseña más, y uno de vida corta que no queda atado a su dueño sirve para la cuenta de cualquiera.

Responde para continuar

Un enlace de recuperación se genera con un generador criptográfico y vence en una hora. ¿Qué le falta para estar bien hecho?

Ver pista de ayuda

Repasa las cinco propiedades y cuenta cuántas cumple ese enlace.

Los lenguajes traen dos familias de generadores de números aleatorios. Unos están pensados para simulaciones y juegos: son rápidos y estadísticamente uniformes, pero su salida se puede predecir si se observan suficientes valores. Otros toman su entropía del sistema operativo y están hechos para secretos. Un código de verificación generado con los primeros es un fallo aunque tenga seis dígitos: MITRE lo clasifica como CWE-338, uso de un generador pseudoaleatorio criptográficamente débil.

Abre tokens.py y compara cómo se genera el enlace y cómo se genera el código por SMS.

Responde para continuar

¿Qué función genera el código que se envía por SMS? Escríbela con su módulo, sin paréntesis.

La vida de un enlace es el tiempo durante el cual un buzón comprometido, un reenvío automático o un correo abierto en un equipo compartido bastan para tomar la cuenta. Un plazo largo no hace el flujo más amable: hace más grande la ventana. Para un enlace que la persona pidió hace un momento y usará enseguida, una hora suele sobrar.

Responde para continuar

Según el código, ¿cuántas horas sigue sirviendo un enlace de recuperación? Escribe solo el número.

Un token que no se invalida al usarse sigue vivo hasta que vence. Si el correo se queda abierto, si el enlace queda en el historial o si alguien lo vio por encima del hombro, la cuenta se puede volver a restablecer sin que el titular pida nada. En el registro eso se ve como el mismo identificador con dos resultados de éxito.

Abre registro-uso.txt y busca un identificador de token que aparezca con éxito en dos fechas distintas.

Responde para continuar

¿Qué token se usó con éxito más de una vez? Escribe su identificador.

La queja de r.zambrano es la que más pesa: alguien cambió su contraseña el domingo y ella no había pedido ningún enlace hasta el lunes. Cruza la línea de ese domingo en registro-uso.txt con tabla-tokens.txt y con la ruta /restablecer de tokens.py.

Responde para continuar

¿Qué permitió cambiar la contraseña de r.zambrano el domingo?

Ver pista de ayuda

Mira de quién es y para qué se emitió el token que aparece en la línea del domingo.

Inicia sesión para registrar tus puntos y progreso en el ranking.

Whoami-Labs Pro

Whoami-Labs Pro utiliza cookies

Utilizamos cookies y almacenamiento local para el funcionamiento del sitio, seguridad de sesión y, si lo autorizas, analítica y marketing. Puedes aceptar, rechazar o personalizar. Política de Privacidad