Project Bheem is a simple collection of small bash-scripts which runs iteratively to carry out various tools and recon process & store output in an organized way. This project was created initially for automation of Recon for personal usage and was never meant to be public as there is nothing fancy about it but due to request by community, Project Bheem is now Public.
Please feel free to improve it in any way you can. There is no secret sauce involved and it's just a set of commands and existing tools written in bash-scripts for simple Recon Automation.
Project Bheem Supports an approach of Recon from @harshbothra_'s Scope Based Recon Methodology. Currently this tools supports performing recon for:
- Small Scope (single urls in scope) : Performs a limited recon & useful when only a few urls are provided in scope
- Medium Scope (*.target.com in scope) : Performs recon to enumerate more assets and give you more options to attack on.
- Large Scope (Everything in Scope) : Performs almost every possible recon vector from subdomain enumeration to fuzzing.
A few features like port scanning might not be working in the current build and some of the newly released tools might also be missed. we are working on upgrading the tool but feel free to fork, upgrade and make a pull request (Ensure that tool is not breaking).
Pre-Requisite
- Make sure to have "Go" latest version is installed and paths are correctly set.
Installation
- Clone the repository
- Run the following script to install necessary tools:
sh install.sh
- The
arsenal
directory contains a set of small scripts used to automate Bheem. Give executable permissions to scripts in this directory. - Navigate to
~/arsenal
directory and Simply run following command to see all the supported options provided in Bheem:
./Bheem.sh -h
- To use it over vps for performing recon on larger set of targets perform following command:
screen -S <screen_name>
~/arsenal/Bheem.sh -h
- This will keep
Bheem
running even if the SSH Connection is terminated or you turn off your local machine.
Sample Usage
- Small Scope Recon :
Bheem -t targetfile -S
- Medium Scope Recon :
Bheem -t targetfile -M
- Large Scope Recon :
Bheem -t targetfile -L
targetfile
contains list of domains to perform Recon. For example: targettest.com
Side Notes
- If you don't want to use specific module, just comment it out and it won't be used anymore.
Tools Used
- Nuclei
- HTTPX
- GF & GF-Patterns
- Secret Finder
- Heartbleed Oneliner
- AMASS
- Subfinder
- Assetfinder
- JSScan
- FavFreak
- Waybackurls
- Gau
- Parallel
- asnip
- dirsearch
- gowitness
- subjack
- CORS Scanner
- git-hound
- Shuffledns
- Massdns
~ Other onliners and tools to be added.
PR Notes
- If there is any GO Version/Path related issues, please do not create a PR for it.
- Please create a PR for the Feature Request.
- If there is any missing part in
install.sh
please create a PR for it. - For specific tool related issue such as installation for
X
tool used by Bheem is not successful, please do not create a PR for it. As this issue is required to be Raise to the specific Tool Owner.
Future Plans/Under Development
1. Adding Directory Enumeration2. Adding Subdomain Bruteforcing3. Adding HTTP Desync Scanner 4. Adding Vulnerable Software & Exploit Suggester 5. Adding Oneline Scanner for CORS, CRLF & Other Vectors 6. Adding Visual Recon
Special Thanks
Every single application security community member and tool developers. Special Thanks to:
- Project Discovery (Httpx, Subfinder, chaos, nuclei)
- OWASP (Amass)
- Tomnomnom (Assetfinder, Waybackurls, GF)
- Devansh (FavFreak)
- Imran (Heartbleed oneliner)
- M4ll0k (Secret Finder)
- lc (gau)
- tillson (git-hound)
- ffuf (ffuf)
- sensepost (gowitness)
- defparam (smuggler)
- haccer (subjack)
- crt.sh (YashGoti)
Please feel free to contribute.