Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
Tools/GitHubGitHub/l4rm4nd/pyadrecon
AufklärungSchwachstellenanalyseInformationsbeschaffungPost-ExploitationPenetrationstestsAuthentifizierungRed Teaming
GitHubl4rm4nd/pyadrecon

PyADRecon

Python3-Implementierung von ADRecon mit Unterstützung für NTLM- und Kerberos-Authentifizierung zur Abfrage von LDAP. Generiert einzelne CSV-Dateien und einen einzelnen XSLX- + HTML-Bericht über Ihre AD-Domäne.

Repository anzeigen
674vor 1 MonatVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen
PyADRecon — Python3-Implementierung von ADRecon mit Unterstützung für NTLM- und Kerberos-Authentifizierung zur Abfrage von LDAP. Generiert einzelne CSV-Dateien und einen einzelnen XSLX- + HTML-Bericht über Ihre AD-Domäne. | Kitploit
Webseite
pyadrecon

Python3-Implementierung eines verbesserten ADRecon für Pentester und Blue Teams.

ADRecon ist ein Tool, das Informationen über MS Active Directory sammelt und einen XSLX-Bericht erstellt, um ein ganzheitliches Bild des aktuellen Zustands der Ziel-AD-Umgebung zu liefern.

[!TIP] Wenn Sie ein Red Team sind, schauen Sie sich stattdessen ADRecon-ADWS an.

Inhaltsverzeichnis

  • Installation
  • Verwendung
  • Docker
  • Sammlungsmodule
  • HTML-Dashboard
  • Danksagungen
  • Lizenz

Installation

root@kitploit:~
# stable release from pypi
pipx install pyadrecon

# latest commit from github
pipx install git+https://github.com/l4rm4nd/PyADRecon

Dann Installation überprüfen:

root@kitploit:~
pyadrecon --version

[!TIP] Für Windows lesen Sie dies. NTLM + Kerberos wird unterstützt.

Verwendung

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 - Python Active Directory Reconnaissance Tool

options:
  -h, --help            show this help message and exit
  --version             show program's version number and exit  
  --generate-excel-from CSV_DIR
                        Generate Excel report from CSV directory (standalone mode, no AD connection needed)
  --generate-dashboard-from CSV_DIR
                        Generate HTML dashboard from existing CSV files (standalone mode)
  -dc, --domain-controller DOMAIN_CONTROLLER
                        Domain Controller IP or hostname
  -u, --username USERNAME
                        Username for authentication
  -p, --password [PASSWORD]
                        Password for authentication (optional if using TGT)
  -d, --domain DOMAIN   Domain name (e.g., DOMAIN.LOCAL) - Required for Kerberos auth
  --auth {ntlm,kerberos}
                        Authentication method (default: ntlm)
  --tgt-file TGT_FILE   Path to Kerberos TGT ccache file (for Kerberos auth)
  --tgt-base64 TGT_BASE64
                        Base64-encoded Kerberos TGT ccache (for Kerberos auth)
  --ssl                 Force SSL/TLS (LDAPS). No LDAP fallback allowed.
  --port PORT           LDAP port (default: 389, use 636 for LDAPS)
  -o, --output OUTPUT   Output directory (default: PyADRecon-Report-<timestamp>)
  --page-size PAGE_SIZE
                        LDAP page size (default: 500)
  --dormant-days DORMANT_DAYS
                        Days for dormant account threshold (default: 90)
  --password-age PASSWORD_AGE
                        Days for password age threshold (default: 180)
  --only-enabled        Only collect enabled objects
  --collect COLLECT     Comma-separated modules to collect (default: all)
  --workstation WORKSTATION
                        Explicitly spoof workstation name for NTLM authentication (default: empty string, bypasses userWorkstations restrictions)  
  --no-excel            Skip Excel report generation
  --no-dashboard        Skip interactive HTML dashboard generation  
  -v, --verbose         Verbose output

Examples:
  # Basic usage with NTLM authentication
  pyadrecon.py -dc 192.168.1.1 -u admin -p password123 -d DOMAIN.LOCAL

  # With Kerberos authentication (bypasses channel binding)
  pyadrecon.py -dc dc01.domain.local -u admin -p password123 -d DOMAIN.LOCAL --auth kerberos

  # With Kerberos using TGT from file (bypasses channel binding)
  pyadrecon.py -dc dc01.domain.local -u admin -d DOMAIN.LOCAL --auth kerberos --tgt-file /tmp/admin.ccache

  # With Kerberos using TGT from base64 string (bypasses channel binding)
  pyadrecon.py -dc dc01.domain.local -u admin -d DOMAIN.LOCAL --auth kerberos --tgt-base64 BQQAAAw...

  # Only collect specific modules
  pyadrecon.py -dc 192.168.1.1 -u admin -p pass -d DOMAIN.LOCAL --collect users,groups,computers

  # Output to specific directory
  pyadrecon.py -dc 192.168.1.1 -u admin -p pass -d DOMAIN.LOCAL -o /tmp/adrecon_output

  # Generate Excel report from existing CSV files (standalone mode)
  pyadrecon.py --generate-excel-from /path/to/CSV-Files -o report.xlsx

