Un gruppo di ricercatori di Mozilla, dell'Università dell'Iowa e dell'Università della California ha concluso uno studio sull'applicazione di codice per l'identificazione nascosta degli utenti sui siti web. L'identificazione nascosta si riferisce alla generazione di identificatori basati su dati indiretti sul funzionamento del browser, come , l'elenco dei tipi MIME supportati, parametri specifici negli header ( e ), l'analisi dei , la disponibilità di determinate Web API, specifiche per le schede grafiche le rendering tramite WebGL e , con CSS, , delle porte di rete, l'analisi delle caratteristiche di utilizzo di e .
Lo studio di 100.000 dei siti più popolari secondo il ranking di Alexa ha mostrato che su 9.040 di essi (10,18%) viene utilizzato codice per l'identificazione nascosta dei visitatori. Inoltre, se si considera il gruppo dei mille siti più popolari, tale codice è stato identificato nel 30,60% dei casi (266 siti), mentre tra i siti classificati tra il mille e il diecimila, è stato trovato nel 24,45% dei casi (2.010 siti). Principalmente, l'identificazione nascosta è utilizzata in script forniti da servizi esterni per e filtrare i bot, così come nelle reti pubblicitarie e nei sistemi di tracciamento dei movimenti degli utenti.
Per identificare il codice che realizza l'identificazione nascosta, è stato sviluppato uno strumento , il cui codice è sotto licenza MIT. Nello strumento vengono utilizzati metodi di apprendimento automatico combinati con analisi statica e dinamica del codice JavaScript. Si afferma che l'uso dell'apprendimento automatico ha notevolmente migliorato l'accuratezza nell'identificazione di codici per l'identificazione nascosta e ha rivelato il 26% in più di script problematici
rispetto a quanto individuato manualmente con euristiche.
Molti degli script di identificazione rilevati mancavano nelle liste di blocco standard , , DuckDuckGo, e .
Dopo l'invio da parte degli sviluppatori della lista di blocco EasyPrivacy, è stata creata una sezione separata per gli script di identificazione nascosta. Inoltre, FP-Inspector ha permesso di identificare alcuni nuovi modi di utilizzo delle Web API per l'identificazione, che in precedenza non erano stati riscontrati nella pratica.
Ad esempio, è stata identificata l'uso di informazioni per l'identificazione della mappa della tastiera (getLayoutMap), dati residui nella cache (tramite l'API Performance si analizzano i ritardi nella consegna dei dati, il che permette di determinare se l'utente ha effettuato richieste a un determinato dominio o se ha già aperto una pagina), diritti assegnati nel browser (informazioni sull'accesso a Notification, Geolocation e Camera API), presenza di dispositivi periferici specializzati e sensori rari (controller di gioco, visori per realtà virtuale, sensori di prossimità). Inoltre, è stato registrato il conteggio per l'identificazione della presenza di API specializzate per determinati browser e le differenze nel comportamento delle API (AudioWorklet, setTimeout, mozRTCSessionDescription), così come l'uso dell'API AudioContext per determinare le caratteristiche del sistema audio.
Lo studio ha anche esaminato questioni relative al malfunzionamento dei siti web nel caso in cui vengano applicati metodi di protezione contro l'identificazione nascosta, che portano a blocchi delle richieste di rete o a limitazioni dell'accesso alle API. È stato dimostrato che la limitazione selettiva delle API solo per gli script identificati da FP-Inspector porta a minori interruzioni nel funzionamento rispetto all'uso di restrizioni generali più severe sulle chiamate API nei browser Brave e Tor, con il potenziale rischio di perdite di dati.

Fonte: opennet.ru
