Exploté máquinas de prueba usando metasploit y pude obtener los hashes del archivo SAM; He intentado ejecutar comandos SYSTEM
para obtenerlos, pero no puedo hacerlo. ¿Cuál es un método más portátil para extraer los hashes del archivo SAM?
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 característica llamada "Volume Shadow Copy", 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:
, montarla, copiar su SAM
archivo y luego descartar la instantánea.
Cómo hacerlo exactamente depende de su versión de Windows: XP necesita un programa externo, Vista y 7 tienen vssadmin create shadow
, y Server 2008 tiene el diskshadow
comando. La página Descarga segura de hashes de controladores de dominio en vivo tiene más detalles sobre este proceso, así como instrucciones y scripts.
Alternativamente, existen herramientas como las samdump
que abusan del proceso LSASS desde varias direcciones para extraer todos los hashes de contraseñas directamente de la memoria. Pueden ser mucho más rápidos que las instantáneas VSS, pero tienen un mayor riesgo de bloquear el sistema.
Finalmente, Google saca este fragmento, cuya utilidad no puedo calificar porque nunca he usado metasploit:
meterpreter> use priv
meterpreter> hashdump
HKLM\SYSTEM\CurrentControlSet\Control\HiveList
para ver qué subclaves corresponden a qué archivos.Existe una solución más simple que no necesita administrar volúmenes paralelos ni utilizar herramientas externas. Simplemente puede copiar SAM y SYSTEM con el
reg
comando proporcionado por microsoft (probado en Windows 7 y Windows Server 2008):(el último parámetro es la ubicación donde desea copiar el archivo)
Luego puede extraer los hashes en un sistema Linux con el paquete samdump2 (disponible en Debian:)
apt-get install samdump2
:fuente
Editar: decidí editar después de muchos años de abandono.
El archivo SAM de Windows no puede copiarse / leerse a diferencia
/etc/shadow
de los sistemas Linux. En cambio, para evitar esto, las herramientas extraerán hashes de la memoria.Hay maneras de evitar esto que cubriré a continuación:
Mimikatz
Ejecuta mimikatz con
sekurlsa::logonpasswords
.fgdump
Funcionalidad similar a mimikatz. Ejecútelo y los hashes se volcarán a los archivos locales.
hashdump
Construido en meterpreter; extrae hashes de la memoria.
Registro
También es posible extraer del registro (si tiene
SYSTEM
acceso):reg save hklm\sam %tmp%/sam.reg
yreg save hklm\system %tmp%/system.reg
samdump2 system sam
Copias de seguridad
El archivo SAM también se puede almacenar en una ubicación de respaldo:
C:\Windows\Repair\SAM
También debo mencionar que las herramientas requerirán, como mínimo,
Administrator
privilegios; y la mayoría no obtendrá todos los hashes a menos queSYSTEM
se obtenga acceso.fuente
Mimikatz
ofgdump
más fáciles de transportar que C & A o diferente a él? Por lo que puedo decir, todas son herramientas de terceros que no vienen con Windows y deben cargarse por separado. Además, para mi propia curiosidad, ¿cuál es el caso de uso de las herramientas de volcado de hash cuando existen herramientas como Ophcrack?El método Obscuresec supera sus dificultades localmente en cualquier máquina con Windows Powershell 1.0 habilitado. Deja algunos objetivos que conozco, pero bueno, ¡buen trabajo! (gracias Chris)
Nota: Siempre se necesitan privilegios de administrador para realizar dicha operación.
Podrías usar
o de otra fuente (más reciente podría agregar)
Lectura aconsejada:
Para capturar sistemas remotos, las colmenas SAM y SYSTEM utilizan lo mencionado anteriormente junto con
fuente
Me gustaría especificar un método adicional que no se describe aquí, ya que mucho tiempo en Red Teaming / Penetration Testing las formas más obvias no son accesibles (denegadas, son monitoreadas por Blue Team, etc.) y es bueno conocer todas las técnicas disponibles.
Una de las soluciones alternativas para acceder a los archivos, cuyo sistema tiene identificadores (no se puede copiar / eliminar como de costumbre), se
vssshadow.exe
indica anteriormente.Segundo -
esentutil.exe
.Comando exacto para tomar una copia del archivo con identificador:
esentutl.exe /y /vss c:\windows\ntds\ntds.dit /d c:\folder\ntds.dit
Esto se aplica a SAM, SYSTEM, SECURITY, NTDS.DIT, etc.
PD
esentutl.py
: el paquete de impacket está en: https://github.com/SecureAuthCorp/impacket/blob/master/examples/esentutl.pyImagen de PSS esentutl PoC
fuente