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
PyADRecon — Implementación en Python3 de ADRecon con soporte para autenticación NTLM y Kerberos consultando LDAP. Genera archivos CSV individuales y un único informe XSLX + HTML sobre tu dominio AD. | Kitploit
Herramientas/GitHubGitHub/l4rm4nd/pyadrecon
ReconocimientoAnálisis de VulnerabilidadesRecopilación de InformaciónPost-ExplotaciónPruebas de PenetraciónAutenticaciónRed Teaming
GitHubl4rm4nd/pyadrecon

PyADRecon

Implementación en Python3 de ADRecon con soporte para autenticación NTLM y Kerberos consultando LDAP. Genera archivos CSV individuales y un único informe XSLX + HTML sobre tu dominio AD.

Ver Repositorio
67416hace 2 mesesRevisado por Kitploit

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 →
Sitio web
Compartir
pyadrecon

Implementación en Python3 de un ADRecon mejorado para Pentesters y Blue Teams.

ADRecon es una herramienta que recopila información sobre MS Active Directory y genera un informe XSLX para proporcionar una imagen holística del estado actual del entorno AD objetivo.

[!TIP] Si eres un Red Team, puede que quieras revisar ADRecon-ADWS en su lugar.

Tabla de contenido

  • Instalación
  • Uso
  • Docker
  • Módulos de recopilación
  • Panel HTML
  • Agradecimientos
  • Licencia

Instalación

root@kitploit:~
# versión estable desde pypi
pipx install pyadrecon

# último commit desde github
pipx install git+https://github.com/l4rm4nd/PyADRecon

Luego verifica la instalación:

root@kitploit:~
pyadrecon --version

[!TIP] Para Windows, puedes leer esto. NTLM + Kerberos compatible.

Uso

root@kitploit:~
usage: pyadrecon.py [-h] [--version] [--generate-excel-from CSV_DIR] [-dc DOMAIN_CONTROLLER] [-u USERNAME] [-p [PASSWORD]] [-d DOMAIN] [--auth {ntlm,kerberos}] [--tgt-file TGT_FILE] [--tgt-base64 TGT_BASE64]
                    [--ssl] [--port PORT] [-o OUTPUT] [--page-size PAGE_SIZE] [--threads THREADS] [--dormant-days DORMANT_DAYS] [--password-age PASSWORD_AGE] [--only-enabled] [--collect COLLECT]
                    [--no-excel] [-v]

PyADRecon - Herramienta de Reconocimiento de Active Directory en Python

options:
  -h, --help            muestra este mensaje de ayuda y salir
  --version             muestra el número de versión del programa y salir  
  --generate-excel-from CSV_DIR
                        Generar informe Excel desde directorio CSV (modo autónomo, sin necesidad de conexión AD)
  --generate-dashboard-from CSV_DIR
                        Generar panel HTML desde archivos CSV existentes (modo autónomo)
  -dc, --domain-controller DOMAIN_CONTROLLER
                        IP o nombre de host del controlador de dominio
  -u, --username USERNAME
                        Nombre de usuario para autenticación
  -p, --password [PASSWORD]
                        Contraseña para autenticación (opcional si se usa TGT)
  -d, --domain DOMAIN   Nombre de dominio (ej., DOMAIN.LOCAL) - Requerido para autenticación Kerberos
  --auth {ntlm,kerberos}
                        Método de autenticación (por defecto: ntlm)
  --tgt-file TGT_FILE   Ruta al archivo ccache TGT de Kerberos (para autenticación Kerberos)
  --tgt-base64 TGT_BASE64
                        Ccache TGT de Kerberos codificado en Base64 (para autenticación Kerberos)
  --ssl                 Forzar SSL/TLS (LDAPS). No se permite fallback LDAP.
  --port PORT           Puerto LDAP (por defecto: 389, usa 636 para LDAPS)
  -o, --output OUTPUT   Directorio de salida (por defecto: PyADRecon-Report-<marca de tiempo>)
  --page-size PAGE_SIZE
                        Tamaño de página LDAP (por defecto: 500)
  --dormant-days DORMANT_DAYS
                        Días para el umbral de cuenta inactiva (por defecto: 90)
  --password-age PASSWORD_AGE
                        Días para el umbral de antigüedad de contraseña (por defecto: 180)
  --only-enabled        Solo recopilar objetos habilitados
  --collect COLLECT     Módulos separados por comas para recopilar (por defecto: todos)
  --workstation WORKSTATION
                        Suplantar explícitamente nombre de estación de trabajo para autenticación NTLM (por defecto: cadena vacía, omite restricciones de userWorkstations)  
  --no-excel            Omitir generación de informe Excel
  --no-dashboard        Omitir generación de panel HTML interactivo  
  -v, --verbose         Salida detallada

