Si le pide a Mozilla Firefox que recuerde los detalles de inicio de sesión de un sitio web, las credenciales se almacenarán en el directorio de su perfil en Logins.json
.
En lugar de almacenar valores de texto simple, el nombre de usuario y la contraseña se cifrarán (utilizando la API PKCS # 11 implementada en NSS biblioteca). Sin embargo, la clave necesaria para descifrarlos también se almacena en el directorio de su perfil (en Key3.db
). Por lo tanto, un atacante que adquiera ese directorio, obviamente, también podrá extraer las contraseñas almacenadas (es decir, a menos que el propietario haya establecido una contraseña maestra).
Esto me dio curiosidad: ¿Cuál fue la motivación para cifrar las contraseñas en Logins.json
de forma predeterminada cuando la clave se almacena cerca? ¿En qué escenario realista podría esta decisión de diseño complicar un ataque?