Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/oldboy21/LDAP-Password-Hunter
Password Hunter in Active Directory
https://github.com/oldboy21/LDAP-Password-Hunter
Last synced: 21 days ago
JSON representation
Password Hunter in Active Directory
- Host: GitHub
- URL: https://github.com/oldboy21/LDAP-Password-Hunter
- Owner: oldboy21
- License: apache-2.0
- Created: 2021-07-26T14:27:01.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2023-01-06T15:32:34.000Z (almost 2 years ago)
- Last Synced: 2024-08-05T17:45:39.958Z (4 months ago)
- Language: Shell
- Homepage:
- Size: 23.4 KB
- Stars: 194
- Watchers: 5
- Forks: 27
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-hacking-lists - oldboy21/LDAP-Password-Hunter - Password Hunter in Active Directory (Shell)
README
# LDAP Password Hunter
It happens that due to legacy services requirements or just bad security practices password are world-readable in the LDAP database by any user who is able to authenticate.
LDAP Password Hunter is a tool which wraps features of getTGT.py (Impacket) and ldapsearch in order to look up for password stored in LDAP database. Impacket getTGT.py script is
used in order to authenticate the domain account used for enumeration and save its TGT kerberos ticket. TGT ticket is then exported in KRB5CCNAME variable which is used by
ldapsearch script to authenticate and obtain TGS kerberos tickets for each domain/DC LDAP-Password-Hunter is ran for. Basing on the CN=Schema,CN=Configuration export results
a custom list of attributes is built and filtered in order to identify a big query which might contains interesting results. Results are shown and saved in a sqlite3 database.
The DB is made of one table containing the following columns:* DistinguishedName
* AttributeName
* Value
* DomainResults are way more clean than the previous version and organized in the SQL DB. The output shows the entries found only if they are not in DB, so new entries pop up but the
overall outcome of the analysis is still saved in a file with a timestamp.## Requirements
* [Ldapsearch](https://docs.ldap.com/ldap-sdk/docs/tool-usages/ldapsearch.html)
* [Impacket](https://github.com/SecureAuthCorp/impacket)
* [Sqlite](https://www.sqlite.org/index.html)## Usage
Be sure your krb5.conf file is clean and the domains.txt and conf.txt are filled properly.
From the project folder:
```bash
./run.sh
```
Easy-peasy :)# Credits
* SecureAuthCorp: For the work on [Impacket](https://github.com/SecureAuthCorp/impacket) project
* Alberto Solino (@agsolino): For the work on kerberoast modules based on the Impacket framework
* [Retrospected](https://github.com/Retrospected): For helping out every Friday with debugging the code and brainstorming on new features