
Automatisiertes Tool, das nach weltweit lesbaren Passwörtern in Active Directory LDAP-Datenbanken sucht, indem es Kerberos-Authentifizierung und ldapsearch nutzt, um sensible Attribute aufzulisten und in einer SQLite-Datenbank zu speichern.
Es kommt vor, dass aufgrund von Anforderungen an veraltete Dienste oder einfach aus schlechten Sicherheitspraktiken Passwörter für jeden authentifizierten Benutzer weltweit lesbar in der LDAP-Datenbank gespeichert sind.
LDAP Password Hunter ist ein Tool, das Funktionen von getTGT.py (Impacket) und ldapsearch kapselt, um nach in der LDAP-Datenbank gespeicherten Passwörtern zu suchen. Das Impacket getTGT.py-Skript wird verwendet, um das für die Enumeration verwendete Domänenkonto zu authentifizieren und sein TGT-Kerberos-Ticket zu speichern. Das TGT-Ticket wird dann in die Variable KRB5CCNAME exportiert, die vom ldapsearch-Skript verwendet wird, um zu authentifizieren und TGS-Kerberos-Tickets für jede Domäne/jeden DC zu erhalten, für die LDAP-Password-Hunter ausgeführt wird. Basierend auf den Export-Ergebnissen von CN=Schema,CN=Configuration wird eine benutzerdefinierte Liste von Attributen erstellt und gefiltert, um eine große Abfrage zu identifizieren, die interessante Ergebnisse enthalten könnte. Die Ergebnisse werden angezeigt und in einer sqlite3-Datenbank gespeichert. Die DB besteht aus einer Tabelle mit den folgenden Spalten:
Die Ergebnisse sind viel sauberer als die vorherige Version und in der SQL-DB organisiert. Die Ausgabe zeigt die gefundenen Einträge nur dann an, wenn sie nicht in der DB vorhanden sind, sodass neue Einträge auftauchen, aber das Gesamtergebnis der Analyse wird weiterhin in einer Datei mit Zeitstempel gespeichert.
Stellen Sie sicher, dass Ihre krb5.conf-Datei sauber ist und die Dateien domains.txt und conf.txt korrekt ausgefüllt sind.
Aus dem Projektordner:
./run.sh
Ganz einfach :)