🛡️ PhishGuard AI
An advanced Machine Learning-powered cybersecurity platform for detecting phishing, malware, defacement, and suspicious URLs through intelligent behavioral analysis and threat scoring.
🚀 Overview
PhishGuard AI is a web-based cybersecurity application designed to identify potentially dangerous URLs before users interact with them.
The system uses Machine Learning to analyze URL behavior, structure, entropy, suspicious keywords, domain characteristics, and multiple security indicators to determine whether a URL is safe or malicious.
Unlike traditional blacklist-based solutions, PhishGuard AI focuses on behavioral analysis and feature extraction, allowing it to detect previously unseen threats.
✨ Features
- 🔍 AI-Powered URL Analysis
- 🛡️ Phishing Detection
- ☣️ Malware Detection
⚠️ Defacement Detection- 📊 Risk Score Calculation
- 🧠 Explainable Threat Analysis
- 📈 Analytics Dashboard
- 📚 Scan History
- ⭐ Favorites System
- 📄 JSON Report Export
- 🎨 Multi-Theme Support
- 📱 Responsive Mobile Design
- ⚡ Real-Time Threat Assessment
🎨 Available Themes
- Dark Theme
- Light Theme
- AMOLED Theme
- Cyber Theme
- Matrix Theme
- Purple Theme
- Red Theme
🧠 Machine Learning Model
Algorithm
Random Forest Classifier
Dataset Size
707,514 URLs
Threat Classes
Class| Description Safe| Legitimate URLs Phishing| Credential Theft Attempts Malware| Malicious Software Distribution Defacement| Compromised or Altered Websites
Feature Engineering
The model extracts and analyzes multiple URL features including:
- URL Length
- Domain Length
- Path Length
- Query Length
- Subdomain Count
- Digit Count
- Dot Count
- Slash Count
- Hyphen Count
- Underscore Count
- Entropy Score
- HTTPS Usage
- Suspicious Keywords
- IP Address Detection
- And More...
📂 Project Structure
PhishGuard-AI/
├── app.py ├── requirements.txt │ ├── datasets/ │ └── master_urls.csv │ ├── ml/ │ ├── train_model.py │ ├── predictor.py │ ├── feature_extractor.py │ └── explanation_engine.py │ ├── models/ │ ├── static/ │ ├── css/ │ └── js/ │ ├── templates/ │ └── index.html │ ├── screenshots/ │ └── README.md
📸 Screenshots
Screenshots for every theme and major feature are available in the "screenshots/" directory.
Included:
- Homepage
- Safe URL Detection
- Phishing Detection
- Analytics Dashboard
- Theme Showcase
- Scan History
- Report Export
- Mobile View
⚙️ Installation
Clone Repository
git clone https://github.com/hemakeshwar/PhishGuard-AI.git cd PhishGuard-AI
Create Virtual Environment
python -m venv venv
Activate Environment
Linux:
source venv/bin/activate
Windows:
venv\Scripts\activate
Install Dependencies
pip install -r requirements.txt
Run Application
python app.py
🔧 Training The Model
To train the model locally:
python ml/train_model.py
Generated model files will be stored inside:
models/
📌 Important Note
The trained machine learning model files (".pkl") are not included in this repository.
The original trained model exceeded GitHub's file size limitations and therefore cannot be uploaded directly.
To generate the model locally, run:
python ml/train_model.py
This will automatically create:
models/phishing_model.pkl models/label_encoder.pkl
The complete source code, datasets, feature extraction pipeline, backend logic, and frontend implementation are included in this repository.
🎯 Future Improvements
- Deep Learning Models
- Browser Extension
- Email Phishing Detection
- QR Code Scanner
- Real-Time Threat Intelligence Integration
- Cloud Deployment
- REST API Service
- User Accounts & Authentication
👨💻 Author
Hemakeshwar
MCA Student | AI & Cybersecurity Enthusiast
⭐ Support
If you found this project useful, consider giving it a Star ⭐ on GitHub.