Solución:
Existe una solución más simple que no necesita administrar volúmenes de sombra ni usar herramientas externas. Simplemente puede copiar SAM y SYSTEM con el reg
comando proporcionado por microsoft (probado en Windows 7 y Windows Server 2008):
reg save hklmsam c:sam
reg save hklmsystem c:system
(el último parámetro es la ubicación donde desea copiar el archivo)
Luego puede extraer los hash en un sistema Linux con el paquete samdump2 (disponible en Debian: apt-get install samdump2
):
$ samdump2 system sam
Administrator:500:aad3b435b51404eeaad3b435b51404ee:c0e2874fb130015aec4070975e2c6071:::
*disabled* Guest:501:aad3b435b51404eeaad3b435b51404ee:d0c0896b73e0d1316aeccf93159d7ec0:::
No es un problema de permisos: Windows mantiene un bloqueo exclusivo en el archivo SAM (que, hasta donde yo sé, es un comportamiento estándar para las colmenas de registro cargadas), por lo que es imposible que cualquier otro proceso lo abra.
Sin embargo, las versiones recientes de Windows tienen una función llamada “Instantáneas de volumen”, que está diseñada para crear instantáneas de solo lectura de todo el volumen, principalmente para copias de seguridad. Los bloqueos de archivos están ahí para garantizar la coherencia de los datos, por lo que son innecesarios si se realiza una instantánea de todo el sistema de archivos. Esto significa que es posible crear una instantánea de C:
, móntalo, copia tu SAM
archivo y luego descarte la instantánea.
La forma exacta de hacer esto depende de su versión de Windows: XP necesita un programa externo, Vista y 7 tienen vssadmin create shadow
y Server 2008 tiene la diskshadow
mando. La página Volcado seguro de hashes de controladores de dominio en vivo tiene más detalles sobre este proceso, así como instrucciones y scripts.
Alternativamente, existen herramientas como samdump
que abusan del proceso LSASS desde varias direcciones para extraer todos los hash de contraseña directamente de la memoria. Pueden ser mucho más rápidas que las instantáneas de VSS, pero tienen un mayor riesgo de bloquear el sistema.
Finalmente, Google saca este fragmento, cuya utilidad no puedo calificar por no haber usado nunca metasploit yo mismo:
meterpreter> use priv
meterpreter> hashdump
Editar: Decidí editar después de muchos años de abandono.
El archivo SAM de Windows está bloqueado para copiar / leer a diferencia de /etc/shadow
en sistemas Linux. En cambio, para sortear estas herramientas, se extraerán hashes de la memoria.
Hay formas de evitar esto que cubriré a continuación:
Mimikatz
Ejecute mimikatz con sekurlsa::logonpasswords
.
fgdump
Funcionalidad similar a mimikatz. Ejecútelo y los hash se descargarán en archivos locales.
hashdump
Integrado en meterpreter; extrae hashes de la memoria.
Registro
También es posible extraer del registro (si tiene SYSTEM
acceso):
-
reg save hklmsam %tmp%/sam.reg
yreg save hklmsystem %tmp%/system.reg
- Copie los archivos y luego ejecute:
samdump2 system sam
Copias de seguridad
El archivo SAM también se puede almacenar en una ubicación de respaldo: C:WindowsRepairSAM
También debo mencionar que las herramientas requerirán como mínimo Administrator
privilegios; y la mayoría no obtendrá todos los valores hash a menos que SYSTEM
se logra el acceso.