Antispam Livello DUE
In questo livello di protezione, abbiamo praticamente tutte le informazioni necessarie per apportare i controlli sul messaggio vero e proprio.
Caronte Antispam analizza il contenuto del messaggio in base ad un database di riferimenti da voi popolato e impostato.
Come si nota nella figura sottostante , esistano quattro contenitori in cui il messaggio puo’ trovarsi dopo che il filtro bayes lo ha analizzato.
Chiaramente questi contenitori si popolano solo durante l’utilizzo e non possono essere popolati manualmente.
I quattro contenitori:
-
L’anima del messaggio considerata da IMPARARE
- L’anima del messaggio considerata SPAM
- L’anima del messaggio considerata HAM
- L’anima del messaggio considerata NEUTRALE
L’anima del messaggio è il suo riferimento simbolico e indica che quello che vedete è solo uno stralcio del messaggio che è transitato nel filtro.
Tramite i quattro bottoni è possibile indicare al filtro eventuali errori da correggere o farli imparare il messaggio che è stato considerato “NEUTRALE” o da “IMPARARE”.
Questo meccanismo viene regolato dalla percentuale delle “occorrenze” trovate nel messaggio dopo l’analisi, più alto sarà il numero di occorrenze da trovare per considerare il messaggio “SPAM” o “HAM” più “fine” sarà l’accuratezza del filtro, viceversa meno occorrenze chiederemo al filtro più sarà elevato il problema di falsi positivi.
Ricordiamo che non è possibile popolare manualmente il database, ma che questo si popola solo con l’utilizzo e con il vostro aiuto.
Per iniziare a popolare un database nel modo corretto, regolare il settaggio delle occorrenze tra “20%” e “35%” ed alzare di un punto alla volta al primo falso positivo o falso negativo.
Sicuramente all’inizio il filtro lavorerà poco, ma questo è il prezzo da pagare per un buon bayesan database.
Altra regola da tenere a mente è di non inviare il messaggio a SPAM o HAM se questo è già stato considerato HAM o SPAM. (usare la funzione delete se non gli voltee vedere)
I contenitori HAM o SPAM, servono per correggere i falsi positivi o negativi non per AGGRAVARE la situazione di un messaggio già considerato SPAM o HAM dal vostro database.
I messaggi da imparare si troveranno nel contenitore da “IMPARARE” o nel contenitore “NEUTRALE”
Il pulsante “guarda” fa un conteggio in tempo reale delle WORD nel database, sia quelle HAM che quelle SPAM. Questo permette di valutare lo sbilanciamento sia prima che dopo il “LEARN” del messaggio.
Una volta raggiunto un risultato soddisfacente dell’analisi dei messaggi da parte del filtro, le impostazione come “Tieni in quarantena l’anima dei messaggi…” nei contenitori per un determinato tempo, consente a Caronte Antispam di non appesantirsi troppo e a voi di non cancellare manualmente i messaggi , sia in termini di spazio disco e RAM usata che di tempo di gestione. Consigliamo pertanto di settare i valori di “auto cancellazione” del messaggio NON CENSITO dall’amministratore del sistema a non più di 3 giorni, così facendo la coda dei messaggi da vagliare nei quattro contenitori, non sarà mai eccessiva e in caso di falso positivo o negativo, avrete sempre un periodo di tempo per correggere tale errore.
Alcune considerazioni sul filtro BAYES.
L’algoritmo usato da Caronte Antispam è il “Montecarlo Bayes”. Oltre alle parole del messaggio, dentro il database finisco anche delle piccole “segnature” dei file allegati all’email. Questa approccio ci ha permesso di identificare (a database popolato) , spam in PDF, Spam di immagini, immagini incapsulate in PDF, spam con documenti WORD e tutto questo senza l’ausilio di OCR. Il metodo puo’ assomigliare molto ad un controllo Antivirus controllando i file in BYTE to BYTE , ma applicando un' Euristica combinata alle occorrenze delle segnature del messaggio si ha blocchi più definiti e un po’ più grandi.
Considerazioni e consigli utili per il filtro BAYES.
Questo tipo di feature è stata da noi testata per molto tempo, popolando anche dei database con più di 20 milioni di words.
In Caronte Antispam, non viene preclusa la velocità di elaborazione anche se si raggiunge appunto 20 milioni di words, essendo il database caricato e allocato in RAM con indici BINARI.
L’analisi del messaggio con la formula “W x WDB” (Word * Word in DataBase) avviene in meno di un secondo anche se questa formula genera 200 milioni di controlli per parola.
Unica nota negativa è il fattore RAM, con un database di 20 milioni di parole questo filtro puo’ pretendere anche 350MB di ram allocata sul vostro server.
Essendo un unico database per tutti i vostri utenti, questo conterrà al proprio interno anche quelle segnature di messaggi che alcuni utenti vorranno e altri no,
questo tipo di problematica puo’ essere risolta con un valore superiore al 60% delle occorrenze.
Per velocizzare la preparazione di un buon database, potete disabilitare per il tempo dovuto le GREYLIST e qualsiasi RIFIUTO del messaggio impostato, per il tempo necessario a questa preparazione.
Grazie ad una libreria di terze parti per la gestione delle “Regular Expression”, Caronte Antispam mette a disposizione delle macro e dei punteggi i quali possono essere applicati su determinati blocchi del messaggio.
Se vogliamo per esempio bloccare o meglio dire “quotare” con un punteggio un messaggio in entrata che ha nel “Subject” del messaggio la parola “Viagra” o un suo derivato di spam, possiamo creare una regola cosi composta:
nome regola : VIAGRA
punteggio : 5.000
dove cercare : Subject
Es. RE : (viagra)|(\\\/iagra)
Es. RE. cmd : is
L’ANSI usato per le R.E. è quello del PERL, occorre avere un po’ di familiarità per costruire delle R.E. articolate e degne di essere una regola “antispam”, ma questo non toglie che con un po’ di pratica e con l’aiuto del TEST non si possa raggiungere lo scopo.
Il punteggio puo’ essere anche negativo, quindi via libera alla fantasia anche per dei “REVERSE HAM”, che potrebbero essere la vostra firma, un numero di telefono o una password.
Il “dove cercare” questa R.E. puo’ essere anche BODY o RAWBODY,
dove la differenza tra i due è che nella seconda viene considerato tutto il messaggio, HEADER e allegati di coda come FULLTEXT compresi, mentre il BODY, appunto, è solo il corpo del messaggio.
Questo filtro ha solo lo scopo di “annunciare” alla community l’esperienza appena fatta.
Caronte Antispam risponderà con un errore irreversibile “550 5.7.1" e un po’ di divina commedia
(provare per credere) .
Questa feature ha senso di esistere solo se parallelamente è stata attivata la “dante community” in Caronte Antispam.
Suggerimenti sulle spam trap:
Una email spam trap potrebbe essere anche quelle particolari email lasciate nei newsgroup, blog o altro, dove per rispondere al messaggio occorre togliere determinate parole.
esempio:
Rispondi a: dante_LEVAMI_@caronteantispam.com
Un software non puo’ capire che deve togliere la parola “_LEVAMI_” per mandarvi un messaggio,
di conseguenza questa particolare email potrebbe diventare una email spam trap.
Altra indicazione è quella di mettere una email “spam trap”, insieme ad altre email buone , per esempio nella pagina contatti del vostro sito web. Chiaramente questa deve essere invisibile la navigatore con un semplice trucco html: <a href=”mailto:dante[tifrego]@caronteantispam.com”></a>
Per vedere un esempio concreto guardate l'HTML della nostra pagina contatti.