Offuscare l’eMail in Javascript

Spesso, nei propri siti Internet, si tende ad inserire, nella pagina dei contatti o in altre pagine, magari anche in modo ricorsivo dentro a pagine incluse, il seguente codice HTML:

Questo modo di inserire tra le proprie pagine un indirizzo email è pericoloso ed espone l’indirizzo stesso alla registrazione da parte di un programma che raccoglie email per usarli in ambienti di spamming (spambot). Le pagine HTML dei siti sono costantemente lette ed analizzate da molti software, non tutti “etici”, che sono proprio alla ricerca di indirizzi validi da archiviare e rendere disponibili a sistemi di spamming di tutti i tipi (tra i più conosciuti ci sono Sendmail, Send Safe e Dark Mailer).

Per evitare il più possibile che il nostro indirizzo email entri in circuiti di spamming e che poi comunicazioni commerciali, spesso di dubbia utilità per non dire di peggio, si può cercare di mascherarlo dalla lettura automatica di questi software che effettuano lo scan delle pagine web.

Per far questo è necessario utilizzare un linguaggio di scripting interpretato dal browser, non è possibile usare linguaggi come PHP o ASP poiché questi linguaggi sono interpretati dal server ed il risultato è tradotto in pagine HTML quindi comunque leggibili dai software di scansione o spider di indirizzi mail.

Quello che segue è un esempio di offuscatore di indirizzo mail scritto in Javascript. E’ un esempio molto semplice e basilare ma sufficientemente efficace ad inibire la lettura del proprio indirizzo mail a moltissimi software di scansione.

Un altro metodo più complesso, anche da realizzare, è quello di utilizzare i valori Unicode dei singoli caratteri che compongono l’indirizzo email.

In Javascript si può scrivere una funzione che restituisce il valore Unicode del testo passato.

In questo caso visualizzeremo i corrispondenti codici Unicode della parole “ciao”: \u0063\u0069\u0061\u006f.

Nota: ovviamente non utilizzate questo codice direttamente nelle pagine web poiché sarebbe inutile sostituire l’indirizzo email nell’equivalente Unicode lasciando comunque l’indirizzo “in chiaro” all’interno dello script! Usate lo script solo per creare il corrispondente indirizzo email in Unicode e poi pubblicate quest’ultimo.

Una tecnica alquanto più sicura ed attualmente definitiva è quella di crittografare l’email sempre realizzando un codice di offuscamento. Un esempio di criptazione sarà però oggetto di un futuro articolo.

PDF Creator    Invia l'articolo in formato PDF   

Honeypot e Mail trappola anti-spam in PHP

Se fosse per me ci sarebbe già da parecchi anni, in Italia, una Legge severissima sugli spammer, con pene simili allo stalking e paragonabili a quelli sulla violenza e l’abuso. Chi invia sistematicamente (non parliamo delle offerte di mercato che un’azienda invia un paio di volte l’anno solo ai propri clienti) mail e messaggi senza esplicita richiesta del destinatario e per pubblicizzare materiale assolutamente fuori luogo sempre per il destinatario (mi riferisco per esempio a messaggi in inglese riguardanti la vendita di viagra indirizzati a casalinghe o minorenni che ritengo difficile abbiamo asplicitamente richiesto tali informazioni) dovrebbe essere interdetto dall’uso di Internet. E’ molto complesso ovviamente mettere in pratica questo ma qualche sforzo in più si potrebbe fare.

Lo spam, per chi non lo sapesse, genera, inoltre, traffico di rete e conseguente rallentamento delle operazioni, potrebbe capitare, per esempio, che un vostro mail di lavoro (penso a chi lavora con titoli di borsa o con banche) raggiunga il destinatario ormai troppo tardi a causa del rallentamento dei server di gestione della posta elettronica. Rallentamento dovuto alla mole di messaggi di spam da processare.

Come fanno i programmi che scandagliano la rete a trovare il vostro indirizzo mail e a scrivervi il tutto automaticamente? Per fare questo sono stati realizzati software che si collegano ai siti Internet e leggono il contenuto delle pagine web alla ricerca di indirizzi di posta o di siti.

Per divertirsi a combattere gli spammer con le loro stesse armi possiamo realizzare diversi sistemi-trappola, ne descrivo un paio qui di seguito.

Honeypot eMail

Un honeypot email (esistono anche gli honeypot server) è sostanzialmente un email trappola (mail fake), cioè un indirizzo mail realizzato appositamente per farsi catturare dagli spammer e raccogliere informazioni su di loro. Un software che raccoglie indirizzi mail navigando in rete difficilmente è programmato per riconoscere honeypot (barattoli di miele) quindi tende a registrare tutti gli indirizzi che trova.

L’honeypot viene quindi strutturato per riportare alcune informazioni basilari sullo spammer come per esempio l’indirizzo IP e il momento della cattura, ecco un esempio:

che crea sul vostro sito un link al seguente indirizzo:

ipspam-79.123.1.1-Tuesday-29-Dec-09-01-02-54-GMT@dominio.it

Noterete la particolare formattazione della data che riporta informazioni sufficienti a comprendere quando è stato catturato l’indirizzo da parte dello spammer. Il dominio invece deve essere reale così che i futuri mail di spam siano correttamente inviati e ricevuti. Potete ovviamente modificare tale sintassi aggiungendo altre informazioni oppure, nel caso della data, aiutandovi con quanto messo a disposizione dalle classi del PHP:

http://www.php.net/manual/en/class.datetime.php

Ricordate ovviemente di sostituire la punteggiatura non supportata dagli indirizzi email che per esempio non digeriscono gli slash.

Bene, a questo punto abbiamo sulla pagina del nostro sito un email fasullo generato ad ogni visualizzazione con i dati del momento. Passiamo ora a realizzare un server di posta elettronica. Per far questo potete configurare un computer con Microsoft Exchange Server oppure con IceWarp oppure ancora Kerio MailServer.

Fake eMail

Un secondo metodo, se non vi interessa analizzare le attività di spamming o creare dati statistici sulla posta-spazzatura generata visitando le vostre pagine web, può essere la creazione di email fasulli da riempire i database degli spammer e creargli un flusso dati di ritorno da posta inevasa che possa quanto meno disturbarne l’operato.

Il codice qui sotto riportato genera 10 indirizzi email falsi ma sintatticamente corretti per i motori di raccolta dati degli spammer, i cosidetti spambot:

Potete variare il numero di email generate e i dati in esso contenuti cambiando gli array dai quale attinge la funzione per comporre l’indirizzo.

Se posizionate lo script per esempio in fondo ad una pagina web e cambiando magari il colore degli indirizzi con lo stesso colore di fondo per renderli “invisibili” agli utenti ma non agli spambot avrete una serie di indirizzi email intercettabili dagli spammer ma che non disturberanno i navigatori umani della pagina. Il risultato sarà quello di riempire i database degli spammer con email inesistenti e conseguente traffico di ritorno di email inevase.

PDF    Invia l'articolo in formato PDF