Artículos

Cover Your Tracks. Descubre la Huella Digital de tu Navegador Web

Tradicionalmente, los anunciantes siempre habían utilizado las cookies como principal mecanismo a la hora de identificarnos de forma univoca y poder rastrearnos entre diferentes sitios web. Eso con el fin de conocer al máximo nuestros gustos y necesidades y poder suministrarnos publicidad más dirigida.

Sin dejar de ser válido este primer punto, ahora (y, de hecho, desde hace ya bastante tiempo) hay formas de tracking bastante más sofisticadas y difíciles de sortear. Una de ellas es el denominado browser fingerprinting, que consiste en la identificación a través de la huella digital de tu navegador web. Si sigues estas lineas verás en que consisten ese tipo de tacticas, y también te mostraré una herramienta que te permitirá experimentar con la huella digital de tu propio navegador.

El simple hecho de visitar cualquier sitio web desde tu navegador, algo probablemente repites varias docenas de veces a diario con diferentes sitios, lleva aparejado un complejo entramado de conexiones detrás, en el que no solo intervienen tu navegador y el servidor que aloja el sitio web en cuestión.

A menudo, asociado al dominio principal al que te conectas, hay otro grupo de dominios con los que tu navegador también establece conexión: dominios de anunciantes, de plataformas para métricas web, plataformas sociales, y un largo etcétera.

Estamos hablando de rastreadores invisibles, de muy diversa índole, y que, a día de hoy, no solo operan mediante la implantación de cookies en tu ordenador (algo relativamente fácil de sortear), sino que cada vez más utilizan técnicas de browser fingerprinting, basadas en la huella digital de tu navegador web.

Con las cookies como mecanismo principal de rastreo, evitar ser targets fáciles era algo que estaba más o menos a nuestra mano. Lo puedes controlar, en su mayor parte, configurando tu navegador para que bloquee las cookies de terceros y haciendo uso del modo de navegación privada.

Al entrar en juego la táctica del reconocimiento de la huella digital del navegador web, sin embargo, la cosa se vuelve bastante más complicada.

Aquí estamos hablando de todo el conjunto de parámetros y características que tu navegador puede revelar a cualquier dominio con el que establezca conexión, no solo sobre él mismo, sino también del sistema operativo, e incluso del propio hardware.

Con cada petición que hace tu navegador con un sitio web (y, por ende, con todos los dominios de terceros que lleva aparejado), hay una serie de datos esenciales, como el User Agent o las cabeceras HTTP, que se transmiten siempre de forma automática. Hay otros muchos, sin embargo, que aunque no puedan ser leídos de forma directa, algunos sitios tratan de capturar (con el uso de las herramientas apropiadas) para ayudarles a tener un perfilado mas concreto de cada conexión.

A primera vista, si analizas cada uno de esos datos de forma individual, puede parecer que dan una información suficientemente genérica. El problema aparece cuando se compilan juntos y se analiza la combinación de todos, permitiendo revelar un perfil mucho más univoco.

Cada combinación da lo que se denomina una huella digital de navegación que, ya de por si, puede servir para identificar usuarios de manera individual entre diferentes webs y sin la necesidad de que se tengan almacenadas cookies en su sistema.

De hecho, y como verás más adelante al realizar el test con la herramienta Cover Your Tracks, existen millones de configuraciones únicas posibles que actúan como identificadores globales, y de los que pueden sacar provecho empresas de todo tipo, desde anunciantes, compañías de seguros, bancos, etc.

Cualquier parámetro adicional que se se consiga recopilar implica añadir un grado mas de unicidad al conjunto, sobretodo si ese parámetro revela un valor poco común (un User Agent de un navegador poco utilizado, una resolución de pantalla rara, etc.).

Cover Your Tracks. Test para Calcular la Huella Digital de tu Navegador

Cover Your Tracks es una herramienta web de la EFF (Electronic Frontier Foundation), que te permitirá realizar un test de tu navegador web mediante técnicas de fingerprintig (las mismas que suelen utilizar las propias compañías) para determinar su huella digital y el grado de unicidad de la misma.

