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

obscura/research/dns-tracking

2 min de lectura

Resumen

DNS es una de las capas más simples y efectivas para bloquear dominios de rastreo y fingerprinting. Antes de cualquier conexión HTTP, hay una consulta DNS.

Cómo Ayuda el Bloqueo DNS

Al resolver dominios conocidos de rastreo/fingerprinting a 0.0.0.0 o 127.0.0.1, el cliente nunca se conecta a esos servidores:

Cliente Consulta DNS  Obscura DNS  0.0.0.0 (bloqueado)
                              
                    Lista de bloqueo (dominios)

Esto evita:

  • Que se carguen scripts de rastreo de terceros
  • Que se ejecute JS de fingerprinting
  • Que balizas de análisis envíen datos
  • Que redes de anuncios sirvan contenido

Listas de Bloqueo

Fuente Tipo Cobertura
OISD Completa 1.2M dominios
StevenBlack/hosts Unificada 100K+ dominios
EasyList Anuncios 10K+ dominios
EasyPrivacy Rastreo 20K+ dominios
AdGuard DNS filter Combinada 100K+ dominios
NoTracking Privacidad 50K+ dominios

Dominios Específicos de Fingerprinting

Algunos dominios se usan exclusivamente para fingerprinting:

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

Enfoques de Implementación

Enfoque 1: Resolver DNS Local

Ejecutar un servidor DNS dentro del contenedor (ej., coredns, dnscrypt-proxy):

  • Responde a consultas DNS de los clientes
  • Verifica el dominio contra listas de bloqueo
  • Devuelve NXDOMAIN o 0.0.0.0 para dominios bloqueados
  • Reenvía consultas no bloqueadas a DNS upstream (ej., Cloudflare, Quad9)

Enfoque 2: Upstream DNS-over-HTTPS/TLS

Reenviar consultas a DNS cifrado para evitar que el ISP vea las consultas de dominio:

Cliente  Obscura DNS  [DNS-over-HTTPS]  Upstream

Enfoque 3: Inyección de Archivo Hosts

Inyectar entradas /etc/hosts en los dispositivos cliente mediante opciones DHCP. Menos flexible pero sin configuración para los clientes.

Limitaciones

  • El bloqueo DNS solo funciona en dominios completos, no en subrutas
  • Algunos rastreadores usan conexiones IP directas (sin consulta DNS)
  • No puede bloquear análisis de primera parte (mismo dominio que el contenido)
  • Algunos scripts de fingerprinting se sirven desde CDNs que también sirven contenido legítimo

Conclusiones

  • El bloqueo DNS es la mitigación de menor esfuerzo y mayor impacto
  • Debe ser una funcionalidad principal de Obscura
  • Combinar con bloqueo a nivel HTTP para una cobertura completa
  • Se requieren actualizaciones periódicas de las listas de bloqueo