An open API service indexing awesome lists of open source software.

https://github.com/prajwalchapke055/web-security-scanner

Web vulnerability scanner with real-time reports, & dashboard.
https://github.com/prajwalchapke055/web-security-scanner

back-end-development cybersecurity dashboard ethical-hacking flask front-end-development python vulnerability-scanners web-security

Last synced: 2 months ago
JSON representation

Web vulnerability scanner with real-time reports, & dashboard.

Awesome Lists containing this project

README

          

# ๐Ÿ›ก๏ธ Web Security Scanner

> **Live Now at:** [hackersgonnahack.pythonanywhere.com](https://hackersgonnahack.pythonanywhere.com)
> Scan your websites for vulnerabilities in real-time with automated intelligence and sleek reporting dashboards.

A powerful, full-stack web application designed to perform **comprehensive security assessments** of websites. Analyze, detect, and track vulnerabilities with beautiful interactive reports and dashboards.

---

## โœจ Overview

**Web Security Scanner** is an automated vulnerability analysis tool focused on **web reconnaissance** and **active testing**. It helps developers and security enthusiasts understand the **security posture** of web applications by generating transparent and actionable reports.

> โœ… Ideal for bug bounty hunting, web developers, and cybersecurity learners.

---

## ๐Ÿ—๏ธ Architecture Diagram

![Architecture Diagram](WebScan/Architecture-Diagram-2.png)

---

## ๐Ÿ“ธ Live Preview

### ๐Ÿ”น **๐ŸŒ Live Dashboard Example** --> *View scan statistics, charts, and history.*

![Dashboard](WebScan/3.png)

### ๐Ÿ”น **Detailed Report View** --> *See vulnerability details and past scan comparisons.*

![Alt text](WebScan/1-1.png)
![Alt text](WebScan/2-1.png)
![Alt text](WebScan/3-1.png)
![Alt text](WebScan/4-1.png)
![Alt text](WebScan/5-1.png)

---

## ๐Ÿš€ Key Features

### ๐Ÿ” **Automated Reconnaissance**

* WHOIS, DNS (A, MX, TXT, etc.)
* SSL Certificate Details
* Subdomain Discovery (`crt.sh`)
* HTTP Headers & Cookies
* Technology Stack Detection

### ๐Ÿ› ๏ธ **Vulnerability Testing**

* SQL Injection
* Cross-Site Scripting (XSS)
* Open Redirect
* Directory Traversal

### ๐Ÿ“ฆ **Vulnerable JS Library Detection**

* Scans for outdated or insecure frontend libraries.

### ๐Ÿ“Š **Interactive Dashboard**

* Security scores
* Time-based scan trends
* Filterable scan history

### ๐Ÿงพ **Comprehensive Reporting**

* HTML-based report view
* Active modules & results log
* Real-time scan status

### ๐Ÿ“‚ **Export Options**

* Download reports in **PDF**, **CSV**, and **JSON** formats.

### ๐Ÿ” **Historical Tracking**

* Compare current and past scan results
* Highlights newly discovered or resolved issues

### ๐Ÿงฑ **Error-Resilient Architecture**

* Fallback mechanisms for Nmap/socket scanning
* Graceful handling of timeouts or network errors

---

## ๐Ÿงฐ Tech Stack

| Layer | Tools & Libraries |
| ------------- | ----------------------------------------------------------------------------- |
| **Frontend** | HTML, CSS, Bootstrap, Jinja2, JavaScript, Chart.js, date-fns |
| **Backend** | Python, Flask, Flask-SQLAlchemy, Multiprocessing |
| **Database** | SQLite via SQLAlchemy ORM |
| **Scanning** | `requests`, `python-whois`, `python-nmap`, `dnspython`, `builtwith`, `crt.sh` |
| **Reporting** | `xhtml2pdf`, `pypdf`, `pyhanko`, `reportlab`, `csv`, `json` |

---

## โš™๏ธ Getting Started

### ๐Ÿ”‘ Prerequisites

Make sure the following are installed:

* Python 3.x
* Git
* (Optional) Nmap for advanced port scanning

---

## ๐Ÿ“ฆ Installation
### 1๏ธโƒฃ Clone the repository

```
git clone https://github.com/prajwalchapke055/Web-Security-Scanner.git
cd Web-Security-Scanner
```

### 2๏ธโƒฃ Fix permissions (if needed on Linux/Kali)
```
sudo chown -R $USER:$USER ~/security-project/Web-Security-Scanner
```

### 3๏ธโƒฃ Create and activate a virtual environment
```
# Create virtual environment
python3 -m venv venv

# Activate virtual environment
# On Windows:
.\venv\Scripts\activate
# On Linux/macOS:
source venv/bin/activate
```

### 4๏ธโƒฃ Upgrade pip and install dependencies
```
pip install --upgrade pip
pip install -r requirements.txt
```

### โ–ถ๏ธ Running the Application

```
python app.py
```

Open in your browser:
http://127.0.0.1:5000

---

## ๐Ÿงช How to Use

1. Launch the app and enter a website URL (e.g., `https://example.com`).
2. Click **"Scan Now"**.
3. Wait for the scan to complete (Dashboard will update).
4. Click **"View Report"** for detailed findings.
5. Use export buttons to download reports as **PDF**, **CSV**, or **JSON**.

---

## ๐ŸŒ Deployment

Want to make your scanner public?

* Deploy on **PythonAnywhere** *(great free tier for testing)*.
* Switch database to **PostgreSQL/MySQL** for production use.
* Use **Gunicorn** or **Waitress** for WSGI deployment.

---

## ๐Ÿ“„ License

This project is licensed under the [MIT License](./LICENSE).

---

# โญ Found this useful? Star the repo and share it!