A comprehensive and modular Nix development environment for bug bounty hunting, featuring carefully curated tools organized by category and custom scripts to enhance your workflow.
- Modular Organization: Tools are organized into logical categories for better management
- Custom Scripts: Helpful scripts for reconnaissance, scanning, and environment setup
- Integrated Terminal Multiplexer: Preconfigured Zellij setup with custom layout for bug bounty workflows
- Easy to Extend: Simple structure to add or remove tools as needed
- Reconnaissance:
amass
,subfinder
,dnsx
,nmap
, and more - Vulnerability Scanning:
nuclei
,sqlmap
,metasploit
,dalfox
, etc. - Web Proxies:
burpsuite
,wireshark
,mitmproxy
- API Testing:
postman
,insomnia
- Network Analysis:
interactsh
,cdncheck
,tcpdump
, etc. - Content Discovery:
ffuf
,feroxbuster
,gobuster
,katana
, etc. - Code Analysis:
gitleaks
,semgrep
,trufflehog
, etc.
- Make sure you have Nix installed with flakes enabled
- Clone the repository:
git clone https://github.com/linuxmobile/bugbounty-flake
cd bugbounty-flake
- Enter the development environment:
nix develop -c $SHELL
Or if you don't want to clone the repository.
# Using the latest commit from main branch
nix develop github:linuxmobile/bugbounty-flake -c $SHELL
# Set up the initial directory structure
setup-bugbounty
# Start the bug bounty environment with Zellij
start-environment
# Perform subdomain enumeration
recon-subdomain example.com
# Run vulnerability scanning
scan-vulnerabilities targets.txt
The environment comes with a predefined Zellij layout with three tabs:
- Recon: Split pane for reconnaissance tools and results
- Web: Split layout for browser/Burp Suite and notes
- Shell: Full terminal for general commands
- Choose or create appropriate category in
modules/packages/
- Add your tool to the relevant category file:
# modules/packages/your-category.nix
{ pkgs }:
with pkgs; [
existing-tools
your-new-tool # Add your tool here
]
- Add the category to
modules/default.nix
:
{
packages = {
existing-categories = ...
newCategory = import ./packages/your-category.nix { inherit pkgs; };
};
}
- Remove unwanted tools from the respective category file
- To remove an entire category:
- Delete the category file from
modules/packages/
- Remove its entry from
modules/default.nix
- Delete the category file from
Custom scripts are located in modules/scripts/
. You can:
- Modify existing scripts in their respective files
- Add new scripts by creating a new file and adding it to
modules/scripts/default.nix
bugbounty-flake/
├── modules/
│ ├── packages/ # Tool categories
│ ├── scripts/ # Custom utility scripts
│ ├── software/ # Configuration files
│ └── default.nix # Module organization
└── flake.nix # Main flake configuration
Contributions are welcome! Please feel free to submit pull requests with:
- New tools or categories
- Improvements to existing scripts
- Bug fixes
- Documentation improvements
This project is licensed under the MIT License - see the LICENSE file for details.
This environment is for educational purposes and authorized security testing only. Always ensure you have permission before testing any systems or networks.