Modificar o eliminar credenciales del almacen de Windows
A los usuarios les (nos) resulta muy conveniente utilizar las credenciales cacheadas (cuando escogemos la opción «recordar», por ejemplo) dado que nos ahorra tener que introducir la información de inicio de sesión en adelante. Sin embargo, para el departamento de IT es más un problema que una solución en aquellos casos en que el dispositivo es robado o se pierde su rastro.
Las credenciales cacheadas en el almacén de credenciales de Windows incluyen tanto sitios web como recursos de red. Si una persona malintencionada se lo propone, podría llegar en el peor de los casos a transformar estos usuarios y contraseñas en texto claro.
Además de por seguridad, podría interesarnos eliminar las credenciales del almacén de Windows en casos de diagnóstico de fallos con determinados programas, o si no somos capaces de acceder a determinado sitio por una credencial desactualizada que está siendo cacheada por el sistema.
¿Es posible ver las contraseñas almacenadas en Windows?
La respuesta es no. Los detalles de las cuentas de usuario se almacenan dentro del SAM (Security Account Manager) ubicado en:
c:\windows\system32\config
Esta carpeta no está accesible con el sistema operativo iniciado, así que para obtener los datos contenidos en el SAM sería necesario acceder al disco desde otro equipo, para esto hay varias formas.
El problema es que incluso entrando en la carpeta no serás capaz de obtener ningún dato en claro, ya que todas las credenciales están hasheadas.
Es posible crackear o romper las contraseñas a través de uno de los mecanismos diseñados a tal efecto, que quedan fuera del alcance de este artículo. También existen soluciones profesionales que podrían permitirte hacerlo, como OsForensics.
Eliminar o administrar credenciales de Windows
Existen diferentes formas de gestionar el almacén de credenciales, no solo para eliminar estas sino para gestionar las existentes o añadir otras nuevas.
Gestionar credenciales en modo gráfico
Mediante la GUI de Windows y a través del entorno gráfico tenemos la forma más sencilla de gestionar usuarios y contraseñas, borrar o añadir.
La forma más sencilla de abrir el almacén de credenciales de Windows es ejecutando el siguiente comando desde «Ejecutar» (pulsando la combinación WIN + R):
control keymgr.dll
Veremos la siguiente ventana.
Una vez allí, pulsaremos en la opción correspondiente.
Método alternativo para administrar contraseñas de usuario
- Pulsaremos las teclas WINDOWS + R
- Abriremos el CMD escribiendo lo propio en el recuadro, después Aceptar
- Escribiremos el comando:
rundll32.exe keymgr.dll,KRShowKeyMgr
Se abrirá ante nosotros la utilidad «nombres de usuario y contraseñas almacenados«.
Podremos hacer varias cosas, como cambiar o eliminar credenciales de Windows y otros servicios, exportarlas o restaurar otras previamente exportadas. Lo único que no podremos hacer es visualizarlas.
Gestionar credenciales con cmdkey
Uno de los métodos más sencillo es a través de la utilidad de linea de comandos cmdkey. Nos mostrará credenciales cacheadas y permitirá añadir o eliminar estas. Cmdkey se puede combinar con powershell para automatizar estos procesos.
Para mostrar la sintaxis de la herramienta usaremos:
cmdkey /?
Ahora, listaremos algunas opciones básicas.
Mostrar las credenciales almacenadas:
cmdkey /list cmdkey /list:nombre_objeto
Añadir nuevas credenciales:
cmdkey /add:nombre_objeto /user:username /pass:contraseña cmdkey /add:nombre_objeto /user:username /pass cmdkey /add:nombre_objeto /user:username cmdkey /add:nombre_objeto /smartcard
Eliminar credenciales del almacén:
cmdkey /delete:nombre_objeto
Ejemplo: cmdkey /list:
Otras opciones, como crear credenciales genéricas o eliminarlas del RAS (Remote Access Server) están disponibles en la ayuda del comando.
Gestionar credenciales de Windows con Powershell
Si echamos mano del potente Powershell, podemos conseguir optimizar lo comentado anteriormente. Seremos capaces de crear un script con el que gestionar las credenciales en un equipo remoto de una sola vez, realizando la acción en tantos equipos como sea necesario sin tener que lanzar comandos múltiples veces.
Para ello empezaremos por instalar el módulo PSCredentialManager para Powershell, utilizando el comando Install-Module.
Install-Module -Name PSCredentialManager
Una vez instalado el complemento, este contiene todos los comandos necesarios en adelante. Es posible que se muestre un mensaje advirtiendo que el repositorio no es de confianza.
Continuaremos sin preocuparnos, al menos en lo referente a la procedencia (es un sitio mantenido por Microsoft) aunque tendremos cuidado al desplegar este tipo de componentes en servidores de producción.
Por ejemplo, para consultar todas las credenciales cacheadas en un equipo Windows, ejecutaremos:
Get-CachedCredential
En el departamento de IT de turno se podrían enumerar también las credenciales de un equipo remoto de la siguiente manera:
Get-CachedCredential -ComputerName nombre
Esto funcionaría de igual manera para varios equipos remotos al mismo tiempo, si los separamos por una coma en la ejecución:
Get-CachedCredential -ComputerName equipo1 equipo2 equipo3
Otros comandos que podríamos lanzar son:
Remove-CachedCredential --> eliminar credencial cacheada Add-CachedCredential --> añadir credencial cacheada
Todos estos comandos tienen sintaxis similares.
NOTA: si la política de seguridad de Windows no te deja ejecutar scripts (como ocurre por defecto en Windows 10) sigue esta guía.
Categories
deweloper View All
Trabajo como consultor de ciberseguridad y me gusta lo que hago. Aficionado a la informática / tecnología en general, me gusta compartir con la gente lo poco que sé. También soy aficionado al deporte y los videojuegos.
Cordial saludo Hacker, informo que al intentar capturar la credencial de un objeto listado desde cmdkey, la salida estándar es *NINGUNO*
Hola, no entiendo a qué te refieres con capturar. ¿Qué comando has usado? Saludos.
Interesante articulo . Aprendo algo con cada sito web todos los días. Siempre es grato poder disfrutar el contenido de otros escritores. Me gustaría usar algo de tu articulo en mi blog, naturalmente pondré un enlace , si me lo permites. Gracias por compartir.
Hola y gracias antes de nada. Puedes usar parte del contenido con la atribución correspondiente, ningún problema.
Saludos!
¿Por qué al abrir una plataforma que abría frecuentemente para trabajar, ya no acepta mi contraseña con la que la abría normalmente? Me aparece como error….
Pocos datos ofreces para poder ayudarte…
Hola Alejandro, Gracias Crack por tu aporte,
Tengo un problema, y quisiera validar si tu me pudieras ayudar con tus conocimientos, Tengo una computadora que pierde el acceso directo con sus carpetas en otro DC, y debo estar validando que esa otra ip este arriba, y nosotros estableciendo la conexión nuevamente, por mas que guardamos las contraseña el usuario siempre se Queja por que no tiene acceso a su directorio (Algo que ya esta configurado.) mi pregunta es la siguiente:
Por que el usuario pierde la conexión con su acceso directo con esa carpeta compartida? si la conexión se establece? el ping es exitoso, y se debe volver a ingresar usuario y contraseña.
Saludos!
En mi correo me piden las credenciales correctas,que es? Y no puedo ni recibir ni enviar correos gracias
Lo siento Emma pero no te sigo. Si me puedes pegar un pantallazo en algún imgpaste o similar, saludos.
Hola, cambiaron la clave de la carpeta en red(credenciales) y yo puse recordar siempre en este equipo, como puedo hacer para que me pida nuevamente el usuario y clave de credenciales de RED.