como-usar-y-detectar-mimikatz-Blog-Behacker

Uso y detección de Mimikatz

Esta es una traducción del post original publicado el 24 de Julio del 2020, disponible en la URL https://neil-fox.github.io/Mimikatz-usage-&-detection/

Mimikatz es una herramienta utilizada para extraer credenciales de la memoria y ha sido utilizada por numerosos grupos APT, incluyendo Wizard Spider, Stone Panda, APT 41, Fancy bear, Refined Kitten, Helix Kitten, Remix Kitten y Static Kitten. 

Si no es detectada por el software antivirus, esta herramienta puede ser muy discreta, ya que opera en la memoria y deja pocos artefactos a su paso. Además, Mimikatz es capaz de realizar ataques pass the hash y generar golden tickets, lo que permite a un atacante moverse lateralmente.

Este reporte describirá cómo usar algunos de los módulos de Mimikatz y que artefactos, si existen, deja posterior a su ejecución.

Mimikatz

https://github.com/gentilkiwi/mimikatz

Módulo – serkurlsa

Este módulo extrae contraseñas, llaves, pines y tickets de la memoria del proceso ‘lsass’ (Local Security Authority Subsystem Service).

sekurlsas::logonpasswords

A continuación se muestra un extracto de la salida del módulo “sekurlsa::logonpasswords”. 

El hash NTLM del usuario se extrae y luego puede ser descifrado en un ataque “offline” de cracking usando una herramienta como John the Ripper o Hashcat, alternativamente el hash se puede pasar por la red usando Mimikatz.

mimikatz-modulo-serkurlsa-behackerpro

Un evento es almacenado en el log de Sysmon

mimikatz-behackerpro-sysmon

Este es el mismo evento, viendo los detalles en una vista más amigable.

mimikatz-Behackerpro-sekurlsas-logonpass

Esta actividad puede ser detectada enfocándose en los eventos de Sysmon que tengan el ID de evento 10 y donde el proceso objetivo se indentifique como “C:\Windows\system32\lsass.exe” y el accesso concedido sea “0x1010”.

sekurlsas::pth

Mimikatz es capaz de realizar ataques pass the hash para ejecutar un proceso haciendo uso de las credenciales de otro usuario, lo cual se logra usando el hash NTLM de la contraseña del usuario.

En el siguiente ejemplo, una máquina en el dominio fox.local ha sido comprometida, la cuenta en esta máquina es ‘bwayne’. 

Mimikatz puede extraer el hash NTLM de cualquier usuario que haya iniciado sesión en la máquina desde su último reinicio y luego pasar este hash para permitirle al atacante moverse lateralmente.

La siguiente imagen muestra que el usuario actual ‘bwayne’ no tiene acceso a ningún grupo de administradores de dominio y no puede acceder a otro dispositivo en el mismo dominio llamado ‘IRONMAN’ usando PsExec:

mimikatz-Behackerpro-whoami

Primero el atacante puede obtener los hashes NTLM usando el comando ‘sekurlsa::logonpasswords’, la imagen a continuación muestra el hash NTLM para del usuario ‘tstark’

mimikatz-Behackerpro-tstarkhash

Los privilegios del usuario ‘tstark’ pueden ser obtenidos usando el hash NTLM.

mimikatz-Behackerpro-sekurlsa-pth

Entonces se genera un nuevo prompt de comandos usando el hash NTLM de ‘tstark’, el atacante ahora puede acceder remotamente a la máquina ‘IRONMAN’ como este usuario usando una herramienta como PsExec:

mimikatz-Behackerpro-ironman-popped

No hay logs generados para Mimikatz; sin embargo, los siguientes logs son generados para el movimiento lateral usando PsExec.

Dos eventos se han generados en el log de eventos de seguridad de Windows.

mimikatz-Behackerpro-pth-seclog

El contenido del evento 4648 ‘Se intentó iniciar sesión con credenciales explícitas.’

mimikatz-Behackerpro-evento-4648

Tres eventos se generan en el log de Sysmon

mimikatz-Behackerpro-pth-sysmonlog

Contenido del evento, con ID 3

mimikatz-Behackerpro-sysmon-id3

Contenido del evento del Sysmon con ID 22

mimikatz-Behackerpro-sysmon-id22

Procesos en ejecución

mimikatz-Behackerpro-pth-ptree

mimikatz-Behackerpro-pth-procmon

sekurlsas::tickets

El comando ‘tickets’ permite extraer la lista de tickets Kerberos de todas las sesiones. El argumento opcional ‘/export’ puede ser usado para exportar tickets en archivos ‘.kirbi’.

mimikatz-Behackerpro-sekurlsa-ticket1

Múltiples eventos son registrados en los logs Sysmon

mimikatz-Behackerpro-sekurlsa-ticket-sys

Contenido del ID de evento 11 del Sysmon

mimikatz-Behackerpro-sekurlsa-ticket-sys-1

Módulo – lsadump

lsadump::lsa /patch

Este comando es otro método de obtener el lsa, el cual contiene nombres de usuario y sus hashes NTLM asociados. Los hashes pueden ser crackeados o enviados a través de la red.

mimikatz-Behackerpro-lsadump-lsa

Logs de eventos de seguridad de Windows generados

mimikatz-Behackerpro-lsadump-lsa-sec

lsadump::lsa /inject /name:krbtgt

Este comando es usado para obtener las credenciales de una cuenta específica, en este ejemplo la cuenta krbtgt ha sido definida como objetivo

mimikatz-Behackerpro-lsadump-inject

La imagen que se presenta a continuación muestra la sintaxis requerida para crear un golden tickete iniciar un ataque pass the ticket

  • Crear un usuario personalizado – /User:FakeAdmin
  • Dominio para el ticket – /domain:fox.local
  • SID (Security Identifier) para el dominio – /sid<sid>
  • Hash NTLM de la cuenta krbtgt – /krbtgt:<Hash NTLM>
  • ID de usuario para la cuenta creada, 500 se específica para permisos de administración – /id:500
  • Iniciar el ataque de pass the ticket -/ppt

mimikatz-Behackerpro-goldenticket

Prompt de comandos generado con el nuevo ticket usando ‘misc::cmd’

Después es posible enumerar el directorio de una máquina remota usando el comando ‘dir’

mimikatz-Behackerpro-goldenticket-2

Eventos generados en el log de seguridad de la máquina remota

mimikatz-Behackerpro-gticket-batman-sec

Contenido del evento 4624, una cuenta ha iniciado sesión correctamente

mimikatz-Behackerpro-gticket-batman-sec2

Procesos en ejecución

mimikatz-Behackerpro-gticket-ptree

behackerpro-pentesting-aprende-ciberseguridad

Suscríbete hoy a nuestros cursos Exploratorios

¡Descubre cuál es tu perfil Hacker!

¡Quiero Registrarme Gratis!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *