Come risolvere lo SPAM: le Greylist

Il problema dello SPAM sta diventando qualcosa di insopportabile. I livelli di invio di spazzatura (Viagra, Medicinali, Software pirata, orologi e chi più ne ha più ne metta) da parte di utenti preposti allo scopo è ormai diventato un lavoro per questi personaggi che non si riuscirà mai a comprendere, ma che a tutti – me compreso – arreca un fastidio enorme.

Sulla maggior parte dei sistemi e-mail che comunemente si utilizzano sono in funzione dei sistemi di riconoscimento dello SPAM.

Questi sistemi possono essere di diverso tipo, gratuiti o a pagamento. Dipende tutto dal provider che si sta usando o dall’hoster che fornisce la casella di posta elettronica.

Una protezione delle e-mail piuttosto comunue è quella dell’attribuzione del peso, ovvero alle e-mail dopo alcune verifiche (es. il DNS blacklisting) viene attribuito un valore numerico; detto valore viene riconosciuto dal sistema di posta che in base ad una tabella di valori (non direttamente modificabile dall’utente) classifica poi le e-mail come SPAM in tre livelli (basso, medio e alto).

Questo sistema, con l’aggiunta di un buon antivirus, e comunque con la corretta configurazione delle regole di ricezione, consente nella maggior parte dei casi di raggruppare le e-mail inutili in un unico posto, dargli uno sguardo fugace all’occorrenza, e cancellarle in un colpo solo senza per questo doversi preoccupare in maniera eccessiva dei falsi positivi (che comunque possono sussistere e che quindi è bene controllare).

Tuttavia questo sistema non evita la ricezione dei messaggi di SPAM, in quanto sia il mittente che il destinatario sono potenzialmente validi (fatta eccezione regole di Whitelist e Blacklist, o record SPF).

Nell’ottica di questo scenario, un sistema che ritengo estremamente efficace per il combattimento dello SPAM è quello delle Greylist, che consente di ridurre del 99,9% lo SPAM. Si, avete letto bene; la vostra casella di posta elettronica non verrebbe nella stragrande maggioranza dei casi intaccata da questi messaggi.

Prima di spiegare come, lasciatemi dire come gli spammers raccolgono gli indirizzi e-mail degli utenti Internet. Non bisogna pensare a delle persone che sono li a scrivere milioni di volte il messaggio e a premere il tasto invia o inoltra. Il vostro indirizzo di posta elettronica può essere carpito – a grandi linee – in 5 differenti modi:

  1. tramite dei programmi, BOT, che vanno in giro per la rete a raccogliere indirizzi e-mail per metterli in dei database;
  2. aggiunto a mano dagli spammer in dei database;
  3. quando ci si registra su alcuni siti web, in particolar modo quelli che si prefiggono di dare sevizi gratuiti (foto, suonerie per cellulari, sms gratuiti, ecc. ecc);
  4. quando incautamente si fanno le catene di S. Antonio o si usa impropriamente il comando inoltra a tutti o comunque si mettono nel campo destinatario tutti gli indirizzi e-mail dei destinatari (dando modo a chi riceve di vederli tutti);
  5. tramite virus (Worm) che infettano il sistema e contagiano la vostra rubrica di sistema e diffondono i vostri contatti a degli spammers;

I sistemi di invio utilizzati dagli spammers, data la mole di e-mail che devono gestire, una volta inviata la mail non si preoccupano di verificare se questa è stata ricevuta o meno, perché tanto – ammesso anche che un 10% di questi utenti non riceve l’e-mail - lo spammer ha sempre assolto il suo compito: creare disagio.

In virtù di questa caratteristica di invio, l’introduzione delle Greylist risulta quanto mai perfetta.

Cosa sono le Greylist:

Le Greylist sono un livello intermedio tra le Whitelist (utenti accettati sempre) e le Blacklist (utenti da rifiutare sempre). Il compito di queste Greylist è quello di rifiutare in prima istanza la ricezione di tutte le e-mail da qualunque utente (tranne quelli nella Whitelist) restituendo un apposito codice di errore che informa il server di posta mittente che si sono verificati dei potenziali problemi durante la ricezione e che quindi il messaggio dovrà essere rispedito in un secondo momento.

