Filtri su blacklist distribuite adattive

I messaggi spam per motivi di praticità vengono inviati in modo identico a decine (se non centinaia) di destinatari. In assenza di filtraggio, ogni destinatario dovrà cancellare manualmente il messaggio ad avvenuta ricezione. Come sfruttare il fatto che cosí tanti utenti ricevono lo stesso messaggio o che, se non lo hanno ricevuto oggi, potrebbero comunque riceverlo in futuro? I sistemi di filtraggio basati su blacklist distribuite adattive si basano sul seguente approccio: l' atto di cancellare un messaggio spam (ad es., con un cancella come spam dal client di posta elettronica o un comando simile) fa si che il client in background avverta della spammonistà del messaggio i server che mantengono queste blacklist distribuite. Ma cosa si comunicano effettivamente? Il sistema di filtraggio non fa altro che inviare ai server il digest del messaggio spam ricevuto. Facendo ciò, ogni altro client che usa tale sistema di filtraggio, al momento della ricezione di un messaggio di posta elettronica può chiedere a uno di questi server se quel messaggio fa parte del database di messaggi spam già ricevuti da altri utenti.

Programmi come Razor [24] e Pyzor [23] implementano tale soluzione, in una maniera tale che messaggi spam fra di loro molto simili (ad es., differendo ovviamente per alcuni valori negli header) abbiano lo stesso digest risultante.

I vantaggi di tale sistema di filtraggio sono l' indubbia capacità di evitare falsi positivi, ma le prestazioni di catalogazione di messaggi in arrivo sono piuttosto basse (non raggiungono il 50%), poichè si fa comunque affidamento sul confronto fra il digest del nuovo messaggio e quelli contenuti nel database distribuito su Internet. Si comprende come se il messaggio non è mai stato ricevuto da nessuno esso non verrà filtrato automaticamente ma richiederà l' intervento dell' utente, che in quel modo aggiornerà il database distribuito. Un altro aspetto negativo è dovuto al fatto che per determinare la spammosità di un messaggio esso debba effettuare delle richieste sulla Rete, procedura che potrebbe risultare lenta per motivi di velocità di connessione o timeout durante la connessione.

Tale filtraggio, come consigliato dagli autori di Pyzor, dovrebbe essere usato solamente in unione con altri sistemi di filtraggio, e non come unica linea difensiva (è questo infatti l' approccio del programma SpamAssassin, cfr. Sezione 2.7.1)



Subsections
Alessio Pace 2004-03-26