Architektura i Eksperymenty

Ostatnia aktualizacja: 2026-05-27


Architektura systemu

Opis ogólny

System detekcji phishingu oparty na analizie URL i treści emaili, z fokusem na temporal robustness i uczciwy multi-model benchmark. Główny wkład techniczny: kwantyfikacja degradacji czasowej (legacy 2002-2005 vs fresh 2024-2026) oraz analiza kompromisu koszt–dokładność–latencja dla modeli od prostych (LightGBM) do multi-agent LLM.

Komponenty główne

KomponentOpisTechnologia
M1 – URL Feature ExtractorCechy URL: długość, TLD, subdomain depth, special chars, IPregex, tldextract
M2 – Content AnalyzerTF-IDF / BERT na treści emaili i stronscikit-learn, Hugging Face
M3 – Temporal EvaluatorTrening na starych danych → test na świeżych; pomiar degradacjisklearn, PhishTank API
M4 – Multi-Model BenchmarkUczciwy benchmark: RF/XGB/LightGBM/BERT/LR na tych samych podziałachsklearn, transformers
M5 – AI Phishing GeneratorGPT-4/Claude generowanie phishing emails do augmentacjiOpenAI/Anthropic API

Przepływ danych

flowchart TD
    INPUT([Raw URL / Email]) --> M1[M1 URL Feature Extractor]
    INPUT --> M2[M2 Content Analyzer\nTF-IDF / BERT]
    M1 --> FEAT([Feature vectors])
    M2 --> FEAT
    FEAT --> M4[M4 Multi-Model Benchmark\nte same train/val/test podziały]
    OLD([Stare dane 2002-2005\nSpamAssassin, Enron]) --> M3
    NEW([Świeże dane 2024-2026\nPhishTank]) --> M3[M3 Temporal Evaluator]
    M3 --> DELTA([ΔF1 degradacja])
    M4 --> BENCH([Wyniki: F1, AUC,\nlatencja, koszt])
    M5[M5 AI Phishing Generator\nGPT-4 / Claude] --> AUG([Augmented dataset])
    AUG --> M4

Stack technologiczny

WarstwaTechnologiaUzasadnienie
JęzykPython 3.11+standard ML
ML frameworkscikit-learn, XGBoost, LightGBMszybkie baseline modele
Deep learningPyTorch, Hugging Face transformersBERT fine-tuning
URL featurestldextract, urllibparsowanie URL
DaneSpamAssassin, PhishTank, Mendeley, UCIpubliczne datasety
Pomiar / evalF1, AUC, latencja [ms], koszt API [$]cost-benefit analysis

Eksperymenty

PH-EXP-1: Temporal Robustness Benchmark — Legacy vs Fresh Phishing

Status: planned Priorytet: high Powiązany pomysł: PH-1 Dodano: 2026-05-27

Hipoteza: Model (SVM+TF-IDF lub BERT) wytrenowany na danych z lat 2002-2005 (SpamAssassin, Enron) traci co najmniej 20 punktów procentowych F1 gdy testowany na świeżym phishingu 2024-2026 (PhishTank) — w porównaniu do modelu trenowanego i testowanego in-distribution na danych 2024-2026.

Dane:

  • Dataset stare: SpamAssassin (2002-2005), Enron Corpus (phishing injected)
  • Dataset świeże: PhishTank 2024-2026 (live feed, ~10K URLi), AI-generated (GPT-4, 5K próbek)
  • Podział: train=stare (80%/20% phishing/legit), test=świeże; oraz baseline train=świeże/test=świeże

Metoda:

  1. Pobranie SpamAssassin + PhishTank (2024-2026 snapshot) + generowanie AI-phishing (GPT-4, 5K emaili)
  2. Trenowanie: SVM+TF-IDF, BERT-base-uncased, regresja logistyczna na starym zbiorze
  3. Test: te same modele na świeżym zbiorze → miara degradacji ΔF1
  4. Baseline in-distribution: trening i test na świeżych danych (upper bound)
  5. Strategie adaptacji: (a) statyczny model, (b) incremental update co miesiąc, (c) continual learning

