██████╗ ██████╗ ██╗ ██╗███╗ ███╗██████╗
██╔══██╗██╔══██╗██║ ██║████╗ ████║██╔══██╗
██████╔╝██║ ██║██║ ██║██╔████╔██║██████╔╝
██╔═══╝ ██║ ██║██║ ██║██║╚██╔╝██║██╔═══╝
██║ ██████╔╝╚██████╔╝██║ ╚═╝ ██║██║
╚═╝ ╚═════╝ ╚═════╝ ╚═╝ ╚═╝╚═╝
A DEHASHED password dumper written by purpl3ph03n1x
A Command Line Interface (CLI) tool which harness the power of DEHASHED API to retrieve leaked information for DEHASHED Data Well.
During an assessment, I found myself CURLing the DEHASHED API, redirecting the output to files and then writing a couple of python lines to convert the JSON format to CSV. Doing this process once was fun, but then it was mandane as the searches increased. That was the epiphany moment of F**k it! I'll automate this sh*t!
The idea to convert CSV to XLSX was to include MACROs to get initial access to the client once opened! Nah, I am joking :P
The reason was that brings value to the client and after a couple of tunes using Excel can be considered a deliverable.
Upon execution of the script two folders are created
-
log => Where the JSON response of the API is saved
-
results => Where the CSV and XLSX files are saved inside another folder whose name depends on the search type and search data.
-
Program the tool to have a fixed location to save the output, otherwise the filesystem will be full of log and results folders.
PDump is saving the results in 3 output formats
- JSON => This is the response of the API and is save with the aim of not comsuming API credits again if you want to perform some other kind of operations on the data
- CSV => The format was selected for the response to be more human readable
- XLSX => The tool is using the CSV format to generate a XLSX file using pandas for the ultimate human-friendly representation of the data
The folders in which he output data are saved follow the namespace {search type}-{search data}-{page}, if there is a pagination. For example, domain-gmail.com-1 would be the folder name in case the following command is executed
python3 pdump domain -s gmail.com
The filenames adhere to a different namespace {currentDaycurrentMonth_currentHourcurrentMinute}-{search type}-{search data}. For example, 2309_1257-domain-gmail.com.csv would be the filename in case the following command is executed and the datetime is 23/09/2023 12:57
python3 pdump domain -s gmail.com
For the tool to be functional, the following python3 modules should be installed
requests openpyxl pandas python-dotenv
This can be done by executing the following command
python3 -m pip install -r requirements
usage: pdump.py [-h] [-s SEARCH] [-f FILE] query_type
Querying DEHASHED For Leaked Credentials
positional arguments:
query_type domain, email, username, password, vin, phone, name, ip_address, hashed_password
options:
-h, --help show this help message and exit
-s SEARCH, --search SEARCH
The value to be searched against DEHASHED database
-f FILE, --file FILE A file with New Line Separated values
API provides with the capabilities to search for domain, email, username, password, hashed_password, vin, phone, name, ip_address
- The code has been currently tested against domain, email, username, password
Therefore, the CLI arguments should be
python3 pdump.py domain -s gmail.com
python3 pdump.py password -f passwords.txt
I want to shout out my gratitude for my colleague and friend @nickvourd for his ethusiasm and believing that is not just a tool.
This project is licensed under the MIT License - see the LICENSE.md file for details.