Identifikacija kroz analizu vanjskih rukovatelja protokolom u pregledniku

Programeri biblioteke fingerprintjs, koja vam omogućuje generiranje identifikatora preglednika u pasivnom načinu rada na temelju neizravnih značajki kao što su razlučivost zaslona, ​​WebGL značajke, popisi instaliranih dodataka i fontova, predstavili su novu metodu identifikacije temeljenu na procjeni tipičnih instaliranih aplikacija na korisniku i rad kroz provjeru podrške u pregledniku dodatni rukovatelji protokola. Kod skripte s implementacijom metode objavljen je pod licencom MIT-a.

Provjera se provodi na temelju analize vezivanja rukovatelja za 32 popularne aplikacije. Na primjer, utvrđivanjem prisutnosti rukovatelja URL sheme telegram://, slack:// i skype:// u pregledniku, možete zaključiti da sustav ima telegram, slack i skype aplikacije i koristiti te informacije kao znak prilikom generiranja identifikatora sustava. Budući da je popis rukovatelja isti za sve preglednike u sustavu, identifikator se ne mijenja prilikom promjene preglednika i može se koristiti u Chromeu, Firefoxu, Safariju, Braveu, Yandex pregledniku, Edgeu, pa čak i Tor pregledniku.

Metoda vam omogućuje generiranje 32-bitnih identifikatora, tj. pojedinačno ne omogućuje postizanje velike točnosti, ali ima smisla kao dodatna značajka u kombinaciji s drugim parametrima. Primjetan nedostatak metode je vidljivost pokušaja identifikacije za korisnika - prilikom generiranja identifikatora na predloženoj demo stranici otvara se mali, ali jasno uočljiv prozor u donjem desnom kutu u kojem se rukovatelji pomiču prilično dugo. Ovaj nedostatak se ne pojavljuje u pregledniku Tor, u kojem se identifikator može izračunati nezapaženo.

Kako bi utvrdila prisutnost aplikacije, skripta pokušava otvoriti poveznicu povezanu s vanjskim rukovateljem u skočnom prozoru, nakon čega preglednik prikazuje dijaloški okvir tražeći da otvorite sadržaj u pridruženoj aplikaciji ako je aplikacija koja se provjerava prisutna ili prikazuje stranicu s pogreškom ako aplikacija nije na sustavu. Uzastopnim pretraživanjem tipičnih vanjskih rukovatelja i analizom povratnih informacija o pogrešci, može se zaključiti da sustav sadrži programe koji se testiraju.

U Chromeu 90 za Linux metoda nije funkcionirala i preglednik je prikazao standardni dijaloški okvir za potvrdu operacije za sve pokušaje provjere rukovatelja (u Chromeu za Windows i macOS metoda funkcionira). U Firefoxu 88 za Linux, kako u normalnom načinu rada tako iu anonimnom načinu rada, skripta je otkrila prisutnost instaliranih dodatnih aplikacija s popisa, a točnost identifikacije procijenjena je na 99.87% (35 sličnih podudaranja od 26 tisuća provedenih testova). U Tor Browseru koji radi na istom sustavu, generiran je identifikator koji odgovara testu u Firefoxu.

Zanimljivo, dodatna zaštita u Tor Browseru odigrala je okrutnu šalu i pretvorila se u priliku da se identifikacija izvrši neprimjetno od strane korisnika. Zbog onemogućavanja potvrdnih dijaloga za korištenje vanjskih rukovatelja u pregledniku Tor, ispostavilo se da se zahtjevi za provjeru mogu otvoriti u iframeu, a ne u skočnom prozoru (kako bi se odvojila prisutnost i odsutnost rukovatelja, pravila istog porijekla blokirati pristup stranicama s pogreškama i dopustiti pristup about:blank stranicama). Zbog zaštite od poplava, provjera u pregledniku Tor traje osjetno duže (10 sekundi po aplikaciji).

Izvor: opennet.ru

Dodajte komentar