February 3, 2021

568 words 3 mins read

obheda12/GitDorker

obheda12/GitDorker

A Python program to scrape secrets from GitHub through usage of a large repository of dorks.

repo name obheda12/GitDorker
repo link https://github.com/obheda12/GitDorker
homepage
language Python
size (curr.) 2363 kB
stars (curr.) 1212
created 2020-07-13
license

Logo

GitDorker

GitDorker is a tool that utilizes the GitHub Search API and an extensive list of GitHub dorks that I’ve compiled from various sources to provide an overview of sensitive information stored on github given a search query.

The Primary purpose of GitDorker is to provide the user with a clean and tailored attack surface to begin harvesting sensitive information on GitHub. GitDorker can be used with additional tools such as GitRob or Trufflehog on interesting repos or users discovered from GitDorker to produce best results.

Rate Limits

GitDorker utilizes the GitHub Search API and is limited to 30 requests per minute. In order to prevent rate limites a sleep function is built into GitDorker after every 30 requests to prevent search failures. Therefore, if one were to run use the alldorks.txt file with GitDorker, the process will take roughly 5 minutes to complete.

Requirements

** Python3

** GitHub Personal Access Token

** Install requirements inside of the requirements.txt file of this repo (pip3 install -r requirements.txt)

Please follow the guide below if you are unsure of how to create a personal access token: https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token

Recommendations

It is recommended to provide GitDorker with at least two GitHub personal access tokens so that it may alternate between the two during the dorking process and reduce the likelihood of being rate limited. Using multiple tokens from separate GitHub accounts will provide the best results.

Dorks

Within the dorks folder are a list of dorks. It is recommended to use the “alldorks.txt” file when mapping out your github secrets attack surface. The “alldorks.txt” is my collection of dorks that i’ve pulled from various resources, totalling to 239 individual dorks of sensitive github information.

Usage

I’ve created a blog post with far more detail in how to use GitDorker and potential use cases here: https://medium.com/@obheda12/gitdorker-a-new-tool-for-manual-github-dorking-and-easy-bug-bounty-wins-92a0a0a6b8d5

Help Output:

Help

Docker


## Build Command
docker build -t gitdorker .

## Basic Run Command
docker run -it gitdorker

## Run Command
docker run -it -v $(pwd)/tf:/tf gitdorker -tf tf/TOKENSFILE -q tesla.com -d dorks/DORKFILE -o tesla

## Run Command
docker run -it -v $(pwd)/tf:/tf xshuden/gitdorker -tf tf/TOKENSFILE -q tesla.com -d dorks/DORKFILE -o tesla

Screenshots

Below is an example of the results from running the query “tesla.com” with a small list of dorks.

The following command was run to query for “tesla.com” against a list of dorks:

python3 GitDorker.py -tf TOKENSFILE -q tesla.com -d dorks/DORKFILE -o tesla

Results

Note: The more advanced queries you put (i.e incorporation of user, org, endpoint information, etc. the more succint results you will achieve)

If you like GitDorker and want to see more cool tools!

Credits

Reference points for creating GitDorker and compiling dorks lists

  • @gwendallecoguic - special thank you to gwendall and his scripts that provided me with the framework for creating GitDorker.
  • @techgaun - His list of dorks provided a fantastic base for the dorks file
  • @Shashank-In - His list of Travis leaks helped add additional dorks
  • @Jhaddix - Methodology and reference for dorks

Disclaimer

This project is made for educational and ethical testing purposes only. Usage of this tool for attacking targets without prior mutual consent is illegal. Developers assume no liability and are not responsible for any misuse or damage caused by this tool.

comments powered by Disqus