Para realizar el test con tu navegador tan solo debes dirigirte a la página web oficial del proyecto, enlazada arriba. En la misma ventana principal verás un botón donde pone TEST YOUR BROWSER.

Cover Your Tracks. Test

El test no te llevará más de un minuto, y, al finalizar, te mostrará una foto muy exacta de como los diferentes sitios web ven tu navegador, la información que se puede llegar a sacar de él, y el grado de unicidad que presenta el conjunto de todos esos datos capturados.

Análisis de Resultados. ¿Qué Parámetros Analiza Cover Your Tracks?

Una vez realizado el test, verás, en primer lugar, un texto descriptivo que te indicara el grado de protección que confiere el navegador con respecto al bloqueo anuncios, al bloqueo de trackers invisibles, y en cuanto a la huella digital propiamente dicha.

Cover Your Tracks. Resultado

Con respecto al ultimo punto, que es de hecho de lo que trata principalmente el test, podrás hacerte una idea de en que grado tu navegador presenta una huella única, y los diferentes datos sobre él que pueden se capturados por parte de cualquier dominio con el que establezca conexión.

En la propia pagina de resultados tienes el detalle de cada uno de los parámetros aplicados a tu caso concreto. Debajo te dejo un resumen de los que he considerado más importantes.

Headers o Cabeceras

  • User Agent. Es un dato que todo navegador transmite de forma directa por HTTP, y contiene información como el navegador web, su versión, o plataforma sobre la que se ejecuta. Este dato puede resultar muy específico, en la medida de que utilices un navegador web poco común, o una versión muy antigua del mismo.
  • Cabeceras HTTP_Accept. Es un dato que el navegador transmite igualmente de forma directa por HTTP, para indicarle al servidor con el que se conecta que tipo de formato de contenido puede aceptar. Se trata de un dato que suele ser bastante genérico.
  • Detalles de plugins. Es un dato que se transmite por JavaScript, y ofrece un listado de todos los plugins que tengas habilitados en tu navegador. Es un dato que puede llegar a ser muy especifico, en la medida que tengas muchos plugins instalados en tu navegador. Los plugins, sin embargo, no suelen ser tan utilizados en los navegadores web modernos, por lo que este dato tiende a no ser tan específica a día de hoy.
  • Zona horaria. Es un dato que se transmite por JavaScript, y que permite saber la zona horaria que tiene configurada tu sistema. El grado de unicidad aquí dependerá básicamente de la densidad de población de cada zona horaria.
  • Resolución de pantalla y profundidad de color. Es un dato que se transmite por JavaScript, y que muestra el tamaño, en píxeles, que ocupa la ventana del navegador en este momento. Es un dato que, aunque puede llegar a ser muy único, es poco revelador, ya es algo que el usuario puede ir cambiando continuamente.

Métricas de Fingerprinting

  • Fuentes del sistema. Es un dato que enumera las fuentes que tienes configuradas a nivel de sistema, y que, aunque no se transmite de forma directa, se puede conseguir con diferentes métodos. Antiguamente se solía hacer a través de plugins como Flash Player o Java, pero a día de hoy se suele hacer directamente por HTML5. Este dato suele ir ligado al sistema operativo, y no debería ser muy específico, a menos que hayas instalado fuentes adicionales..
  • Filtrado de cookies. Es un dato que se transmite de forma directa por HTTP e identifica si tu navegador acepta o no acepta cookies o las bloquea. Aquí, el hecho de no aceptar cookies resta puntos, en el sentido de que redundará en un dato mucho más específico, por el hecho de ser una configuración mucho menos común.
  • Hash de Canvas Fingerpring. Es un dato que no se transmite de forma directa, pero que se puede capturar a través del elemento Canvas de HTML5. El método para conseguirlo se basa en el hecho de que el mismo código de Canvas puede producir diferentes pixeles en diferentes navegadores web.
  • Hash de WebGL. Es un dato que no se transmite de forma directa, pero que se puede capturar de forma por HTML5 y Javascript.
  • Idioma. Es un dato que se suele transmitir de forma directa, al formar parte de las cabeceras de tu navegador. Puede llegar a ser un dato bastante específico, sobretodo si se combina con la zona horaria, y revela un idioma poco común para una zona horaria concreta.

