Escenario
- La clave maestra se ingresa al iniciar sesión y luego se cifra con
$server_key
- La clave maestra ahora se almacena como
$_COOKIE['encrypted_key']
variable para la persistencia (por lo que el usuario no tiene que ingresar cada carga de página) -
$server_key
se almacena dentro de un archivo de configuración en el servidor de aplicaciones - Los datos se descifran primero descifrando
$_COOKIE['encrypted_key']
(usando$server_key
), por lo tanto, revelando la clave maestra -
$_COOKIE['encrypted_key']
se destruye al salir del navegador
Treat
El atacante obtiene acceso al dispositivo / cookie del usuario y a los datos cifrados (pero no a los archivos de configuración del servidor de aplicaciones).
Pregunta
¿Tiene sentido cifrar la clave maestra con $server_key
y luego almacenar $server_key
dentro de un archivo de configuración en el servidor de aplicaciones?
Razonamiento
Ganar solo el $server_key
o solo el $_COOKIE['encrypted_key']
no comprometerá nada. El atacante debe obtener ambos.
Actualizar
- Esto está bajo HTTPS
- El secuestro de la sesión sería difícil ya que verificamos la huella digital de la sesión por solicitud