- El fingerprinting del navegador (browser fingerprinting) es una técnica de rastreo grave que es difícil de bloquear incluso con cookies o VPN, ya que combina información del entorno del usuario para crear un identificador único
- Se combinan diversos elementos como el sistema operativo, la versión del navegador, el idioma, la zona horaria, las fuentes, las extensiones y el resultado del renderizado de canvas, lo que aumenta la posibilidad de identificar a una persona
- Defensas simples como desactivar JavaScript, disfrazar el navegador o manipular canvas pueden, por el contrario, dejar pistas de identificación o romper funciones de los sitios web
- Algunos navegadores como Brave, Mullvad y Librewolf incluyen funciones de resistencia al fingerprinting, pero una defensa completa es imposible y además provoca inconvenientes como peor usabilidad y más CAPTCHA
- Las leyes actuales, como el GDPR, no ofrecen una base regulatoria clara, por lo que se plantea la necesidad de una nueva respuesta legislativa
Antecedentes de la aparición del fingerprinting del navegador
- En el pasado, las cookies de terceros eran la principal amenaza para la privacidad
- Las cookies originalmente eran un medio para mantener una conversación persistente entre el navegador y el servidor, pero las redes publicitarias las aprovecharon para vincular información del usuario entre varios sitios
- En Europa se introdujo la obligación de aviso legal al respecto
- A medida que los navegadores mejoraron la separación de cookies, el riesgo del rastreo con cookies disminuyó, pero el fingerprinting surgió como una nueva amenaza
Cómo funciona el fingerprinting del navegador
- Funciona incluso sin cookies y mantiene cierta capacidad de identificación aun cuando se usa VPN
- Combina la información básica que el navegador entrega al servidor —versión del navegador, sistema operativo, idioma, zona horaria, etc.— para generar un identificador numérico único
- Mediante JavaScript también puede recopilar fuentes, extensiones e información de hardware adicionales
- El canvas fingerprint usa las diferencias de píxeles cuando el navegador dibuja texto para identificar pequeñas variaciones entre sistemas
- Su nivel de unicidad es tan alto que, entre unos 1,000 navegadores, puede haber solo uno con el mismo canvas fingerprint
- Detalles menores como el tamaño de la ventana, el tema o la resolución también pueden usarse como pistas adicionales de identificación
Los límites de los intentos de defensa
- Desactivar JavaScript bloquea el canvas fingerprint, pero hace que el hecho de que “JavaScript está desactivado” se convierta en una característica rara que pasa a ser otro elemento del fingerprint
- Aunque el navegador simule ser otra plataforma (spoofing), el servidor puede inferir el entorno real a partir de otras señales
- Técnicas sofisticadas de disfraz, como la manipulación de canvas, pueden provocar fallas en los sitios web o dejar rastros adicionales
- Como resultado, el fingerprinting es una tecnología extremadamente difícil de bloquear, y las empresas de rastreo siguen refinándola
Respuestas parciales y límites reales
- Sitios de prueba como amiunique.org operan en entornos más simples que los del rastreo real, por lo que reflejan poco la realidad
- Aunque un fingerprint sea “único (unique)”, puede cambiar con el tiempo, así que no es un indicador de rastreo perfecto
- Algunos navegadores como Brave, Mullvad y Librewolf ofrecen funciones integradas de resistencia al fingerprinting
- Librewolf activa por defecto la función de resistencia de Firefox
- Brave y Mullvad responden de maneras distintas
- Sin embargo, quienes hacen fingerprinting también siguen perfeccionando sus técnicas, así que una defensa completa es imposible
Medidas que puede tomar el usuario
- Eliminar cookies de larga duración y usar VPN son la base
- La VPN evita exponer la IP, pero el hecho mismo de usarla puede convertirse en un elemento del fingerprint
- Mantener el navegador en su estado predeterminado y minimizar cambios en extensiones, fuentes y temas
- Cuanto más se use un entorno popular (Windows 11 + Chrome, por ejemplo), menor será la probabilidad de identificación
- Aprovechar funciones integradas de protección en Mullvad, Librewolf y Firefox (con resistencia al fingerprinting activada)
- Incluso tomando todas las medidas, la probabilidad de rastreo solo baja de aproximadamente 99% a 50%
Efectos secundarios de la resistencia al fingerprinting
- Si se activa la resistencia al fingerprinting en Firefox o Librewolf, se producen tamaño de ventana fijo, imposibilidad de cambiar el tema y restricciones de la interfaz
- Como el servidor no reconoce bien el navegador, aumenta la frecuencia de los CAPTCHA
- En algunos sitios web pueden aparecer errores de color, problemas en la posición del texto y otras fallas visuales
Incertidumbre legal y necesidad de regulación
- El GDPR tiene disposiciones sobre cookies, pero no reglas claras sobre el fingerprinting
- La ICO del Reino Unido (Information Commissioner’s Office) evalúa negativamente el fingerprinting
- Su legalidad no está clara, y todavía existe margen para alegar un uso razonable con fines de seguridad
- Por ahora, la conclusión es que hacen falta nuevas leyes
- El fingerprinting no es perceptible para el usuario, y los datos recopilados tienen un carácter de corto plazo y estadístico, pero
se señala como un medio clave que respalda las prácticas excesivas de rastreo de la industria publicitaria
Conclusión
- El fingerprinting del navegador es una amenaza a la privacidad difícil de detectar técnicamente y también en una zona gris legal
- Con el nivel actual de la tecnología, una defensa completa es imposible, y se necesita más regulación legislativa y un refuerzo de las respuestas a nivel de navegador
- Mientras continúen las prácticas de rastreo de la industria publicitaria, el entorno de internet seguirá expuesto al riesgo constante de violación de la privacidad
1 comentarios
Opiniones en Hacker News
Hace tiempo noté que en Chrome, cada vez que hacía clic en “no traducir este idioma”, ese idioma se agregaba automáticamente al header
Accept-LanguageAunque yo no lo configuraba manualmente, Chrome seguía incluyendo esa elección en todas las solicitudes
Sentí que esa combinación, formada por mi propio orden único de idiomas, podía ser una señal muy útil para el fingerprinting
Hubo una propuesta relacionada, pero no fue adoptada → propuesta reduce-accept-language
Artículo relacionado: discusión en HN
Creo que la combinación Firefox + Arkenfox user.js es de lo más potente en privacidad
Ofrece protecciones al nivel de Tor Browser, como borrado automático de cookies, falsificación de fingerprint de canvas y fijar la zona horaria en UTC
A nivel DNS bloquea dominios de anuncios y tracking, y con uBlock Origin o uMatrix bloquea por defecto el contenido de terceros
Solo tiene sentido si mucha gente usa exactamente la misma configuración, como en Tor
Si eres la única persona con ese enmascaramiento, en realidad destacas más
Además, muchos scripts de fingerprinting se cargan desde dominios de primera parte, así que bloquearlos por completo es difícil
Referencia: guía de privacidad de Orion
privacy.resistFingerprintingde Firefox. Da la impresión de que las funciones descritas ya se activan con ese flagCon el fingerprinting muchas veces se confunden las características de identificación con el tracking
Cambiar la zona horaria a UTC no hace imposible el rastreo
Existen señales mucho más fuertes, como la IP o GeoIP
Si una familia usa la misma IP pero cada persona tiene distinta configuración de navegador, de hecho se vuelve más fácil rastrearlos
Si de verdad quieres evitar el tracking, tendrías que combinar rotación de VPN con aleatorización de headers de solicitud
Si lo que buscas es simplemente anonimato, lo más efectivo es usar Tor Browser
Si quieres entender mejor cómo funciona el fingerprinting del navegador, puedes revisar un artículo que escribí
Browser Fingerprinting Explained
El artículo no lo mencionó, pero una herramienta temprana para diagnosticar fingerprints fue Cover Your Tracks (EFF)
Estoy de acuerdo con la idea central del artículo. El fingerprinting es una gran amenaza para la libertad individual
Al mismo tiempo, creo que quienes crean contenido deben recibir una compensación justa
El modelo basado en publicidad es eficiente, pero a cambio de la privacidad
La mayoría de los blogueros no gana mucho dinero, y quienes sí ganan son las empresas de publicidad
Creo que el internet de antes, más centrado en contenido gratuito, era más sano
Que me rastreen no hace que los anuncios sean más eficientes
Más bien hace que me repitan publicidad de productos que no necesito
Es una experiencia inquietante, como en una tienda física donde te muestran anuncios personalizados con reconocimiento facial
Me imagino una estructura en la que se pague 1 centavo por página vista, y el precio suba según la carga del servidor
Esto me recordó un juego que hacíamos en una clase de clasificación de datos
“¿Cuántas preguntas de sí/no hacen falta para identificar a todas las personas en esta sala?”
De esa misma forma, el fingerprint del navegador va acotando a las personas con unas pocas señales
Por ejemplo, la combinación “Linux + Firefox + monitor izquierdo” ya reduce el conjunto a decenas de miles de personas
Por ejemplo, “¿cabello largo?” y “¿mujer?” contienen información parecida, así que casi no añaden bits extra
En cambio, una pregunta como “¿metalero?” da mucha información cuando la respuesta es “sí”, porque es poco común
El núcleo del problema es que dejamos como predeterminado un modelo en el que JavaScript llama y ejecuta otro JavaScript
Stallman tenía razón
Si quieres revisar qué información expone tu navegador, el sitio Am I Unique? es útil
Para que un fingerprint sea útil, no solo necesita unicidad, sino también persistencia
Si instalaras y desinstalaras fuentes al azar cada vez, ¿no sería imposible vincular a tu yo de hoy con tu yo de mañana?
Referencia: PDF de investigación de la EFF, explicación de Mullvad
La API
queryLocalFontsde Chrome requiere un popup de permisosCómic relacionado: xkcd 1105
Hoy en día, durante la carga de la página y en menos de 5 ms, ya deciden a qué tipo de persona perteneces
Aun así, la mayoría de las plataformas de datos elimina automáticamente los datos después de 90 días para mantener el cumplimiento de GDPR