Identificació mitjançant anàlisi de gestors de protocols externs al navegador

Els desenvolupadors de la biblioteca fingerprintjs, que permet generar identificadors de navegador en mode passiu basant-se en funcions indirectes com ara la resolució de pantalla, funcions WebGL, llistes de complements i fonts instal·lats, van presentar un nou mètode d'identificació basat en una avaluació de les aplicacions típiques instal·lades. a l'usuari i treballant mitjançant la comprovació del suport als controladors de protocols addicionals del navegador. El codi d'script amb la implementació del mètode es publica sota la llicència MIT.

La comprovació es realitza a partir d'una anàlisi de la vinculació dels manipuladors a 32 aplicacions populars. Per exemple, determinant la presència de gestors d'esquemes d'URL telegram://, slack:// i skype:// al navegador, podeu concloure que el sistema té aplicacions de telegram, slack i skype i utilitzar aquesta informació com a senyal. quan es genera un identificador del sistema. Com que la llista de controladors és la mateixa per a tots els navegadors del sistema, l'identificador no canvia en canviar de navegador i es pot utilitzar a Chrome, Firefox, Safari, Brave, Yandex Browser, Edge i fins i tot Tor Browser.

El mètode permet generar identificadors de 32 bits, és a dir. individualment no permet aconseguir una gran precisió, però té sentit com a característica addicional en combinació amb altres paràmetres. Un desavantatge notable del mètode és la visibilitat de l'intent d'identificació per a l'usuari: quan es genera un identificador a la pàgina de demostració proposada, s'obre una finestra petita però clarament visible a la cantonada inferior dreta en la qual els controladors es desplacen durant força temps. Aquest inconvenient no apareix al navegador Tor, en el qual l'identificador es pot calcular sense adonar-se.

Per determinar la presència d'una aplicació, l'script intenta obrir un enllaç associat a un controlador extern en una finestra emergent, després del qual el navegador mostra un diàleg que us demana que obriu el contingut de l'aplicació associada si l'aplicació que s'està comprovant està present o mostra una pàgina d'error si l'aplicació no està al sistema. Mitjançant una cerca seqüencial dels controladors externs típics i l'anàlisi dels retorns d'error, es pot concloure que el sistema conté els programes que s'estan provant.

A Chrome 90 per a Linux, el mètode no funcionava i el navegador mostrava un diàleg de confirmació de l'operació estàndard per a tots els intents de comprovar el controlador (a Chrome per a Windows i macOS el mètode funciona). A Firefox 88 per a Linux, tant en mode normal com en mode d'incògnit, l'script va detectar la presència d'aplicacions addicionals instal·lades de la llista i la precisió d'identificació es va estimar en un 99.87% (35 coincidències similars de les 26 mil proves realitzades). Al navegador Tor que s'executa al mateix sistema, es va generar un identificador que coincideix amb la prova del Firefox.

Curiosament, la protecció addicional al navegador Tor va fer una broma cruel i es va convertir en una oportunitat per dur a terme la identificació sense que l'usuari s'advertia. A causa de la desactivació dels diàlegs de confirmació per a l'ús de controladors externs al navegador Tor, va resultar que les sol·licituds de verificació es poden obrir en un iframe i no en una finestra emergent (per separar la presència i l'absència de controladors, les regles del mateix origen). bloquejar l'accés a pàgines amb errors i permetre l'accés a about:pàgines en blanc). A causa de la protecció contra inundacions, la verificació al navegador Tor triga notablement més (10 segons per aplicació).

Font: opennet.ru

Afegeix comentari