Modele / Baseline:

ModelOpis
SVM + TF-IDFklasyczny baseline
Regresja logistycznanajprostszy model
BERT-base fine-tuneddeep learning baseline
Static vs incrementalporównanie strategii adaptacji

Metryki:

  • Główna: ΔF1 (degradacja, próg: ≥20 pp dla SVM/BERT)
  • Dodatkowe: AUC, FPR, porównanie AI-generated vs legacy phishing cech
  • Test statystyczny: McNemar test (temporal vs in-distribution, α=0.05)

Wyniki: (do wypełnienia po wykonaniu)

ModelF1 (old train/new test)F1 (new train/new test)ΔF1

Wnioski: (do wypełnienia po wykonaniu)


PH-EXP-2: Multi-Model Benchmark — Koszt vs Dokładność vs Latencja

Status: planned Priorytet: high Powiązany pomysł: PH-2 Dodano: 2026-05-27

Hipoteza: LightGBM na cechach URL osiąga F1 ≥ 95% PhishDebate (multi-agent LLM, F1=96.5%) przy 1000× niższym koszcie obliczeniowym i <5ms latencji — wykazując, że złożone LLM-based systemy nie przynoszą istotnej poprawy dokładności dla podstawowej detekcji phishingu.

Dane:

  • Dataset: PhishTank 2020 (~20K URLi), Mendeley Phishing Websites, UCI Phishing (~11K)
  • Podział: jednakowe 80/10/10 train/val/test dla wszystkich modeli (seed=42)
  • Preprocessing: 15+ cech URL per rekord; tekstowe cechy emaili dla BERT

Metoda:

  1. Standaryzacja podziału: 80/10/10, seed=42 dla YelpChi, PhishTank i Mendeley — reproducible
  2. Trenowanie: RF, XGBoost, LightGBM (cechy URL), BERT-base (treść emaila), regresja logistyczna
  3. Pomiar latencji: per-query inference time (median 100 predykcji)
  4. Pomiar kosztu: API calls (GPT-4, Claude) vs własne modele (GPU time)
  5. Analiza inżynierii cech: które cechy URL są najważniejsze? (SHAP values)

Modele / Baseline:

ModelOpis
Regresja logistycznaminimum baseline
Random Forestensemble klasyczny
XGBoostgradient boosting
LightGBMszybki gradient boosting
BERT-base fine-tuneddeep learning
PhishDebate (reportowane)multi-agent LLM reference

Metryki:

  • Główna: F1 (próg sukcesu: LightGBM ≥ 95% F1 PhishDebate przy <5ms latencji)
  • Dodatkowe: AUC, precision, recall, latencja [ms], koszt per 1K predykcji [$]
  • Test statystyczny: McNemar test (LightGBM vs RF, α=0.05)

Wyniki: (do wypełnienia po wykonaniu)

ModelF1AUCLatencja [ms]Koszt/1K [$]

Wnioski: (do wypełnienia po wykonaniu)


Pipeline danych

URL features: tldextract parsuje TLD/subdomain, urllib parsuje path/query, dodatkowe: IP in hostname, length URL, count special chars, HTTPS flag. BERT: tokenizacja (max 512 tokens), fine-tuning na email body. PhishTank feed: API key wymagany, snapshot do CSV. Mendeley i UCI: pobieranie z repozytoriów publicznych.

Wymagania techniczne

Środowisko

Python: 3.11+
GPU: opcjonalnie (BERT fine-tuning, ~1h na CPU)
RAM: min. 8 GB
Dysk: ~2 GB (datasety)

Kluczowe biblioteki

# requirements-research.txt
scikit-learn>=1.3
xgboost>=2.0
lightgbm>=4.0
transformers>=4.38
torch>=2.0
tldextract>=5.0
shap>=0.44
pandas>=2.0

Status eksperymentów

IDTytułStatusPriorytetETAWynik
PH-EXP-1Temporal robustness benchmark legacy vs freshplannedhigh
PH-EXP-2Multi-model benchmark koszt vs dokładnośćplannedhigh