Git Hound makes it easy to find exposed APi keys on GitHub using pattern matching, targetted querying, and a scoring system.
This differs from other OSINT GitHub scanners by searching keywords across GitHub rather than targeting specific repositories, exposing a fundamentally different set of results.
GitRob is an excellent tool that specifically targets an organization or user’s owned repositories for secrets. A pattern-matching, batch-catching secret snatcher. This project is intended to be used for educational purposes.
Usage
echo "tillsongalloway.com" | python git-hound.py or python git-hound.py --subdomain-file subdomains.txt We also offer a number of flags to target specific patterns (known service API keys), file names (.htpasswd, .env), and languages (python, javascript).
Also Read – Fake Sandbox : Script To Simulate Fake Processes Of Analysis Sandbox/VM
--subdomain-file – The file with the subdomains--api-keys – Enable generic API key searching. This uses common API key patterns and Shannon entropy to find potential exposed API keys.--output – The output file (default is stdout)--output-type – The output type (requires output flag to be set; default is flatfile)--many-results – Use result sorting to scrape more than 100 pages of results--results-only – Print only regexed results to stdout. Useful for piping into another script--all – Print all URLs, including ones with no pattern match. Otherwise, the scoring system will do the work.--regex-file – Supply a custom regex file--language-file – Supply a custom file with languages to search.--config-file – Custom config file (default is config.yml)--pages – Max pages to search (default is 100, the page maximum)--silent – Don’t print results to stdout (most reasonably used with –output).--no-antikeywords – Don’t attempt to filter out known mass scans--only-filtered – Only search filtered queries (languages, file extensions)--debug – Print debug messages. Helpful for debugging slow expressions.pip install -r requirements.txt (or pip3)config.yml file with GitHub credentials. See config.example.yml for an example. Accounts with 2FA are not currently supported.echo "tillsongalloway.com" | python git-hound.pyThe sort command in Linux reads lines from files or standard input and writes them to standard…
The wall command in Linux sends a message to the terminals of all currently logged-in users. The…
journalctl queries logs collected by systemd-journald, the systemd logging daemon. It gives you structured access to kernel…
The stat command in Linux displays detailed metadata about files and filesystems. Where ls gives a condensed summary suitable…
In Linux, groups organize user accounts and define shared access to files and resources. Every…
The touch command in Linux does two things: it creates new empty files, and it updates the…