Skip to content

krishdef7/PhishGuard-AI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

14 Commits
Β 
Β 
Β 
Β 

Repository files navigation

PhishGuard AI – Phishing Website Detection πŸ”’

PhishGuard AI is a machine learning project that detects phishing websites using XGBoost, trained on carefully engineered URL and domain features. The model leverages handcrafted indicators extracted from both PhishTank (phishing URLs) and UNB datasets (benign URLs).


πŸš€ Features

  • 17 handcrafted features grouped into 3 categories:
    • Address Bar features
    • Domain features
    • HTML & JavaScript features
  • Implements XGBoost Classifier for phishing detection.
  • Achieves strong accuracy on both training and testing datasets.
  • Supports easy retraining and extension with new data.
  • Saves trained model (phishguard_xgb.pkl) for reuse.

πŸ“‚ Repository Structure

PhishGuard/
β”œβ”€β”€ DataFiles/
β”‚   └── urldata.csv          # Dataset with 17 features + label
β”œβ”€β”€ train.py                 # Training script (XGBoost pipeline)
β”œβ”€β”€ predict.py               # Script to classify new URLs
β”œβ”€β”€ models/
β”‚   └── phishguard_xgb.pkl   # Saved trained model
β”œβ”€β”€ requirements.txt         # Python dependencies
└── README.md                # Project documentation

πŸ“Š Dataset & Results

  • Dataset size: ~10,000 URLs (5,000 phishing + 5,000 legitimate) sourced from:
    • PhishTank (phishing)
    • University of New Brunswick (UNB) dataset (benign)
  • Split: 80% training, 20% testing.
  • Achieved performance (original project benchmark):
    • Train Accuracy: ~86.7%
    • Test Accuracy: ~85.8%

πŸ“Œ Future Directions:

  • Add deep learning baselines (LSTM, Transformers on raw URLs).
  • Integrate real-time URL scanning.
  • Deploy as a browser plugin or REST API for live phishing protection.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages