Saltar al contenido principal
it/blog/obscura/research/dns-tracking/

obscura/research/dns-tracking

2 min di lettura

Panoramica

Il DNS è uno dei livelli più semplici ed efficaci per bloccare i domini di tracciamento e fingerprinting. Prima di qualsiasi connessione HTTP, c'è una ricerca DNS.

Come Aiuta il Blocco DNS

Risolvendo i domini noti di tracciamento/fingerprinting a 0.0.0.0 o 127.0.0.1, il client non si connette mai a quei server:

Query DNS Client  DNS Obscura  0.0.0.0 (bloccato)
                              
                    Blocklist (domini)

Questo impedisce:

  • Il caricamento di script di tracciamento di terze parti
  • L'esecuzione di JS di fingerprinting
  • L'invio di dati da beacon di analytics
  • I server pubblicitari di servire contenuti

Blocklist

Fonte Tipo Copertura
OISD Completa 1.2M domini
StevenBlack/hosts Unificata 100K+ domini
EasyList Annunci 10K+ domini
EasyPrivacy Tracciamento 20K+ domini
AdGuard DNS filter Combinata 100K+ domini
NoTracking Privacy 50K+ domini

Domini Specifici per Fingerprinting

Alcuni domini sono esclusivamente usati per il fingerprinting:

fingerprintjs.com
fingerprint.com
fingerprintjs.net
fpjs.io
*.metrics.*
*.analytics.*

Approcci Implementativi

Approccio 1: Resolver DNS Locale

Esegui un server DNS all'interno del container (es. coredns, dnscrypt-proxy):

  • Risponde alle query DNS dei client
  • Verifica il dominio contro le blocklist
  • Restituisce NXDOMAIN o 0.0.0.0 per i domini bloccati
  • Inoltra le query non bloccate al DNS upstream (es. Cloudflare, Quad9)

Approccio 2: DNS-over-HTTPS/TLS Upstream

Inoltra le query al DNS crittografato per impedire all'ISP di vedere le ricerche dei domini:

Client  DNS Obscura  [DNS-over-HTTPS]  Upstream

Approccio 3: Iniezione File Hosts

Inietta voci /etc/hosts nei dispositivi client tramite opzioni DHCP. Meno flessibile ma zero-configurazione per i client.

Limitazioni

  • Il blocco DNS funziona solo su domini completi, non su sottopercorsi
  • Alcuni tracker usano connessioni IP dirette (nessuna ricerca DNS)
  • Non può bloccare analytics di prima parte (stesso dominio del contenuto)
  • Alcuni script di fingerprinting vengono serviti da CDN che servono anche contenuti legittimi

Conclusioni

  • Il blocco DNS è la mitigazione con il minimo sforzo e il massimo impatto
  • Deve essere una funzionalità principale di Obscura
  • Combina con il blocco a livello HTTP per una copertura completa
  • Sono richiesti aggiornamenti regolari della blocklist