
ADRecon ist ein Tool, das Informationen über das Active Directory sammelt und einen Bericht erstellt, der ein ganzheitliches Bild des aktuellen Zustands der Ziel-AD-Umgebung liefern kann.
ADRecon ist ein Tool, das verschiedene Artefakte (wie unten hervorgehoben) aus einer AD-Umgebung extrahiert und kombiniert. Die Informationen können in einem speziell formatierten Microsoft Excel-Bericht präsentiert werden, der Zusammenfassungsansichten mit Metriken enthält, um die Analyse zu erleichtern und ein ganzheitliches Bild des aktuellen Zustands der Ziel-AD-Umgebung zu liefern.
Das Tool ist für verschiedene Kategorien von Sicherheitsexperten wie Prüfer, DFIR, Studenten, Administratoren usw. nützlich. Es kann auch ein unschätzbares Post-Exploitation-Tool für einen Penetrationstester sein.
Es kann von jeder Arbeitsstation ausgeführt werden, die mit der Umgebung verbunden ist, auch von Hosts, die keine Domänenmitglieder sind. Darüber hinaus kann das Tool im Kontext eines nicht privilegierten (d.h. normalen Domänenbenutzer-) Kontos ausgeführt werden. Eine differenzierte Kennwortrichtlinie (Fine Grained Password Policy), LAPS und BitLocker können privilegierte Benutzerkonten erfordern. Das Tool verwendet die Microsoft Remote Server Administration Tools (RSAT), falls verfügbar, andernfalls kommuniziert es mit dem Domänencontroller über LDAP.
Die folgenden Informationen werden vom Tool gesammelt:
ADRecon wurde vorgestellt auf: - Folienpräsentation
Bay Area OWASP - Folienpräsentation
Diese Anweisungen helfen Ihnen, eine Kopie des Tools auf Ihrem lokalen Rechner zum Laufen zu bringen.
Wenn Sie git installiert haben, können Sie zunächst das Repository klonen:
git clone https://github.com/sense-of-security/ADRecon.git
Andernfalls können Sie ein Zip-Archiv der neuesten Version herunterladen. Ziel ist es, den Master-Branch stets in einem funktionierenden Zustand zu halten.
Ausführen von ADRecon auf einem Domänenmitglieds-Host.
PS C:\> .\ADRecon.ps1
Ausführen von ADRecon auf einem Domänenmitglieds-Host als anderer Benutzer.
PS C:\>.\ADRecon.ps1 -DomainController <IP oder FQDN> -Credential <Domäne\Benutzername>
Ausführen von ADRecon auf einem Nichtmitglieds-Host unter Verwendung von LDAP.
PS C:\>.\ADRecon.ps1 -Protocol LDAP -DomainController <IP oder FQDN> -Credential <Domäne\Benutzername>
Ausführen von ADRecon mit bestimmten Modulen auf einem Nichtmitglieds-Host mit RSAT. (Standard-OutputType ist STDOUT mit dem Parameter -Collect)
PS C:\>.\ADRecon.ps1 -Protocol ADWS -DomainController <IP oder FQDN> -Credential <Domäne\Benutzername> -Collect Domain, DomainControllers
Generieren der ADRecon-Report.xlsx basierend auf der ADRecon-Ausgabe (CSV-Dateien).
PS C:\>.\ADRecon.ps1 -GenExcel C:\ADRecon-Report-<Zeitstempel>
Wenn Sie ADRecon ausführen, wird ein Ordner ADRecon-Report-<Zeitstempel> erstellt, der die ADRecon-Report.xlsx und einen CSV-Ordner mit den Rohdateien enthält.
-Protocol <String>
Welches Protokoll verwendet werden soll; ADWS (Standard) oder LDAP
-DomainController <String>
IP-Adresse des Domänencontrollers oder Domänen-FQDN.
-Credential <PSCredential>
Domänenanmeldeinformationen.
-GenExcel <String>
Pfad zum ADRecon-Ausgabeordner mit den CSV-Dateien, um die ADRecon-Report.xlsx zu generieren. Verwenden Sie es, um die ADRecon-Report.xlsx zu generieren, wenn Microsoft Excel nicht auf dem Host installiert ist, der zum Ausführen von ADRecon verwendet wird.
-OutputDir <String>
Pfad zum ADRecon-Ausgabeordner zum Speichern der CSV/XML/JSON/HTML-Dateien und der ADRecon-Report.xlsx. (Der angegebene Ordner wird erstellt, falls er nicht existiert) (Standard: aktuelles Verzeichnis)
-Collect <String>
Welche Module ausgeführt werden sollen (durch Komma getrennt; z.B. Forest,Domain. Standard: alle außer Kerberoast)
Gültige Werte umfassen: Forest, Domain, Trusts, Sites, Subnets, PasswordPolicy, FineGrainedPasswordPolicy, DomainControllers, Users, UserSPNs, PasswordAttributes, Groups, GroupMembers, OUs, ACLs, GPOs, gPLinks, GPOReport, DNSZones, Printers, Computers, ComputerSPNs, LAPS, BitLocker, Kerberoast, DomainAccountsusedforServiceLogon.
-OutputType <String>
Ausgabetyp; durch Komma getrennt; z.B. CSV,STDOUT,Excel (Standard: STDOUT mit -Collect-Parameter, sonst CSV und Excel).
Gültige Werte: STDOUT, CSV, XML, JSON, HTML, Excel, All (schließt STDOUT aus).
-DormantTimeSpan <Int>
Zeitraum für inaktive Konten. (Standard: 90 Tage)
-PassMaxAge <Int>
Maximales Alter des Computerkontokennworts. (Standard: 30 Tage)
-PageSize <Int>
Die PageSize für das LDAP-Sucherobjekt. (Standard: 200)
-Threads <Int>
Die Anzahl der Threads, die während der Verarbeitung von Objekten verwendet werden sollen (Standard: 10)
-Log <Switch>
ADRecon-Protokoll mittels Start-Transcript erstellen