Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
latma — Recopila y analiza registros de autenticación de AD y Azure AD para detectar ataques de movimiento lateral mediante detección de anomalías basada en grafos, visualizando patrones sospechosos con líneas de tiempo interactivas y GIFs. | Kitploit
Herramientas/GitHubGitHub/silverfort-open-source/latma
Movimiento LateralRecopilación de InformaciónPruebas de PenetraciónSeguridad en la NubeInteligencia de AmenazasRespuesta a IncidentesDetección de AnomalíasAnálisis de Registros

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir
GitHub
silverfort-open-source/latma

latma

Recopila y analiza registros de autenticación de AD y Azure AD para detectar ataques de movimiento lateral mediante detección de anomalías basada en grafos, visualizando patrones sospechosos con líneas de tiempo interactivas y GIFs.

Ver Repositorio
8014hace 3 añosRevisado por Kitploit

Herramienta de análisis de movimiento lateral

El analizador de movimiento lateral (LATMA) recopila registros de autenticación del dominio y entornos de Azure AD y busca posibles ataques de movimiento lateral y actividad sospechosa. El movimiento lateral puede ocurrir en el entorno de AD o entre la nube y el entorno local. La herramienta visualiza los hallazgos con diagramas que representan los patrones de movimiento lateral. Esta herramienta contiene dos módulos, uno que recopila los registros y otro que los analiza. Puede ejecutar cada uno de los módulos por separado. El recolector de registros de eventos debe ejecutarse en una máquina Windows en un entorno de dominio de Active Directory con Python 3.8 o superior. El analizador puede ejecutarse en una máquina Linux y en una máquina Windows.

El Recolector

El Recolector de Registros de Eventos tiene dos funcionalidades: escanear controladores de dominio en busca de registros de autenticación NTLM exitosos y puntos finales en busca de registros de autenticación Kerberos exitosos, y recopilar registros de inicio de sesión de Azure AD. La recopilación de registros del entorno de AD requiere acceso a los puertos LDAP/S 389 y 636 y al puerto RPC 135 del controlador de dominio y los clientes. Además, requiere privilegios de administrador de dominio o un usuario en el grupo de Lectores de registros de eventos o alguien con permisos equivalentes. Esto es necesario para extraer registros de eventos de todos los puntos finales y controladores de dominio. Para la recopilación de inicios de sesión, necesita tener una aplicación en su entorno de Azure-AD y proporcionar la información relevante en el archivo de configuración. Asegúrese de que el usuario utilizado para la recopilación de inicios de sesión no tenga configurado 2FA.

Recopilación de registros de AD

El recolector recopila registros NTLM del evento 8004 en los controladores de dominio y registros Kerberos del evento 4648 en los clientes. Genera como salida un archivo en formato CSV delimitado por comas con todo el tráfico de autenticación disponible. La salida contiene los campos: host de origen, destino, nombre de usuario, tipo de autenticación, SPN y marcas de tiempo en el formato %Y/%m/%d %H:%M. El recolector requiere credenciales de un usuario válido con privilegios de visor de eventos en todo el entorno y consulta los registros específicos para cada protocolo.

Verifique que los protocolos Kerberos y NTLM estén auditados en todo el entorno mediante la directiva de grupo:

  1. Kerberos - Configuración del equipo -> Directivas -> Configuración de Windows -> Configuración de seguridad -> Directivas locales -> Directivas de auditoría -> auditar eventos de inicio de sesión de cuenta
  2. NTLM - Configuración del equipo -> Directivas -> Configuración de Windows -> Configuración de seguridad -> Directivas locales -> Opciones de seguridad -> Seguridad de red: Restringir NTLM: auditar autenticación NTLM en este dominio

Recopilación de inicios de sesión de Azure AD

El recolector recopila solo los inicios de sesión exitosos de dispositivos híbridos o unidos a Azure-AD. Esos inicios de sesión representan movimientos exitosos entre activos del entorno de Azure AD y el entorno local o viceversa. El recolector requiere la siguiente información para recopilar datos:

  1. ID de inquilino
  2. Usuario sin 2FA
  3. Contraseña
  4. ID de cliente
  5. Secreto de cliente Puede usar una aplicación predefinida o crear una nueva.