Il protocollo SMTP (quello che si preoccupa di inviare e di ricevere la vostra posta), prevede che un messaggio non recapitato per problemi di rete (come quello accennato ora) debba essere rispedito fino a quando la ricezione non avviene con successo o alternativamente distrutto dopo una serie di tentativi falliti.

In termini pratici cosa succede: il server mittente ricevendo questa risposta, capisce che deve ritentare l’invio, quindi non cestina l’e-mail. Il programma dello spammer, invece, ignorando tutte le risposte partirà dal presupposto che la consegna è riuscita e passerà all’indirizzo e-mail successivo. Risultato. Al successivo invio da parte del server di posta a cui precedentemente si è detto che c’erano dei problemi, l’e-mail verrà accettata e consegnata regolarmente al destinatario.

Vantaggi e svantaggi delle Greylist:

Il sistema delle Grey list consente di eliminare il 99,9% dello spam. E’ richiesto un periodo iniziale di tuning, perché potrebbe darsi che alcuni server di posta elettronica (per esperienza quelli in Italia non soffrono di questo problema) non prevedono il reinvio. In tal caso bisognerebbe accreditare il server mittente come valido, sempre e comunque, evitando questo controllo e lasciando al solo filtro anti-spam di effettuare le restanti verifiche che con la grey list risultano praticamente inutili (ma che restano comunque attive).

Altro svantaggio, a mio avviso più che accettabile, è un ritardo nella consegna del primo messaggio. Infatti, come si è detto sopra, il messaggio in prima istanza viene rifiutato per essere accettato al successivo re-invio.

Questo successivo invio è un tempo variabile che non è deciso da chi riceve la posta, ma dall’amministratore di sistema del server che invia.

Da precisare tuttavia che il ritardo avviene ogni prima volta che il server di ricezione non è in grado di autorizzare il mittente.

Esempio: si supponga che oggi lunedì viene inviata una e-mail all’utente X dal mittente A. L’e-mail viene rifiutata, il server di A fa passare un certo lasso di tempo (generalmente 5 minuti) e poi rispedisce e X riceve l’e-mail con circa 6-7 minuti di ritardo rispetto a quando A ha inviato il messaggio.

Martedì A invia nuovamente un messaggio ad X. Il server di X avendo autorizzato A il giorno precedente, si ricorda di lui e lascia passare immediatamente l’e-mail senza ritardi.

Passa una settimana intera, e siamo quindi al mercoledì successivo. A non ha più inviato messaggi ad X e la lista degli utenti autorizzati temporaneamente è stata depennata dell’indirizzo di A. Al primo invio, il messaggio di A dovrà rieseguire l’iter di verifica; diversamente in caso di continuità, l’indirizzo rimarrebbe sempre vivo e quindi non subirebbe ulteriori rallentamenti.

Insomma, nonostante una fase iniziale di tuning e un piccolo rallentamento, l’implementazione delle Greylist sia - almeno al momento - la panacea al problema. Certo, magari fra qualche mese (spero anche qualche anno se non mai), gli spammers prenderanno provvedimenti e toccherà rivedere la questione. Ma considerato che il progresso fa sempre passi da gigante, non è da escludere che un domani esistano altri sistemi più intelligenti di riconoscimento.

Concludo ovviamente dicendo che quello delle Greylist non è una cosa alla portata di tutti, ma soprattutto è applicabile in prima persona solo da chi gestisce un sistema di posta elettronica. Non si può quindi avvalersi della cosa se la casella di posta elettronica è in hosting da qualche parte. In questo caso bisogna solo chiedere al provider/hoster se il sistema è attivo, ma per esperienza vi posso dire che anche se il mail server utilizzato supporta le Greylist queste difficilmente vengono attivate perchè non tutti gli utenti sono disposti a sostenere quel leggero ritardo in ricezione.

Trovo quanto mai ridicola questa cosa … non scordiamoci che fino a qualche hanno fa si andava ancora in giro con la posta espressa e oggi con le raccomandate che nonostante i costi si smarriscono lo stesso.