🔒 Registro cerrado · Apertura oficial próximamente · Acceso exclusivo para alumnos activos
Iniciar SesiónMigrar un almacén de contraseñas heredado
5 tareas · 40 min · Principiante
Descubrir que una base guarda MD5 sin sal es la parte fácil; lo difícil es pasar decenas de miles de cuentas a una derivación lenta sin pedirle a nadie su contraseña y sin dejar a nadie fuera. Droguería Quinchonal terminó la primera fase de su migración en agosto y pregunta, con autorización escrita, si va bien. Tienes el plan, el estado del almacén, la función que verifica al ingresar y un registro de una mañana. Se lee y se cruza; no se toca la base.
Objetivo de la sala
Descubrir que una base guarda MD5 sin sal es la parte fácil; lo difícil es pasar decenas de miles de cuentas a una derivación lenta sin pedirle a nadie su contraseña y sin dejar a nadie fuera. Droguería Quinchonal terminó la primera fase de su migración en agosto y pregunta, con autorización escrita, si va bien. Tienes el plan, el estado del almacén, la función que verifica al ingresar y un registro de una mañana. Se lee y se cruza; no se toca la base.Un sistema no guarda las contraseñas, así que no puede volver a derivarlas con un algoritmo nuevo cuando quiera. Hay dos salidas que se combinan. La primera es envolver: aplicar la función lenta sobre el resumen viejo que ya está guardado, de modo que la base deja de tener MD5 desnudos desde el primer día. La segunda es re-derivar en el siguiente ingreso correcto: en ese momento el sistema tiene la contraseña en memoria, la deriva directamente con la función nueva y abandona la envoltura, que es más débil que una derivación directa.
Las cuentas que no entran nunca se quedan envueltas para siempre. Para ellas, lo prudente es fijar un plazo y, al vencer, borrar el resumen y obligar a restablecer la contraseña por un canal verificado. Y cada fila debe guardar con qué algoritmo y con qué parámetros se derivó, para poder volver a migrar sin adivinar.
Responde para continuar
¿Qué gana la droguería al envolver los MD5 existentes en lugar de esperar a que cada cliente inicie sesión?
Ver pista de ayuda
Piensa en qué contiene la base al día siguiente de envolver.
Una migración se da por terminada mirando el almacén, no el plan. Si después de envolver sigue habiendo una vía que crea cuentas con el formato viejo, la base vuelve a llenarse de lo que se quería eliminar. Y una carga masiva hecha con un script antiguo tiene el mismo efecto.
Abre estado-almacen.txt y suma, por origen, lo que sigue en el formato sin envolver.
Responde para continuar
A la fecha del corte, ¿cuántas cuentas siguen protegidas solo con MD5? Escribe solo el número, sin puntos.
La fase 2 depende de una sola función: la que verifica al ingresar. Si esa función solo re-deriva en una de sus ramas, el resto de las cuentas no avanza nunca, por muchas veces que sus dueños entren. El registro de ingresos lo confirma sin leer código: el formato antes y después de un ingreso correcto debería cambiar.
Abre verificar.py y contrástalo con registro-ingresos.txt.
Responde para continuar
¿Qué formato de la columna nunca pasa a argon2id aunque su dueño inicie sesión con éxito? Escríbelo tal como aparece.
Más de la mitad de las cuentas envueltas no ha entrado en 18 meses. No van a pasar a la derivación directa por su cuenta, y mientras sigan ahí son un MD5 envuelto que se puede atacar si la base se filtra.
Responde para continuar
¿Qué es razonable hacer con las cuentas envueltas que no han entrado en 18 meses?
Ver pista de ayuda
Busca la opción que no deja nada atacable en la base y no inventa una contraseña por la persona.
El informe tiene que decir qué cambiar, en este orden de urgencia: lo que sigue creando cuentas débiles, lo que impide que la migración avance y lo que queda pendiente para la fase 3.
Responde para continuar
¿Qué recomendación cierra primero la causa de que la base siga recibiendo MD5?
Ver pista de ayuda
Antes de arreglar lo que hay, se cierra la vía por la que sigue entrando lo que no debe.
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
Preferencias
Configuraciones de cookies
Elige qué categorías permitir. Las esenciales siempre están activas. Consulta la Política de Privacidad.
Esenciales
Siempre activas · sesión, CSRF, tema y esta preferencia
Necesarias para iniciar sesión, proteger formularios (CSRF) y recordar tu elección de cookies y tema. Sin ellas la plataforma no funciona de forma segura.
Analíticos
Hoy no activos en la plataforma; listos para cuando se conecten
Nos ayudan a entender uso de cursos y páginas. Si los activas, se usarán cuando conectemos analítica; hasta entonces no se carga ningún tracker.
Marketing
Hoy no activos; campañas futuras solo con tu permiso
Comunicaciones o campañas. No activos hoy en la plataforma; quedarán listos si los conectamos y solo si los permites.