El Analizador

El Analizador recibe como entrada una hoja de cálculo con datos de autenticación formateados como se especifica en la estructura de salida del Recolector. Busca actividad sospechosa con el algoritmo de análisis de movimiento lateral y también detecta IoCs adicionales de movimiento lateral. La fuente y el destino de la autenticación deben formalizarse con el nombre NetBIOS y no con direcciones IP.

Preliminares y conceptos clave del algoritmo LATMA

LATMA recibe un lote de solicitudes de autenticación y envía una alerta cuando encuentra ataques sospechosos de movimiento lateral. Definimos lo siguiente:

  • Grafo de Autenticación: Un grafo dirigido que contiene información sobre el tráfico de autenticación en el entorno. Los nodos del grafo son computadoras y las aristas son autenticaciones entre las computadoras. Las aristas del grafo tienen los atributos: tipo de protocolo, fecha de autenticación y la cuenta que envió la solicitud. Los nodos del grafo contienen información sobre la computadora que representan, detallada a continuación.

  • Grafo de movimiento lateral: Un subgrafo del grafo de autenticación que representa el movimiento del atacante. El grafo de movimiento lateral no siempre es un camino en el subgrafo; en algunos ataques, el atacante se mueve en muchas direcciones diferentes.

  • Alerta: Un subgrafo que el algoritmo sospecha que es parte del grafo de movimiento lateral.

LATMA realiza varias acciones durante su ejecución:

  • Recopilación de información: LATMA monitorea el comportamiento normal de los usuarios y máquinas y los caracteriza. El aprendizaje se utiliza posteriormente para decidir qué solicitudes de autenticación se desvían de un comportamiento normal y podrían estar involucradas en un ataque de movimiento lateral. Durante un período de aprendizaje de tres semanas, LATMA no lanza ninguna alerta y solo aprende el entorno. El aprendizaje continúa después de esas tres semanas.

  • Construcción del grafo de autenticación: Después del período de aprendizaje, cada autenticación relevante se agrega al grafo de autenticación. Es crítico filtrar solo las autenticaciones relevantes; de lo contrario, el número de aristas que contiene el grafo podría ser demasiado grande. Filtramos los siguientes tipos de protocolo: NTLM y Kerberos con los servicios “rpc”, “rpcss” y “termsrv”.

Manejo de alertas:

Agregar una autenticación al grafo puede desencadenar un proceso de alerta. En general, una nueva arista puede crear una nueva alerta, unirse a una alerta existente o fusionar dos alertas.

Recopilación de información

Cada solicitud de autenticación monitoreada por LATMA se utiliza para el aprendizaje y se almacena en una estructura de datos dedicada. Primero, identificamos sumideros y concentradores. Definimos sumideros como máquinas a las que acceden muchas (al menos 50) cuentas diferentes, como un portal de empresa o un servidor Exchange. Definimos concentradores como máquinas desde las que se autentican muchas cuentas diferentes (al menos 20), como proxies y VPN. Las autenticaciones hacia sumideros o desde concentradores se consideran benignas y, por lo tanto, se eliminan del grafo de autenticación.

Además de la clasificación básica, LATMA empareja cuentas con máquinas desde las que se autentican con frecuencia. Si una cuenta se autentica desde una máquina al menos tres días diferentes en un período de tres semanas, significa que esta cuenta coincide con la máquina y cualquier autenticación de esta cuenta desde la máquina se considera benigna y se elimina del grafo de autenticación.

Los IoCs de movimiento lateral son:

Bastón blanco  - Cuentas de usuario que se autentican desde una sola máquina a múltiples en un tiempo relativamente corto.

Puente - La cuenta de usuario X se autentica desde la máquina A a la máquina B y, posteriormente, desde la máquina B a la máquina C. Este IoC potencialmente indica que un atacante avanza desde su punto de apoyo inicial (A) hacia una máquina de destino que sirve mejor a los objetivos del ataque.

