Skip to main content
Tecniche di Machine Learning per la lotta al phishing

Tecniche di Machine Learning per la lotta al phishing

| Michele Petito | Cybersecurity

Articolo letto 1059 volte
#CybersecurityCafé

di Michele Petito e Massimiliano Rossi, AgID CERT

Negli ultimi anni sono stati sviluppati diversi metodi per combattere il phishing tra cui troviamo gli approcci basati su blacklisting/whitelisting, sulla visual similarity, sull’euristica, sui motori di ricerca e più recentemente sul machine learning (ML).

In questo articolo ci concentreremo principalmente su quest’ultimo metodo e sui possibili vantaggi derivanti dall’utilizzo del ML rispetto al più classico e diffuso uso delle blacklist all’interno di browser, firewall e antivirus. Tale approccio sta diventando infatti oramai sempre meno efficace, poiché queste liste derivano dalla raccolta e dall’analisi di varie fonti esterne e richiedono un continuo aggiornamento e revisione da parte degli esperti di sicurezza. Questa attività di tempestivo aggiornamento e verifica risulta sempre più difficoltosa a causa della breve durata delle pagine di phishing: infatti dagli ultimi monitoraggi effettuati il 71,9% delle pagine non durano più di due giorni e la maggior parte di queste rimane attiva solo qualche ora. Inoltre, le blacklist non consentono di rilevare e bloccare attacchi che sfruttano domini appena registrati e pertanto, nonostante la loro lunghezza sia in continuo aumento, gli attacchi di phishing non tendono a diminuire.

La ricerca scientifica nel settore del rilevamento del phishing basato su ML ha una lunga storia che parte da almeno il 2007 con il tool CANTINA [1], un approccio basato sull’analisi dei contenuti delle pagine html. Di seguito viene fornita una breve disamina su alcuni dei più recenti approcci.

Sistemi basati su macchine a vettori di supporto (SVM)

Le macchine a vettori di supporto (SVM, dall’inglese support-vector machines) sono dei modelli di apprendimento supervisionato associati ad algoritmi di apprendimento per la regressione e la classificazione. Questi sistemi utilizzano un campione di dati composto da un insieme di record, costituito per metà da URL di phishing e per l’altra metà da URL legittime. Per il riconoscimento vengono analizzate una serie di caratteristiche dell’URL, come la sua dimensione, il numero di occorrenze di trattini, di punti, di caratteri numerici, la presenza dell’IP ecc.

Sistemi basati su reti neurali

Nel campo del deep learning esistono diversi tipi di reti neurali e ogni giorno vengono pubblicati e discussi nuovi metodi o modifiche ai modelli esistenti. Nel settore Phishing URL detection, le pubblicazioni ricadono per lo più in 2 classi di reti neurali artificiali, le reti neurali ricorrenti e quelle convoluzionali.

Reti neurali ricorrenti (RNN)

In questi sistemi, le URL vengono analizzate direttamente, anziché estrarre ed analizzare le caratteristiche dell’URL. Le RNN infatti permettono di analizzare fenomeni temporali e nel caso dei sistemi anti-phishing vengono usate per analizzare in modo sequenziale i caratteri contenuti nell’URL.

Reti neurali convoluzionali (CNN)

Le reti appartenenti a tale famiglia sono utilizzate prevalentemente nelle applicazioni per il riconoscimento di immagini e video. Una CNN ampiamente utilizzata è stata LeNet 5 del 1998 che fu applicata da svariate banche per il riconoscimento dei numeri scritti a mano sugli assegni. Un esempio di rete CNN moderna progettata per il riconoscimento del phishing è quella sviluppata nel 2020 dai ricercatori Xi’an University [3]: essa tratta l’URL come un’immagine definita da un vettore di punti sparsi. Il sistema, una volta addestrato consentirebbe il controllo dell’URL intorno ai 2 millisecondi senza richiedere risorse computazionali elevate tale da consentire l’utilizzo anche sui dispositivi mobili più recenti dotati di chipset ottimizzati per i calcoli legati al machine learning.

La maggior parte di questi approcci è in grado di ottenere un’accuratezza molto elevata con un bassissimo tasso di falsi positivi. Questi risultati rendono sistemi di phishing detector basati su ML una valida integrazione a supporto delle classiche black/white list.

Per saperne di più

CANTINA: A Content-Based Approach to Detecting Phishing Web Sites

LeNet - Wikipedia

Wei, Wei & Ke, Qiao & Nowak, Jakub & Korytkowski, Marcin & Scherer, Rafal & Woźniak, Marcin. (2020)

Ti è piaciuto questo articolo? Faccelo sapere!
Dai un voto da 1 a 5, ne terremo conto per scrivere i prossimi articoli.

Voto attuale:

Ultimi articoli in rubrica