Objavljen je komplet alata za otkrivanje dodataka instaliranih u Chromeu

Objavljen je komplet alata koji implementira metodu za otkrivanje dodataka instaliranih u Chrome pretraživaču. Dobivena lista dodataka može se koristiti za povećanje tačnosti pasivne identifikacije određene instance pretraživača, u kombinaciji sa drugim indirektnim pokazateljima, kao što su rezolucija ekrana, WebGL karakteristike, liste instaliranih dodataka i fontova. Predložena implementacija provjerava instaliranje više od 1000 dodataka. Ponuđena je onlajn demonstracija za testiranje vašeg sistema.

Definicija dodataka je napravljena kroz analizu resursa koje dodaci obezbjeđuju, dostupnih za eksterne zahtjeve. Tipično, dodaci uključuju različite prateće datoteke, kao što su slike, koje su definirane u manifestu dodatka pomoću svojstva web_accessible_resources. U prvoj verziji Chrome manifesta, pristup resursima nije bio ograničen i bilo koja web lokacija je mogla preuzeti ponuđene resurse. U drugoj verziji manifesta, pristup takvim resursima prema zadanim postavkama bio je dozvoljen samo za sam dodatak. U trećoj verziji manifesta bilo je moguće odrediti koji resursi se mogu dati kojim dodacima, domenima i stranicama.

Web stranice mogu zatražiti resurse koje pruža ekstenzija koristeći metodu dohvaćanja (na primjer, "fetch('chrome-extension://okb....nd5/test.png')"), što vraćanje "false" obično ukazuje da dodatak nije instaliran. Kako bi blokirali dodatak u otkrivanju prisutnosti resursa, neki dodaci generiraju token za provjeru potreban za pristup resursu. Pozivanje preuzimanja bez navođenja tokena uvijek ne uspijeva.

Kako se ispostavilo, zaštita pristupa dodatnim resursima može se zaobići procjenom vremena izvršenja operacije. Unatoč činjenici da dohvat uvijek vraća grešku kada se zahtijeva bez tokena, vrijeme izvršenja operacije sa i bez dodatka je različito - ako je dodatak prisutan, zahtjev će trajati duže nego ako dodatak nije instaliran. Procjenom vremena reakcije možete prilično precizno odrediti prisutnost dodatka.

Neki dodaci koji ne uključuju eksterno dostupne resurse mogu se identificirati po dodatnim svojstvima. Na primjer, MetaMask dodatak se može definirati procjenom definicije svojstva window.ethereum (ako dodatak nije postavljen, "typeof window.ethereum" će vratiti vrijednost "undefined").

izvor: opennet.ru

Dodajte komentar