Puente conmutado - La cuenta de usuario X se autentica desde la máquina A a la máquina B, seguida por la cuenta de usuario Y autenticándose desde la máquina B a la máquina C. Este IoC potencialmente indica que un atacante descubre y compromete una cuenta adicional a lo largo de su camino y usa la nueva cuenta para avanzar (un ejemplo común es que la cuenta X sea un usuario de dominio estándar y la cuenta Y sea un usuario administrador).

Cambio de peso - Bastón blanco (ver arriba) desde la máquina A hacia las máquinas {B1,…, Bn}, seguido de otro Bastón blanco desde la máquina Bx hacia las máquinas {C1,…,Cn}. Este IoC potencialmente indica que un atacante ha determinado que la máquina B serviría mejor a los propósitos del ataque y a partir de ahora usa la máquina B como fuente para búsquedas adicionales.

Explosión - La cuenta de usuario X se autentica desde la máquina A a múltiples máquinas en un período de tiempo muy corto. Un ejemplo común es un atacante que instala o ejecuta ransomware en una gran cantidad de máquinas simultáneamente.

Salida:

El analizador genera varios archivos diferentes

  1. Una hoja de cálculo con todas las autenticaciones sospechosas (all_authentications.csv) y su clasificación de roles, y una hoja de cálculo diferente para las autenticaciones que se sospecha que son parte del movimiento lateral (propagation.csv)
  2. Un archivo GIF representa la progresión, donde cada fotograma del GIF especifica exactamente cuál fue la acción sospechosa
  3. Una línea de tiempo interactiva con todos los eventos sospechosos. Los eventos que están relacionados entre sí tienen el mismo color

Dependencias:

  1. Python 3.8
  2. bibliotecas como se indica en requirements.txt
  3. Ejecute pip install . para ejecutar la configuración automáticamente
  4. Auditar Kerberos y NTLM en todo el entorno
  5. Consultas LDAP a los controladores de dominio
  6. Credenciales de administrador de dominio o cualquier credencial con permisos de visor de eventos remoto MS-EVEN6.

uso

El Recolector

Argumentos requeridos:

  1. credentials [domain.com/]usuario[:contraseña] formato de credenciales alternativamente [domain.com/]usuario y luego se solicitará la contraseña de forma segura. Para el dominio, inserte el FQDN (Nombre de dominio completamente calificado). Argumentos opcionales:
  2. -ntlm Recuperar registros de autenticación NTLM del DC
  3. -kerberos Recuperar registros de autenticación Kerberos de todas las computadoras en el dominio
  4. -debug Activar salida DEBUG
  5. -help mostrar este mensaje de ayuda y salir
  6. -filter Consultar una OU o contenedor específico en el dominio, resultará en todas las estaciones de trabajo en la sub-OU también. Cada OU estará en formato DN (Nombre Distinguido). Soporta múltiples OUs con un delimitador de punto y coma. Ejemplo: OU=subunit,OU=unit;OU=anotherUnit,DC=domain,DC=com Ejemplo: CN=container,OU=unit;OU=anotherUnit,DC=domain,DC=com
  7. -date Fecha de inicio para recopilar registros de eventos. Formato mes-día-año, si no se especifica, toma todos los datos disponibles
  8. -threads cantidad de hilos de trabajo a usar
  9. -ldap Usar LDAP no seguro en lugar de LDAP/S
  10. -ldap_domain Dominio personalizado en las credenciales de inicio de sesión LDAP. Si está vacío, usará el dominio de sesión del usuario actual

Uso del binario Abra el símbolo del sistema y navegue hasta la carpeta del binario. Ejecute los ejecutables con los argumentos especificados anteriormente.

Ejemplos

En los archivos de ejemplo tiene varias muestras de entornos reales (algunos contienen ataques de movimiento lateral y otros no) que puede proporcionar como entrada para el analizador.

Ejemplo de uso

  1. python eventlogcollector.py domain.com/username:password -ntlm -kerberos
Descargar herramienta