* ¿Trabajas en una **empresa de ciberseguridad**? ¿Quieres ver tu **empresa anunciada en HackTricks**? ¿O quieres tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* Descubre [**La Familia PEASS**](https://opensea.io/collection/the-peass-family), nuestra colección exclusiva de [**NFTs**](https://opensea.io/collection/the-peass-family)
* Obtén el [**merchandising oficial de PEASS y HackTricks**](https://peass.creator-spring.com)
* **Únete al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de Telegram**](https://t.me/peass) o **sígueme** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Comparte tus trucos de hacking enviando PRs al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).
</details>
## Mimikatz de Credenciales
```bash
#Elevate Privileges to extract the credentials
privilege::debug #This should give am error if you are Admin, butif it does, check if the SeDebugPrivilege was removed from Admins
[**Aprende sobre algunas posibles protecciones de credenciales aquí.**](credentials-protections.md) **Estas protecciones podrían evitar que Mimikatz extraiga algunas credenciales.**
Utiliza el [**Plugin de Credenciales**](https://github.com/carlospolop/MSF-Credentials) **que he creado para buscar contraseñas y hashes** dentro de la víctima.
Como **Procdump de** [**SysInternals** ](https://docs.microsoft.com/en-us/sysinternals/downloads/sysinternals-suite)**es una herramienta legítima de Microsoft**, no es detectada por Defender.\
**Nota**: Algunos **AV** pueden **detectar** como **malicioso** el uso de **procdump.exe para volcar lsass.exe**, esto se debe a que están **detectando** las cadenas **"procdump.exe" y "lsass.exe"**. Por lo tanto, es más sigiloso **pasar** como **argumento** el **PID** de lsass.exe a procdump **en lugar de** el nombre lsass.exe.
Hay una DLL llamada **comsvcs.dll**, ubicada en `C:\Windows\System32`, que **vuelca la memoria del proceso** cada vez que se **bloquea**. Esta DLL contiene una **función** llamada **`MiniDumpW`** que está escrita para que se pueda llamar con `rundll32.exe`.\
Los dos primeros argumentos no se utilizan, pero el tercero se divide en 3 partes. La primera parte es el ID del proceso que se va a volcar, la segunda parte es la ubicación del archivo de volcado y la tercera parte es la palabra **full**. No hay otra opción.\
Una vez que se han analizado estos 3 argumentos, básicamente esta DLL crea el archivo de volcado y vuelca el proceso especificado en ese archivo de volcado.\
Gracias a esta función, podemos usar **comsvcs.dll** para volcar el proceso lsass en lugar de subir procdump y ejecutarlo. (Esta información fue extraída de [https://en.hackndo.com/remote-lsass-dump-passwords/](https://en.hackndo.com/remote-lsass-dump-passwords/))
```
rundll32.exe C:\Windows\System32\comsvcs.dll MiniDump <lsasspid> lsass.dmp full
[Procdump](https://docs.microsoft.com/en-us/sysinternals/downloads/procdump) es un archivo binario firmado por Microsoft que forma parte de la suite [sysinternals](https://docs.microsoft.com/en-us/sysinternals/).
El comando `crackmapexec` es una herramienta muy útil para realizar pruebas de penetración en entornos de Windows. Una de las funcionalidades que ofrece es la capacidad de extraer los hashes SAM de un sistema objetivo.
Para extraer los hashes SAM, puedes utilizar el siguiente comando:
```plaintext
crackmapexec <opciones> --sam
```
Este comando buscará y extraerá los hashes SAM almacenados en el sistema objetivo. Los hashes SAM son contraseñas cifradas que se utilizan para autenticar a los usuarios en un sistema Windows. Al extraer estos hashes, puedes intentar crackearlos y obtener las contraseñas originales.
Es importante tener en cuenta que extraer los hashes SAM de un sistema sin autorización es ilegal y puede tener consecuencias legales graves. Solo debes utilizar esta técnica en entornos controlados y con el permiso del propietario del sistema.
Una vez que hayas extraído los hashes SAM, puedes utilizar herramientas como `hashcat` o `John the Ripper` para intentar crackearlos y obtener las contraseñas originales.
El volcado de secretos de LSA es una técnica utilizada para extraer información confidencial almacenada en el Registro de seguridad local (LSA) de un sistema Windows. Estos secretos pueden incluir contraseñas, claves de cifrado y otros datos sensibles.
#### Descripción
El Registro de seguridad local (LSA) es una base de datos encriptada que almacena información confidencial relacionada con la autenticación y la seguridad del sistema. Algunos de los secretos almacenados en el LSA incluyen:
- Contraseñas de cuentas de usuario
- Claves de cifrado
- Credenciales de inicio de sesión en red
- Certificados digitales
El volcado de secretos de LSA implica extraer estos secretos del LSA y guardarlos en un archivo para su posterior análisis. Esto se puede lograr utilizando herramientas como Mimikatz o utilizando técnicas de programación para acceder directamente al LSA.
#### Impacto
El volcado de secretos de LSA puede tener un impacto significativo en la seguridad de un sistema. Al obtener acceso a contraseñas y otras credenciales almacenadas en el LSA, un atacante puede comprometer cuentas de usuario, acceder a sistemas y datos sensibles, y realizar ataques adicionales, como el movimiento lateral en una red.
#### Mitigación
Para mitigar el riesgo de volcado de secretos de LSA, se recomienda implementar las siguientes medidas de seguridad:
- Mantener el sistema operativo y las aplicaciones actualizadas con los últimos parches de seguridad.
- Utilizar soluciones de seguridad, como firewalls y sistemas de detección de intrusiones, para detectar y bloquear actividades sospechosas.
- Limitar el acceso a cuentas privilegiadas y utilizar contraseñas fuertes y únicas.
- Implementar políticas de seguridad que restrinjan el acceso a los archivos y registros del sistema.
- Monitorear y auditar regularmente los registros de eventos del sistema en busca de actividades sospechosas.
Para obtener las credenciales almacenadas en un controlador de dominio (DC) de destino, es necesario volcar el archivo NTDS.dit. Este archivo contiene la base de datos de Active Directory, que incluye información sobre los usuarios y sus contraseñas.
El proceso para volcar el archivo NTDS.dit puede variar dependiendo de la versión de Windows del DC de destino. A continuación se muestra un ejemplo de cómo hacerlo en Windows Server 2016:
1. Abre una sesión de PowerShell en el DC de destino.
2. Ejecuta el siguiente comando para cargar el módulo de PowerShell necesario:
```powershell
Import-Module ActiveDirectory
```
3. Ejecuta el siguiente comando para volcar el archivo NTDS.dit:
Asegúrate de reemplazar `<nombre_del_controlador_de_dominio>` con el nombre del controlador de dominio de destino y `<ruta_del_archivo_de_volcado>` con la ruta donde deseas guardar el archivo de volcado.
Una vez que se haya completado el volcado, tendrás acceso al archivo NTDS.dit, que contiene las credenciales almacenadas en el controlador de dominio de destino.
Para obtener el historial de contraseñas almacenado en el archivo NTDS.dit de un controlador de dominio objetivo en Windows, puedes seguir los siguientes pasos:
1. Descarga e instala la herramienta `ntdsutil` en tu máquina de ataque.
2. Abre una ventana de comandos y ejecuta `ntdsutil` para iniciar la utilidad.
3. Dentro de `ntdsutil`, ejecuta los siguientes comandos:
Asegúrate de reemplazar `C:\path\to\output\folder` con la ruta de la carpeta donde deseas guardar los archivos de salida.
4. Espera a que se complete el proceso de exportación. Una vez finalizado, encontrarás los archivos `ntds.dit` y `system` en la carpeta de salida especificada.
Estos archivos contienen el historial de contraseñas almacenado en el controlador de dominio objetivo. Puedes utilizar herramientas como `hashcat` para extraer y descifrar las contraseñas de estos archivos.
Recuerda que este proceso debe realizarse de manera ética y legal, solo en sistemas en los que tengas permiso para realizar pruebas de penetración o auditorías de seguridad.
Estos archivos deben estar **ubicados** en _C:\windows\system32\config\SAM_ y _C:\windows\system32\config\SYSTEM_. Pero **no puedes simplemente copiarlos de manera regular** porque están protegidos.
Pero también puedes hacer lo mismo desde **Powershell**. Este es un ejemplo de **cómo copiar el archivo SAM** (el disco duro utilizado es "C:" y se guarda en C:\users\Public), pero puedes usar esto para copiar cualquier archivo protegido:
Código del libro: [https://0xword.com/es/libros/99-hacking-windows-ataques-a-sistemas-y-redes-microsoft.html](https://0xword.com/es/libros/99-hacking-windows-ataques-a-sistemas-y-redes-microsoft.html)
Finalmente, también podrías usar el [**script de PowerShell Invoke-NinjaCopy**](https://github.com/PowerShellMafia/PowerSploit/blob/master/Exfiltration/Invoke-NinjaCopy.ps1) para hacer una copia de SAM, SYSTEM y ntds.dit.
## **Credenciales de Active Directory - NTDS.dit**
El archivo Ntds.dit es una base de datos que almacena datos de Active Directory, incluyendo información sobre objetos de usuario, grupos y membresía de grupos. Incluye los hashes de contraseñas de todos los usuarios en el dominio.
El importante archivo NTDS.dit se encuentra en: _%SystemRoom%/NTDS/ntds.dit_\
* **Tabla de datos**: Contiene la información sobre los objetos (usuarios, grupos...)
* **Tabla de enlaces**: Información sobre las relaciones (miembro de...)
* **Tabla SD**: Contiene los descriptores de seguridad de cada objeto
Más información sobre esto: [http://blogs.chrisse.se/2012/02/11/how-the-active-directory-data-store-really-works-inside-ntds-dit-part-1/](http://blogs.chrisse.se/2012/02/11/how-the-active-directory-data-store-really-works-inside-ntds-dit-part-1/)
Windows utiliza Ntdsa.dll para interactuar con ese archivo y es utilizado por lsass.exe. Luego, parte del archivo NTDS.dit podría estar ubicado dentro de la memoria de `lsass` (puede encontrar los datos más recientemente accedidos probablemente debido a la mejora de rendimiento mediante el uso de una caché).
PEK tiene el mismo valor en cada controlador de dominio, pero está cifrado dentro del archivo NTDS.dit utilizando la BOOTKEY del archivo SYSTEM del controlador de dominio (es diferente entre controladores de dominio). Por eso, para obtener las credenciales del archivo NTDS.dit, necesitas los archivos NTDS.dit y SYSTEM (_C:\Windows\System32\config\SYSTEM_).
También puedes utilizar el truco de [**copia de sombra de volumen**](./#stealing-sam-and-system) para copiar el archivo **ntds.dit**. Recuerda que también necesitarás una copia del archivo **SYSTEM** (nuevamente, [**dúmpealo del registro o utiliza el truco de copia de sombra de volumen**](./#stealing-sam-and-system)).
Finalmente, también puedes utilizar el módulo de **metasploit**: _post/windows/gather/credentials/domain\_hashdump_ o **mimikatz**`lsadump::lsa /inject`
Los objetos de NTDS pueden ser extraídos a una base de datos SQLite con [ntdsdotsqlite](https://github.com/almandin/ntdsdotsqlite). No solo se extraen secretos, sino también los objetos completos y sus atributos para una mayor extracción de información cuando ya se ha recuperado el archivo NTDS.dit en bruto.
El archivo `SYSTEM` es opcional pero permite la desencriptación de secretos (hashes NT y LM, credenciales suplementarias como contraseñas en texto claro, claves de Kerberos o de confianza, historiales de contraseñas NT y LM). Junto con otra información, se extraen los siguientes datos: cuentas de usuario y máquina con sus hashes, indicadores UAC, marca de tiempo del último inicio de sesión y cambio de contraseña, descripción de las cuentas, nombres, UPN, SPN, grupos y membresías recursivas, árbol de unidades organizativas y membresía, dominios de confianza con tipo de confianza, dirección y atributos...
Descarga el archivo binario desde [aquí](https://github.com/AlessandroZ/LaZagne/releases). Puedes usar este archivo binario para extraer credenciales de varios programas.
Esta herramienta se puede utilizar para extraer credenciales de la memoria. Descárgala desde: [http://www.ampliasecurity.com/research/windows-credentials-editor/](https://www.ampliasecurity.com/research/windows-credentials-editor/)
You can find this binary inside Kali, just do: locate pwdump.exe
PwDump.exe -o outpwdump -x 127.0.0.1
type outpwdump
```
### PwDump7
Descárgalo desde: [http://www.tarasco.org/security/pwdump\_7](http://www.tarasco.org/security/pwdump\_7) y simplemente **ejecútalo** y las contraseñas serán extraídas.
* ¿Trabajas en una **empresa de ciberseguridad**? ¿Quieres ver tu **empresa anunciada en HackTricks**? ¿O quieres tener acceso a la **última versión de PEASS o descargar HackTricks en PDF**? ¡Consulta los [**PLANES DE SUSCRIPCIÓN**](https://github.com/sponsors/carlospolop)!
* **Únete al** [**💬**](https://emojipedia.org/speech-balloon/) [**grupo de Discord**](https://discord.gg/hRep4RUj7f) o al [**grupo de Telegram**](https://t.me/peass) o **sígueme** en **Twitter** [**🐦**](https://github.com/carlospolop/hacktricks/tree/7af18b62b3bdc423e11444677a6a73d4043511e9/\[https:/emojipedia.org/bird/README.md)[**@carlospolopm**](https://twitter.com/hacktricks\_live)**.**
* **Comparte tus trucos de hacking enviando PRs al** [**repositorio de hacktricks**](https://github.com/carlospolop/hacktricks) **y al** [**repositorio de hacktricks-cloud**](https://github.com/carlospolop/hacktricks-cloud).