Ejemplos:
  # Uso básico con autenticación NTLM
  pyadrecon.py -dc 192.168.1.1 -u admin -p password123 -d DOMAIN.LOCAL

  # Con autenticación Kerberos (omite el enlace de canal)
  pyadrecon.py -dc dc01.domain.local -u admin -p password123 -d DOMAIN.LOCAL --auth kerberos

  # Con Kerberos usando TGT desde archivo (omite el enlace de canal)
  pyadrecon.py -dc dc01.domain.local -u admin -d DOMAIN.LOCAL --auth kerberos --tgt-file /tmp/admin.ccache

  # Con Kerberos usando TGT desde cadena base64 (omite el enlace de canal)
  pyadrecon.py -dc dc01.domain.local -u admin -d DOMAIN.LOCAL --auth kerberos --tgt-base64 BQQAAAw...

  # Solo recopilar módulos específicos
  pyadrecon.py -dc 192.168.1.1 -u admin -p pass -d DOMAIN.LOCAL --collect users,groups,computers

  # Salida a directorio específico
  pyadrecon.py -dc 192.168.1.1 -u admin -p pass -d DOMAIN.LOCAL -o /tmp/adrecon_output

  # Generar informe Excel desde archivos CSV existentes (modo autónomo)
  pyadrecon.py --generate-excel-from /path/to/CSV-Files -o report.xlsx

[!TIP] PyADRecon siempre intenta LDAPS en TCP/636 primero.

Si la bandera --ssl no se usa, se puede intentar LDAP en TCP/389 como fallback.

[!WARNING] Si el enlace de canal LDAP está habilitado, este script fallará con automatic bind not successful - strongerAuthRequired, ya que ldap3 no lo soporta (ver aquí). Debes usar autenticación Kerberos en su lugar.

Si usas autenticación Kerberos en Linux, por favor crea un archivo /etc/krb5.conf válido y una entrada de nombre de host del DC en /etc/hosts. Puedes leer esto. Si estás en Windows, asegúrate de tener tickets Kerberos válidos. Puedes leer esto. Ten en cuenta que puedes proporcionar un ticket TGT ya existente al script mediante --tgt-file o --tgt-base64. Por ejemplo, obtenido por Netexec mediante netexec smb <TARGET> <ARGS> --generate-tgt <FILEMAME>.

Docker

También hay una imagen Docker disponible en GHCR.IO.

root@kitploit:~
docker run --rm -v /etc/krb5.conf:/etc/krb5.conf:ro -v /etc/hosts:/etc/hosts:ro -v ./:/tmp/pyadrecon_output ghcr.io/l4rm4nd/pyadrecon:latest -dc dc01.domain.local -u admin -p password123 -d DOMAIN.LOCAL -o /tmp/pyadrecon_output

Módulos de recopilación

Por defecto, PyADRecon ejecuta todos los módulos de recopilación. Se les hace referencia como default o all.

Sin embargo, puedes seleccionar libremente tu propia colección de módulos para ejecutar:

IconoSignificado
🛑Requiere privilegios administrativos de dominio (ej., Administradores de dominio)
✅Requiere privilegios regulares de dominio (ej., Usuarios autenticados)
💥Nuevo módulo de recopilación en estado beta. Los resultados pueden ser incorrectos.

Bosque y Dominio

  • forest ✅
  • domain ✅
  • trusts ✅
  • sites ✅
  • subnets ✅
  • schema o schemahistory ✅

Controladores de dominio

  • dcs o domaincontrollers ✅

Usuarios y Grupos

  • users ✅
  • userspns ✅
  • groups ✅
  • groupmembers ✅
  • protectedgroups ✅💥
  • krbtgt ✅
  • asreproastable ✅
  • kerberoastable ✅

Computadoras e Impresoras

  • computers ✅
  • computerspns ✅
  • printers ✅

OUs y Directivas de Grupo

  • ous ✅
  • gpos ✅
  • gplinks ✅

Contraseñas y Credenciales

  • passwordpolicy ✅
  • fgpp o finegrainedpasswordpolicy 🛑
  • laps 🛑
  • bitlocker 🛑💥

Cuentas de Servicio Administradas

  • gmsa o groupmanagedserviceaccounts ✅💥
  • dmsa o delegatedmanagedserviceaccounts ✅💥
    • Solo funciona para esquema AD de Windows Server 2025 o superior

Certificados

  • adcs o certificates ✅💥
    • Detecta ESC1, ESC2, ESC3, ESC4 y ESC9

DNS

  • dnszones ✅
  • dnsrecords ✅

Panel HTML

PyADRecon genera automáticamente un panel HTML que contiene estadísticas clave y hallazgos de seguridad cuando se ejecutan todos los módulos de recopilación.

Si es necesario, puedes deshabilitar la creación del panel durante la recopilación inicial de datos usando --no-dashboard. El panel puede generarse posteriormente desde archivos CSV existentes con --generate-dashboard-from <CSV_DIR>.

[!CAUTION] Esta es una función beta. Los datos mostrados pueden ser analizados o reportados incorrectamente como un problema. ¡Tómalo con cautela!

image
image image image

Agradecimientos

Muchas gracias a las siguientes personas:

  • S3cur3Th1sSh1t por un primer borrador de Claude de este puerto a Python3
  • Sense-of-Security por el script original ADRecon en PowerShell
  • cannatag por el increíble cliente Python ldap3
  • Forta por el increíble conjunto impacket
  • Anthropic por los LLM Claude

Licencia

PyADRecon se publica bajo la Licencia MIT.

Se utilizan las siguientes bibliotecas de terceros:

BibliotecaLicencia
ldap3LGPL v3
openpyxlMIT
gssapiMIT
impacketApache 2.0
winkerberos

Por favor, consulta las respectivas licencias de estas bibliotecas al usar o redistribuir este software.

Descargar herramienta
Apache 2.0