Bheem : Tool To Carry Out Various Tools And Recon Process

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.
  • Change the Blind XSS Payload in the following file /Bheem/arsenal/autoxss.sh to yours . Visit XSS Hunter to get your Blind XSS Payload

Tools Used

  1. Nuclei
  2. HTTPX
  3. GF & GF-Patterns
  4. Secret Finder
  5. Heartbleed Oneliner
  6. AMASS
  7. Subfinder
  8. Assetfinder
  9. JSScan
  10. FavFreak
  11. Waybackurls
  12. Gau
  13. Parallel
  14. asnip
  15. dirsearch
  16. gowitness
  17. subjack
  18. CORS Scanner
  19. git-hound
  20. Shuffledns
  21. 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

  • Adding Directory Enumeration
  • Adding Subdomain Bruteforcing
  • Adding HTTP Desync Scanner
  • Adding Vulnerable Software & Exploit Suggester
  • Adding Oneline Scanner for CORS, CRLF & Other Vectors
  • 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)
R K

Recent Posts

Bash Scripting Best Practices Every Beginner Should Know

Introduction Bash scripting is a powerful way to automate Linux tasks, but writing a script…

23 hours ago

How To Create A Self-Signed SSL Certificate Using Bash And OpenSSL

Introduction A self-signed SSL certificate is a certificate that is created and signed by the…

24 hours ago

How To Debug Bash Scripts Using bash -x And set Commands

Introduction Debugging is an important part of Bash scripting. When a script does not work…

1 day ago

How To Use Cron Jobs With Bash Scripts For Automation

Introduction Cron jobs are used in Linux to run commands or Bash scripts automatically at…

1 day ago

How To Use Pipes In Bash Scripts For Command Chaining

Introduction Pipes are an important feature in Linux and Bash scripting. A pipe allows you…

1 day ago

How To Use grep, awk, And sed In Bash Scripts

Introduction The grep, awk, and sed commands are powerful text-processing tools in Linux. They are…

1 day ago