Windows Credential Dumping
Windows Password Hashes
El sistema operativo Windows almacena contraseñas de cuentas de usuario con hash localmente en la base de datos SAM (Security Accounts Manager - Administrador de cuentas de seguridad).
Hashing es el proceso de convertir un dato en otro valor. Se utiliza una función o algoritmo hash para generar el nuevo valor. El resultado de un algoritmo hash se conoce como hash o valor hash.
La Autoridad de Seguridad Local (Local Security Authority - LSA) facilita la autenticación y verificación de las credenciales del usuario.
Las versiones de Windows hasta Windows Server 2003 utilizan dos tipos diferentes de hashes:
LM
NTLM
Windows desactiva el hash LM y utiliza el hash NTLM desde Windows Vista en adelante.
SAM Database
SAM (Security Account Manager) es un archivo de base de datos que se encarga de administrar cuentas de usuario y contraseñas en Windows. Todas las contraseñas de cuentas de usuario almacenadas en la base de datos SAM tienen hash.
El archivo de base de datos SAM no se puede copiar mientras el sistema operativo se está ejecutando
El kernel de Windows NT mantiene bloqueado el archivo de base de datos SAM y, como resultado, los atacantes suelen utilizar técnicas y herramientas en memoria para volcar hashes SAM del proceso LSASS el mismo esta encargado de realizar el proceso de authenticacion.
En las versiones modernas de Windows, la base de datos SAM está cifrada con una clave del sistema.
Nota: Se requieren privilegios elevados/administrativos para poder acceder e interactuar con el proceso LSASS.
LM (LanMan)
LM es el algoritmo hash predeterminado que se implementó en los sistemas operativos Windows anteriores a NT4.0.
El protocolo se utiliza para codificar las contraseñas de los usuarios y el proceso de hash se puede dividir en los siguientes pasos:
La contraseña se divide en dos fragmentos de siete caracteres.
Luego, todos los caracteres se convierten a mayúsculas.
Luego, cada fragmento se procesa por separado con el algoritmo DES.
El hash LM generalmente se considera un protocolo débil y se puede descifrar fácilmente, principalmente porque el hash de la contraseña no incluye sales, lo que hace que los ataques de fuerza bruta y de tabla arcoíris sean efectivos contra los hashes LM.
NTLM NTHash
NTLM es una colección de protocolos de autenticación que se utilizan en Windows para facilitar la autenticación entre computadoras. El proceso de autenticación implica el uso de un nombre de usuario y contraseña válidos para autenticarse exitosamente.
Desde Windows Vista en adelante, Windows desactiva el hash LM y utiliza el hash NTLM.
Cuando se crea una cuenta de usuario, se cifra utilizando el algoritmo hash MD4, mientras que se elimina la contraseña original.
NTra LM de las siguientes maneras:
No divide el hash en dos trozos.
Distingue entre mayúsculas y minúsculas (Case sensitive).
Permite el uso de símbolos y caracteres Unicode.
Quiz
Searching For Passwords In Windows Configuration Files
Windows Configuration Files
Windows puede automatizar una variedad de tareas repetitivas, como la implementación masiva o la instalación de Windows en muchos sistemas.
Por lo general, esto se hace mediante el uso de la utilidad Unattended Windows Setup, que se utiliza para automatizar la instalación/implementación masiva de Windows en los sistemas.
Esta herramienta utiliza archivos de configuración que contienen configuraciones específicas y credenciales de cuenta de usuario, específicamente la contraseña de la cuenta de administrador.
Si los archivos de configuración de Unattended Windows Setup se dejan en el sistema de destino después de la instalación, pueden revelar las credenciales de la cuenta de usuario que los atacantes pueden utilizar para autenticarse legítimamente con el objetivo de Windows.
Unattended Windows Setup
La utilidad de Unattended Windows Setup normalmente utilizará uno de los siguientes archivos de configuración que contienen información de configuración del sistema y la cuenta de usuario:
C:\Windows\Panther\Unattend.xml
C:\Windows\Panther\Autounattend.xml
Como medida de seguridad, las contraseñas almacenadas en el archivo de configuración de Unattended Windows Setup pueden estar codificadas en base64.
Demo: Searching For Passwords In Windows Configuration Files
Quiz
Dumping Hashes With Mimikatz
Mimikatz
Mimikatz es una herramienta post-explotación de Windows escrita por Benjamin Delpy (@gentilkiwi). Permite la extracción de contraseñas de texto sin cifrar, hashes y tickets Kerberos de la memoria.
La base de datos SAM (Security Account Manager) es un archivo de base de datos en sistemas Windows que almacena contraseñas de usuario con hash.
Mimikatz se puede utilizar para extraer hashes de la memoria del proceso lsass.exe donde se almacenan en caché los hashes.
Podemos utilizar el ejecutable mimikatz precompilado; alternativamente, si tenemos acceso a una sesión de meterpreter en un dispositivo Windows, podemos utilizar la extensión Kiwi incorporada de meterpreter.
Nota: Mimikatz requerirá privilegios elevados para poder ejecutarse correctamente.
Demo: Dumping Hashes With Mimikatz
Quiz
Pass-The-Hash Attacks
Pass-The-Hash
Pass-the-hash es una técnica de explotación que implica capturar o recolectar hashes NTLM o contraseñas de texto sin cifrar y utilizarlos para autenticarse legítimamente con el objetivo.
Podemos utilizar múltiples herramientas para facilitar un ataque Pass-The-Hash:
Módulo Metasploit PsExec
Crackmapexec
Esta técnica nos permitirá obtener acceso al sistema de destino a través de credenciales legítimas en lugar de obtener acceso mediante la explotación del servicio.
Demo: Pass-The-Hash Attacks
Quiz
Last updated