Especificaciones de Hardware

  • Plataforma. Este dato incluye el sistema operativo y la plataforma sobre la que se ejecuta tu navegador. El grado de especificidad variará en función de si utilizas un sistema operativo muy mayoritario, como Windows, por ejemplo, o más minoritario, como GNU/Linux o macOS.
  • Clase de CPU. Indica el fabricante del procesador en el que se ejecuta tu sistema operativo. Es un dato que por lo general ningún navegador debería permitir revelar.
  • Memoria de dispositivo. Es un dato que se puede conseguir a través de JavaScript, y que indica la memora RAM del dispositivo sobre el que ejecutas el navegador. No es un dato especialmente revelador por si mismo.

¿Como Puedes Protegerte Mejor Frente a las Técnicas de Fingerprinting?

Protegerte frente a las técnicas de fingerprinting, como ya puedes imaginar, no es tan trivial como bloquear las cookies. Prácticas habituales como bloquear cookies o navegar en modo incógnito pueden ayudarte para otros tipos de rastreo, pero no alteran en absoluto la información que revela tu navegador, por lo que en este caso su efecto es totalmente nulo.

Aquí estamos hablando de una gran maraña de datos, muchos de los cuales no podrás cambiar, por revelar información que va implícita con el propio navegador y plataforma utilizados.

Sin embargo, hay muchas medidas que puedes tomar para reducir el impacto general, ya sea desde el punto de vista de bloquear los propios elementos de rastreo que aplican esas técnicas con tu navegador, como con el objetivo de hacer que la propia huella que revela el navegador no sea tan univoca.

A continuación te enumero algunas de las medidas más simples que tienes a tu alcance, aunque lo importante es que tu mismo determines el equilibrio que deseas entre privacidad y practicidad:

  • Bloquear elementos de rastreo. Algunos navegadores, como Firefox o Brave, y llevan de serie protección anti-tracking, para bloquear en primera instancia muchos de los dominios y elementos de rastreo que realizan técnicas de fingerprinting. También existen extensiones, como uBlock Origin, que se encargan de realizar ese filtrado, en caso de que el navegador no traiga la protección de serie.
  • Evitar navegadores poco utilizados. Utilizar navegadores poco utilizados te expone mucho más de cara a las técnicas de fingerprinting, debido a que revela un User Agent mucho más específico, contribuyendo a que tu conexión presente una huella mucho más única. En ese sentido, utilizar un navegador con mas base de usuarios juega a tu favor.
  • Evitar instalar muchas extensiones. El uso de extensiones también puede contribuir a que el patrón de la huella de tu navegador sea mucho más específico. Aunque extensiones como uBlock Origin pueden jugar a tu favor, lo cierto es que lo mejor las mínimas imprescindibles.
  • Evitar el uso de plugins como Flash, Java o Silverlight. En la mayoría de navegadores modernos, por suerte, ya no es necesario el uso de plugins como Flash Player, Java o Silverlight. Sin embargo, para versiones anteriores, o casos concretos, es importante tener en cuenta que el uso de ese tipo de plugins no solo contribuyen a hacer la huella de tu navegado mucho más única (por estar bastante en desuso), sino que por si solos son responsables de revelar una gran cantidad de datos de tu navegador a los sitios web.
  • Combinar varios navegadores. Otra práctica que puedes hacer, en este caso más a nivel operativo que técnico, es combinar el uso de diferentes navegadores para diferentes tareas (utilizando, por ejemplo, un navegador para los sitios con registro de usuario, como redes sociales, etc., y otro para el resto de páginas). Es algo al alcance de cualquiera, y que también te permite tener un mayor orden en tus tareas.

Como ves, aquí no se trata de un todo o nada, sino de escoger inteligentemente lo que este en tu mano, para reducir, en la mayor medida de lo posible, el impacto general de ese tipo de técnicas.

Via