[!TIP] PyADRecon versucht immer zuerst LDAPS auf TCP/636.

Wenn das Flag --ssl nicht verwendet wird, kann LDAP auf TCP/389 als Fallback versucht werden.

[!WARNING] Wenn LDAP-Channel-Binding aktiviert ist, schlägt dieses Skript mit automatic bind not successful - strongerAuthRequired fehl, da ldap3 es nicht unterstützt (siehe hier). Sie müssen stattdessen die Kerberos-Authentifizierung verwenden.

Wenn Sie die Kerberos-Authentifizierung unter Linux verwenden, erstellen Sie bitte eine gültige /etc/krb5.conf und einen DC-Hostnamen-Eintrag in /etc/hosts. Lesen Sie dies. Wenn Sie unter Windows sind, stellen Sie bitte sicher, dass Sie gültige Kerberos-Tickets haben. Lesen Sie dies. Beachten Sie, dass Sie dem Skript ein bereits vorhandenes TGT-Ticket über --tgt-file oder --tgt-base64 bereitstellen können. Zum Beispiel von Netexec erhalten über netexec smb <TARGET> <ARGS> --generate-tgt <DATEINAME>.

Docker

Es gibt auch ein Docker-Image auf 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

Sammlungsmodule

Standardmäßig führt PyADRecon alle Sammlungsmodule aus. Sie werden als default oder all bezeichnet.

Sie können jedoch frei Ihre eigene Sammlung von Modulen auswählen:

SymbolBedeutung
🛑Erfordert administrative Domänenberechtigungen (z.B. Domänenadministratoren)
✅Erfordert normale Domänenberechtigungen (z.B. Authentifizierte Benutzer)
💥Neues Sammlungsmodul im Beta-Stadium. Ergebnisse können falsch sein.

Wald & Domäne

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

Domänencontroller

  • dcs oder domaincontrollers ✅

Benutzer & Gruppen

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

Computer & Drucker

  • computers ✅
  • computerspns ✅
  • printers ✅

OUs & Gruppenrichtlinien

  • ous ✅
  • gpos ✅
  • gplinks ✅

Passwörter & Anmeldeinformationen

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

Verwaltete Dienstkonten

  • gmsa oder groupmanagedserviceaccounts ✅💥
  • dmsa oder delegatedmanagedserviceaccounts ✅💥
    • Funktioniert nur mit Windows Server 2025+ AD-Schema

Zertifikate

  • adcs oder certificates ✅💥
    • Erkennt ESC1, ESC2, ESC3, ESC4 und ESC9

DNS

  • dnszones ✅
  • dnsrecords ✅

HTML-Dashboard

PyADRecon generiert automatisch ein HTML-Dashboard mit wichtigen Statistiken und Sicherheitserkenntnissen, wenn alle Sammlungsmodule ausgeführt werden.

Falls erforderlich, können Sie die Dashboard-Erstellung während der ersten Datensammlung mit --no-dashboard deaktivieren. Das Dashboard kann später mit --generate-dashboard-from <CSV_VERZ> aus vorhandenen CSV-Dateien generiert werden.

[!CAUTION] Dies ist eine Beta-Funktion. Angezeigte Daten können falsch interpretiert oder als Problem gemeldet werden. Mit Vorsicht genießen!

image
image image image

Danksagungen

Vielen Dank an die folgenden Personen:

  • S3cur3Th1sSh1t für einen ersten Claude-Entwurf dieses Python3-Ports
  • Sense-of-Security für das ursprüngliche ADRecon-Skript in PowerShell
  • cannatag für den großartigen ldap3-Python-Client
  • Forta für die großartige Impacket-Suite
  • Anthropic für Claude LLMs

Lizenz

PyADRecon wird unter der MIT-Lizenz veröffentlicht.

Die folgenden Drittanbieter-Bibliotheken werden verwendet:

BibliothekLizenz
ldap3LGPL v3
openpyxlMIT
gssapiMIT
impacketApache 2.0
winkerberos

Bitte beachten Sie die jeweiligen Lizenzen dieser Bibliotheken bei der Verwendung oder Weiterverteilung dieser Software.

Tool herunterladen
Apache 2.0