Saltar al contenido

¿Dónde almacena Internet Explorer las contraseñas guardadas?

Nuestro team de redactores ha pasado mucho tiempo investigando para dar resolución a tus preguntas, te brindamos la respuesta y esperamos que sea de gran apoyo.

Solución:

Encontré la respuesta. IE almacena las contraseñas en dos ubicaciones diferentes según el tipo de contraseña:

  • Autorización Http:%APPDATA%MicrosoftCredentialsen archivos cifrados
  • Basado en formularios:HKEY_CURRENT_USERSoftwareMicrosoftInternet ExplorerIntelliFormsStorage2encriptado con la url

De una muy buena página en NirSoft.com:

A partir de la versión 7.0 de Internet Explorer, Microsoft cambió por completo la forma en que se guardan las contraseñas. En versiones anteriores (4.0 – 6.0), todas las contraseñas se guardaban en una ubicación especial del Registro conocida como “Almacenamiento protegido”. En la versión 7.0 de Internet Explorer, las contraseñas se guardan en diferentes ubicaciones, según el tipo de contraseña. Cada tipo de contraseña tiene algunas limitaciones en la recuperación de contraseña:

  • Autocompletar contraseñas: Estas contraseñas se guardan en la siguiente ubicación en el Registro:
    HKEY_CURRENT_USERSoftwareMicrosoftInternet
    ExplorerIntelliFormsStorage2
    Las contraseñas se cifran con la URL de los sitios web que solicitaron las contraseñas y, por lo tanto, solo se pueden recuperar si las URL se almacenan en el archivo de historial. Si borra el archivo de historial, IE PassView no podrá recuperar las contraseñas hasta que visite nuevamente los sitios web que solicitaron las contraseñas. Como alternativa, puede agregar una lista de URL de sitios web que requieran nombre de usuario/contraseña en el archivo de sitios web (consulte a continuación).

  • Contraseñas de autenticación HTTP: Estas contraseñas se almacenan en el archivo de Credenciales bajo
    Documents and SettingsApplication
    DataMicrosoftCredentials
    , junto con las contraseñas de inicio de sesión de las computadoras LAN y otras contraseñas. Debido a limitaciones de seguridad, IE PassView puede recuperar estas contraseñas solo si tiene derechos de administrador.

En mi caso particular responde a la pregunta de dónde; y decidí que no quiero duplicar eso. seguiré usando CredRead/CredWritedonde el usuario puede administrar sus contraseñas desde un sistema de interfaz de usuario establecido en Windows.

Respuesta corta: en la Bóveda. A partir de Windows 7, se creó una bóveda para almacenar cualquier dato confidencial, entre ellos, las credenciales de Internet Explorer. De hecho, Vault es un servicio LocalSystem: vaultsvc.dll.

Respuesta larga:
Internet Explorer permite dos métodos de almacenamiento de credenciales: credenciales de sitios web (por ejemplo: su usuario y contraseña de Facebook) y datos de autocompletado. A partir de la versión 10, en lugar de utilizar el Registro, se introdujo un nuevo término: Windows Vault. Windows Vault es la bóveda de almacenamiento predeterminada para la información del administrador de credenciales.

Debe verificar qué sistema operativo se está ejecutando. Si es Windows 8 o superior, llame VaultGetItemW8. Si no es así, llama VaultGetItemW7.

Para usar “Vault”, carga una DLL llamada “vaultcli.dll” y accede a sus funciones según sea necesario.

Un código C++ típico será:

hVaultLib = LoadLibrary(L"vaultcli.dll");

if (hVaultLib != NULL) 

    pVaultEnumerateItems = (VaultEnumerateItems)GetProcAddress(hVaultLib, "VaultEnumerateItems");
    pVaultEnumerateVaults = (VaultEnumerateVaults)GetProcAddress(hVaultLib, "VaultEnumerateVaults");
    pVaultFree = (VaultFree)GetProcAddress(hVaultLib, "VaultFree");
    pVaultGetItemW7 = (VaultGetItemW7)GetProcAddress(hVaultLib, "VaultGetItem");
    pVaultGetItemW8 = (VaultGetItemW8)GetProcAddress(hVaultLib, "VaultGetItem");
    pVaultOpenVault = (VaultOpenVault)GetProcAddress(hVaultLib, "VaultOpenVault");
    pVaultCloseVault = (VaultCloseVault)GetProcAddress(hVaultLib, "VaultCloseVault");

    bStatus = (pVaultEnumerateVaults != NULL)
        && (pVaultFree != NULL)
        && (pVaultGetItemW7 != NULL)
        && (pVaultGetItemW8 != NULL)
        && (pVaultOpenVault != NULL)
        && (pVaultCloseVault != NULL)
        && (pVaultEnumerateItems != NULL);

Luego enumera todas las credenciales almacenadas llamando

VaultEnumerateVaults

Luego revisas los resultados.

Si te ha resultado de provecho este post, sería de mucha ayuda si lo compartieras con otros juniors de esta forma contrubuyes a difundir este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *