SecScan is a high-precision, automated penetration testing engine and web interface designed to audit web applications and APIs. It analyzes attack surfaces across 5 key vulnerability vectors with CVSS v3.1 scoring, real-time terminal output, and actionable remediation guidance.
Run SecScan instantly in a containerized environment with zero local setup:
# 1. Clone the repository
git clone https://github.com/Sragvi2005/Web-Pen-Test.git
cd Web-Pen-Test
# 2. Build and launch the container
docker compose up -d --build👉 Access the Web UI at: http://localhost:5000
docker compose logs -f # View real-time container logs
docker compose ps # Check container status
docker compose down # Stop and remove containerIf you prefer running SecScan natively on your machine:
# 1. Clone the repository
git clone https://github.com/Sragvi2005/Web-Pen-Test.git
cd Web-Pen-Test
# 2. Create and activate a virtual environment
python3 -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# 3. Install dependencies
pip install -r requirements.txt
# 4. Start the Web & API Server
python server.py👉 Access the Web UI at: http://localhost:5000
SecScan audits five core attack vectors sequentially or concurrently:
| Module | What It Tests | Risk / Impact |
|---|---|---|
| SSL/TLS Inspection | Protocol versions (TLS 1.0/1.1/1.2/1.3), cipher suites, and certificate expiration. | Prevents MITM, downgrade attacks, and expired cert warnings. |
| HTTP Security Headers | Checks for OWASP headers: CSP, HSTS, X-Frame-Options, X-Content-Type-Options, Referrer-Policy. |
Mitigates XSS, Clickjacking, MIME-sniffing, and data leakage. |
| CORS Policy Probe | Origin reflection & Access-Control-Allow-Credentials flag auditing. |
Prevents unauthorized cross-origin data and credential theft. |
| Endpoint Discovery | Concurrent multithreaded directory dictionary attack (/.env, /.git/HEAD, /swagger.json, etc.). |
Identifies sensitive file disclosures and secret key exposures. |
| Reflected XSS Probe | Safely tests input parameters for unsanitized reflection in HTTP responses. | Detects potential script injection vectors. |
You can also run scans directly from your terminal using main.py:
# Basic scan against a target
python main.py -t https://target.example.com
# Multithreaded scan with custom output file prefix
python main.py -t https://target.example.com -w 20 -o my_audit_reportSecScan supports three report export formats:
- Structured JSON (
.json): Raw machine-readable data for SIEM, Jira, or custom pipeline integration. - Executive HTML (
.html): Rich visual report with risk meters, vulnerability tables, and remediation instructions. - Printable PDF (
.pdf): A4-formatted executive deliverable (requiresweasyprint).
SecScan is developed for authorized security audits, educational purposes, and defensive testing only. Scanning targets without prior explicit authorization from the system owner is illegal and unethical. Use responsibly.