Comprendere il browser fingerprinting

Il Browser fingerprinting è la raccolta sistematica di informazioni riguardanti il browser web al fine di formulare ipotesi plausibili circa la sua identità o le sue caratteristiche. Tutte le impostazioni e funzionalità del browser creano un "browser fingerprint". La maggior parte dei browser crea inavvertitamente un'impronta digitale unica per ogni utente, che può essere tracciata su Internet. Per informazioni più approfondite sul fingerprinting del browser, consultare questi articoli del Tor Blog: Browser Fingerprinting: An Introduction and the Challenges Ahead e Tor Browser: a legacy of advancing private browsing innovation.

Perché il browser fingerprinting minaccia la privacy online?

Innanzitutto, non c'è la necessità di chiedere il permesso all'utente per effettuare la raccolta di questa informazione. Ogni script attivo nel browser può costruire silenziosamente un fingerprint del dispositivo senza che l'utente se ne accorga.

In secondo luogo, se un attributo dell'impronta digitale del browser è unico o se la combinazione di più attributi è unica, il dispositivo può essere identificato e tracciato online. Ciò significa che anche senza cookie, un dispositivo può essere tracciato utilizzando la sua impronta digitale.

Come Tor Browser riduce il fingerprinting

Tor Browser è specificamente progettato per ridurre al minimo l'unicità dell'impronta digitale di ciascun utente attraverso varie metriche. Sebbene sia praticamente impossibile rendere identici tutti gli utenti di Tor Browser, l'obiettivo è ridurre il numero di “secchi” distinguibili per ogni metrica. Questo approccio rende più difficile tracciare efficacemente i singoli utenti.

Alcune proprietà, come il sistema operativo e la lingua, sono necessarie per le funzionalità e non possono essere completamente nascoste o camuffate. Invece, Tor Browser limita la varietà di questi attributi per ridurre la distintività. Ad esempio, limita l'enumerazione dei caratteri e applica il fallback dei caratteri, standardizza le dimensioni dello schermo e delle finestre utilizzando il letterboxing e limita la varietà delle lingue richieste a un piccolo insieme predefinito.

L'obiettivo principale delle protezioni anti-fingerprinting di Tor Browser è quello di rendere significativamente più difficile la raccolta di informazioni sufficienti a identificare univocamente gli utenti, migliorando così la privacy senza compromettere le funzionalità necessarie.

Funzionalità anti-fingerprinting in Tor Browser

Letterboxing

Per evitare il fingerprinting basato sulle dimensioni dello schermo, Tor Browser inizia con una finestra di contenuto arrotondata a un multiplo di 200px x 100px. La strategia consiste nel raggruppare tutti gli utenti in un paio di gruppi per rendere più difficile individuarli. Finora funziona, finché gli utenti non iniziano a ridimensionare le finestre (ad esempio, massimizzandole o passando alla modalità a schermo intero). Tor Browser viene fornito con una difesa di fingerprinting anche per questi scenari, che si chiama Letterboxing, una tecnica sviluppata da Mozilla e presentata nel 2019. Funziona aggiungendo margini alla finestra del browser, in modo che la finestra si avvicini il più possibile alle dimensioni desiderate, mentre gli utenti si trovano ancora in un paio di gruppi di dimensioni dello schermo che impediscono di individuarli con l'aiuto delle dimensioni dello schermo.

In parole povere, questa tecnica crea gruppi di utenti di determinate dimensioni dello schermo e rende più difficile individuare gli utenti in base alle dimensioni dello schermo, poiché molti utenti avranno le stesse dimensioni.

letterboxing

User-Agent and Operating System spoofing

The User-Agent string is a value websites can use to identify details about your browser, operating system (OS), CPU architecture, vendor, and version. Since this information can reveal which OS or device a user is using, it has been a vector for browser fingerprinting, allowing websites or trackers to potentially single out users.

Tor Browser addresses this by spoofing the User-Agent. Users cannot choose a specific operating system or attempt to imitate every possible platform. Instead, Tor Browser standardizes User-Agent values to reduce uniqueness and avoid creating a false sense of privacy:

  • All Windows appear as Windows 10.
  • All macOS appear as OS X 10.15.
  • All Android as Android 10.
  • All other systems like all Linux distributions (including Tails and Qubes), *BSD and other operating systems are grouped together and reported as "Linux running X11".
  • All the other details (such as the architecture) are also normalized per-platform.

In this case, the fingerprint resistance strategy in Tor Browser is to protect real values of the User-Agent by spoofing, but also have a large enough user set.

User-Agent is sent to websites as an HTTP header, and it is available to JavaScript as navigator.userAgent. Inconsistencies in these values can trigger anti-bot and anti-fraud systems into categorizing Tor users as a bot, and deny their requests, which in turn affects usability for Tor Browser users.

Some privacy tools or users suggest that making all users appear as Windows would offer the best cover. However, perfectly spoofing across all browser contexts is not possible and active fingerprinting methods (using fonts, features, behavior, with or without JavaScript, etc.) can often be used to infer aspects of the hardware or operating system.

Tor Browser does not let users select which OS they appear to be. This is intentional: any option to choose would only make users more unique and thus easier to fingerprint. The small set of standardized options is key to keeping users blended together, maximizing privacy for everyone.

Altre funzionalità anti-fingerprinting

Oltre al letterboxing, Tor Browser impiega molte altre funzioni per attenuare il fingerprinting del browser e proteggere la privacy degli utenti. These features include Canvas image extraction blocking, NoScript integration, and first-party isolation. Per un elenco completo delle funzionalità, leggere il documento di progettazione e implementazione di Tor Browser.