DNSBL

DNSBL

Un DNSBL (Domain Name System Blacklist) è un meccanismo utilizzato per combattere lo spam e altre attività indesiderate su Internet.
Si tratta di una lista di indirizzi IP noti per essere associati a invii di posta indesiderata o altre fonti di comportamenti indesiderati.

Quando un server di posta elettronica riceve un messaggio, può verificare l’indirizzo IP del server mittente tramite le liste DNSBL e se l’indirizzo IP è presente il messaggio può essere marcato come spam, messo in quarantena o rifiutato.

Esistono diverse liste DNSBL mantenute da varie organizzazioni, ciascuna con criteri diversi per l’inserimento e la rimozione degli indirizzi IP.

URIBL

Un URIBL (Uniform Resource Identifier Blacklist) è un tipo di blacklist che si focalizza sugli URL (Uniform Resource Locator) contenuti nei messaggi di posta elettronica e in altri contesti web.

A differenza del DNSBL, che si concentra sugli indirizzi IP dei mittenti, l’URIBL analizza gli URL presenti nei contenuti dei messaggi o nelle pagine web.

Due delle liste più conosciute sono:
zen di SpamHaus – dominio zen.spamhaus.org – https://spamhaus.org
multi di URIBL – dominio multi.uribl.com – https://uribl.com

Interrogazione

I passaggi generali per l’interrogazione di una lista sono i seguenti:

  1. ottenere l’indirizzo IP da verificare
  2. invertire l’indirizzo IP, l’interrogazione della lista richiede l’indirizzo nel formato inverso. Ad esempio se l’indrizzo da verificare è “192.168.1.2” l’inversione darà come risultato “2.1.168.192”
  3. costruire il nome a dominio da interrogare aggiungendo all’indirizzo invertito un punto e l’indirizzo della lista da utilizzare. Ad esempio prendendo l’indirizzo del punto precedente e la lista “rbl.esempio.it” il nome a dominio risultante sarà “2.1.168.192.rbl.exempio.it”
  4. eseguire una query DNS richiedendo un record A. Se si ottiene una risposta l’indirizzo richiesto è presente nella lista e il motivo dell’inserimento è normalmente indicato dalla risposta ricevuta.

Per convenzione la verifica di funzionamento di una lista viene fatta richiedendo la presenza dell’indirizzo 127.0.0.2 quindi:
Richiesta: 2.0.0.127. (es. 2.0.0.127.zen.spamhaus.org)
Tipo: Host address (A)
Risposta attesa: record (anche multipli) nella forma 127.0.0.x

Se non si ottiene o se la risposta non è nel formato atteso significa che la lista non è interrogabile dal DNS che si sta utilizzando.

SPAMHAUS.ORG

Query di test: 2.0.0.127.zen.spamhaus.org
Record: A
Risposta attesa: record multipli nella forma 127.0.0.x

Esempio:
> 2.0.0.127.zen.spamhaus.org
Address: 127.0.0.10
Address: 127.0.0.2
Address: 127.0.0.4

URIBL.COM

Query di test: 2.0.0.127.multi.uribl.com
Record: TXT
Risposta attesa: “permanent testpoint”
Risposta negativa: “Query Refused. See http://uribl.com/refused.shtml for more information)…”

DNS pubblici: falsi positivi e falsi negativi

Di norma il comportamento dei nameserver pubblici è quello di fornire sempre una risposta negativa a qualunque interrogazione delle DNSBL o in qualche caso non forniscono alcuna risposta.
Alcuni nameserver pubblici hanno iniziato a restituire risposte apparentemente positive, o meglio, non negative. Ad esempio attualmente il server DNS 1.1.1.1 di CloudFlare restituisce queste risposte per qualsiasi indirizzo richiesto alle liste di Spamhaus:

> 8.8.8.8.zen.spamhaus.org
Server: one.one.one.one
Address: 1.1.1.1
Non-authoritative answer:
Name: 8.8.8.8.zen.spamhaus.org
Address: 127.255.255.254

Sono quindi risposte formalmente positive, anche se interrogando poi il corrispondente record TXT si ottiene una spiegazione più chiara dell’accaduto:

> set type=TXT
8.8.8.8.zen.spamhaus.org
Server: one.one.one.one
Address: 1.1.1.1
Non-authoritative answer:
8.8.8.8.zen.spamhaus.org text = “Error: open resolver; https://www.spamhaus.org/returnc/pub/2400:cb00:525:1024::ac47:7124”

In sostanza SpamHaus (come alcune altre DNSBL) ha messo in black list il nameserver di 1.1.1.1 (e alcuni altri) in quanto “open resolver”, quindi restituisce risposte formalmente positive che falsano l’esito dell’interrogazione.