Skip to main content

AI-powered phishing detector for URLs and emails

Project description

Phishing Detector

Detecteur de phishing base sur le Machine Learning et la Programmation Orientee Objet en Python. Detecte les URLs et emails de phishing en temps reel depuis nimporte ou dans le terminal.

Installation rapide

Linux / Mac

git clone https://github.com/f3d4yn/phishing-detector.git
cd phishing-detector
chmod +x install.sh
./install.sh
source ~/.bashrc

Windows

git clone https://github.com/f3d4yn/phishing-detector.git
cd phishing-detector
install.bat

Redemarre le terminal apres installation puis tape : isphishing

Performance du modele

Metrique Score
Exactitude 95.52%
Precision 95.79%
Rappel 95.54%
F1 Score 95.66%
ROC AUC 98.76%

Entraine sur 93 916 echantillons (11 430 URLs + 82 486 Emails)

Architecture POO

  • BaseInput : Classe abstraite (ABC)
  • EmailInput : Heritage + validate()
  • URLInput : Heritage + extract_domain()
  • FeatureExtractor : Extraction de 12 features
  • MLModel : Random Forest (100 arbres)
  • PhishingDetector : Orchestrateur principal
  • ThreatReport : Score + Label + Raisons
  • AlertSystem : Alertes + Logs

Lancer les tests

source venv/bin/activate
python -m unittest discover tests/

Note sur les datasets

Les datasets et le modele entraine ne sont pas inclus (trop lourds). Pour entrainer le modele :

  1. Telecharge les datasets sur Kaggle :

    • URLs : Web Page Phishing Detection Dataset
    • Emails: Phishing Email Dataset
  2. Place-les dans data/ :

    • data/phishing_dataset.csv
    • data/email_dataset.csv
  3. Lance l entrainement : python train.py

Auteurs

Habib Ilyas et Boukyod Abdessamad Module : Programmation Avancee (Python POO)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

isphishing-1.0.0.tar.gz (13.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

isphishing-1.0.0-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file isphishing-1.0.0.tar.gz.

File metadata

  • Download URL: isphishing-1.0.0.tar.gz
  • Upload date:
  • Size: 13.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for isphishing-1.0.0.tar.gz
Algorithm Hash digest
SHA256 aafb83cb1b58c377740921f174fb68f555479698533feb930657c4935367d20a
MD5 50cb2572c0e99bdcd702289089e089a5
BLAKE2b-256 1a645b789043edeaf3de4648d5f1beb08697dd22e6ab4b6d3b8c423871bce10a

See more details on using hashes here.

File details

Details for the file isphishing-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: isphishing-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for isphishing-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2cd1b886ba8a1539af03969eee68c253a272984dbd6e59cfa04dec47aac1b22b
MD5 9e4c81aed72db5862459d0d41ec45cb4
BLAKE2b-256 5ec227fde2f368cdf7ee36f15c2e3455563c0bbdb5817e4321348d7c93008f3d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page