web-vuln-scanner

πŸ” WebVulnScanner

Automated Web Vulnerability Scanner β€” built for ethical hackers, students, and bug bounty hunters.

Python License Status


⚠️ Disclaimer

This tool is for educational purposes and authorized penetration testing only.
Never scan targets you don’t own or have explicit written permission to test.
The author is not responsible for misuse.


✨ Features

Module What it detects
🧨 SQL Injection Error-based & time-based SQLi in GET parameters
πŸ’₯ XSS Reflected Cross-Site Scripting via GET parameters
πŸ”€ Open Redirect Unvalidated redirects via URL parameters
πŸ“‚ Sensitive Files .env, .git/config, wp-config.php, admin panels, etc.
πŸ›‘οΈ Security Headers CSP, HSTS, X-Frame-Options, X-Content-Type-Options, etc.
πŸ–±οΈ Clickjacking Missing frame protection headers

πŸ“¦ Installation

# 1. Clone the repo
git clone https://github.com/YOUR_USERNAME/web-vuln-scanner.git
cd web-vuln-scanner

# 2. (Recommended) Create a virtual environment
python -m venv venv
source venv/bin/activate        # Windows: venv\Scripts\activate

# 3. Install dependencies
pip install -r requirements.txt

πŸš€ Usage

Basic scan (headers + sensitive files)

python scanner.py -u https://example.com

Full scan with parameters (SQLi + XSS + Redirect)

python scanner.py -u https://example.com -p "id=1,search=hello"

Save JSON report

python scanner.py -u https://example.com -p "id=1" --save report.json

All options

  -u / --url       Target URL (required)
  -p / --params    GET params to fuzz: "key=val,key2=val2"
  -t / --timeout   Request timeout in seconds (default: 10)
  -d / --delay     Delay between requests (default: 0.5s)
  --save           Save findings to JSON file

πŸ“Έ Sample Output

 __        __   _  __     _____     _ ___
 \ \      / /__| | \ \   / / _ \  / / __|
  ...

  [i] Target  : https://testphp.vulnweb.com
  [i] Timeout : 10s  |  Delay: 0.5s

  ───────────────────────────────────────
  4 β€” Sensitive Files & Directories
  ───────────────────────────────────────
  [βœ—] VULN  Β» Exposed: https://testphp.vulnweb.com/.git/config

  ───────────────────────────────────────
  5 β€” Security Headers
  ───────────────────────────────────────
  [βœ—] VULN  Β» Missing : Content-Security-Policy
  [βœ—] VULN  Β» Missing : Strict-Transport-Security
  [βœ“] Present : X-Frame-Options

πŸ—‚οΈ Project Structure

web-vuln-scanner/
β”œβ”€β”€ scanner.py          # Main scanner script
β”œβ”€β”€ requirements.txt    # Python dependencies
β”œβ”€β”€ README.md           # This file
└── report.json         # (Generated) JSON report

πŸ§ͺ Safe Test Target

Practice legally on this intentionally vulnerable site:

python scanner.py -u http://testphp.vulnweb.com -p "id=1,searchFor=test"

πŸ›£οΈ Roadmap


🀝 Contributing

  1. Fork the repo
  2. Create your branch: git checkout -b feature/my-feature
  3. Commit your changes: git commit -m "Add my feature"
  4. Push to the branch: git push origin feature/my-feature
  5. Open a Pull Request

πŸ“„ License

MIT License β€” see LICENSE for details.


πŸ‘€ Author

Youssef Mohamed
GitHub: @Yousif2005