Context-Aware Spear Phishing Detection

Pytania badawcze

  1. Czy stopień personalizacji emaila (mierzony liczbą cech kontekstowych użytych do jego wygenerowania) monotoniczne zwiększa trudność detekcji przez klasyfikatory content-only i LLM-only?
  2. Jak formalnie zdefiniować metrykę “attack predictability score” dla pracownika na podstawie publicznych danych OSINT, i jakie źródła mają najsilniejszy sygnał predykcyjny?
  3. Jakie publiczne źródła OSINT (LinkedIn, GitHub, prelekcje, repozytoria, mailing listy, HIBP) w największym stopniu zwiększają skuteczność spear phishingu generowanego przez LLM?

Kluczowe hipotezy

  • H1: Klasyfikator content-only i LLM-only wykazuje monotonicznie rosnący error rate wraz ze wzrostem stopnia personalizacji emaila — mierzonym jako liczba cech kontekstowych użytych przez red-team LLM do wygenerowania ataku (0%, 25%, 50%, 100% cech z profilu OSINT). Hipoteza jest falsifiowalna: odrzucamy ją jeśli zależność nie jest monotonyczna lub efekt nie jest istotny statystycznie przy α=0.05.
  • H2: Metryka “attack predictability score” (APS), definiowana jako ważona suma entropii atrybutów profilu OSINT pracownika, koreluje (Spearman ρ > 0.4) z error rate klasyfikatora przy 100% personalizacji. APS jest obliczalna bez dostępu do internal telemetry.
  • H3: Kombinacja cech z ≥2 publicznych źródeł OSINT daje istotnie wyższy APS niż jakiekolwiek pojedyncze źródło (ANOVA + post-hoc Tukey).

Metodologia

Konstrukcja datasetu (kluczowe: bez data leakage)

  • Zbierz publiczne profile pracowników z LinkedIn, GitHub, Sessionize/Sched, repozytoriów, mailing list (np. Apache, IETF)
  • Zdefiniuj 4 poziomy personalizacji: P0 (brak cech), P25 (imię + rola), P50 (P25 + firma + projekt), P100 (P50 + ostatnia aktywność + współpracownicy)
  • Wygeneruj N emaili na każdy poziom (per profil) używając GPT-4 jako red-team LLM
  • Dataset jest publiczny i reprodukowalny — nie wymaga dostępu do internal telemetry

Klasyfikatory (baseline)

  • Content-only: fine-tuned RoBERTa, TF-IDF + LightGBM
  • LLM-only: GPT-4o zero-shot, Claude Sonnet prompt-based detection
  • Oracle: human annotators (MTurk)

Metryka APS

  • APS(u) = Σ w_i · (1 - H_i(u)) gdzie H_i = entropia atrybutu i dla użytkownika u
  • Wagi w_i estymowane przez regresję liniową na error rate klasyfikatora
  • Walidacja: korelacja APS z empirycznym error rate (z kampanii PSE)

Ewaluacja

  • Zbiór testowy: min. 200 profili × 4 poziomy personalizacji × 5 emaili = 4000 emaili
  • Metryki: Balanced Accuracy, F1, AUC-ROC per poziom personalizacji
  • Testy istotności: permutation test (nie zakładamy normalności rozkładu)

Datasety

  • Publiczne profile OSINT (własne crawlowanie ze zgodą ToS)
  • APWG eCrime phishing corpus (masowy phishing jako negative class)
  • SpamAssassin (negative class uzupełniający)
  • NIE używamy Nazario — zawiera masowy phishing, nieadekwatny dla spear phishingu

Kluczowe publikacje

→ patrz bibliography.md

Partnerzy / dostęp do danych

  • NASK/CERT Polska — potencjalna walidacja na rzeczywistych incydentach (jako follow-up, nie core dataset)

Venue docelowe

Etyka i IRB

Krytyczne: generowanie spear phishingu z profili realnych osób wymaga protokołu etycznego przed zbieraniem danych.

  • Opcja A (preferred): uczestnicy-ochotnicy — rekrutacja 200 osób, które wyrażają świadomą zgodę na profilowanie i bycie targetem red-team emaili. Pozwala na validację human click-rate (oracle P100).
  • Opcja B: profile czysto publiczne (GitHub + Sessionize/Sched) + debriefing po kampanii. LinkedIn wymaga oddzielnej analizy prawnej (ToS 8.2 zakazuje scraping).
  • Konieczne: opinia Komisji Etyki uczelni przed startem. Tier-1 (USENIX Security, S&P, CCS) wymaga opisu protokołu w sekcji Methodology lub Ethical Considerations.
  • LinkedIn: automatyczny crawling jest niezgodny z ToS. Alternatywy: (a) manualne zbieranie, (b) LinkedIn API (restricted), (c) pominięcie LinkedIn na rzecz GitHub+Sessionize+mailing lists.

Niezależność od innych projektów

Ten projekt jest samowystarczalny: nie wymaga infrastruktury z BSU ani kampanii z PSE. Wyniki APS mogą opcjonalnie zasilić walidację w PSE, ale PSE nie jest prerequisitem.

Prefix ID

#SP-