Objavljen je alat za otkrivanje dodataka instaliranih u Chromeu

Objavljen je skup alata koji implementira metodu za otkrivanje dodataka instaliranih u pregledniku Chrome. Rezultirajući popis dodataka može se koristiti za povećanje točnosti pasivne identifikacije određene instance preglednika, u kombinaciji s drugim neizravnim pokazateljima, kao što su razlučivost zaslona, ​​WebGL značajke, popisi instaliranih dodataka i fontova. Predložena implementacija provjerava instalaciju više od 1000 dodataka. Nudi se online demonstracija za testiranje vašeg sustava.

Definicija dodataka napravljena je analizom resursa koje dodaci pružaju, dostupnih za vanjske zahtjeve. Tipično, dodaci uključuju različite popratne datoteke, kao što su slike, koje su definirane u manifestu dodatka svojstvom web_accessible_resources. U prvoj verziji Chromeovog manifesta, pristup resursima nije bio ograničen i svaka je stranica mogla preuzeti ponuđene resurse. U drugoj verziji manifesta, pristup takvim resursima prema zadanim postavkama bio je dopušten samo za sam dodatak. U trećoj verziji manifesta bilo je moguće odrediti koji se resursi mogu dodijeliti kojim dodacima, domenama i stranicama.

Web-stranice mogu zatražiti resurse koje pruža proširenje pomoću metode dohvaćanja (na primjer, "fetch('chrome-extension://okb....nd5/test.png')"), što vraćanje "false" obično označava da dodatak nije instaliran. Da bi se dodatku onemogućilo otkrivanje prisutnosti resursa, neki dodaci generiraju verifikacijski token potreban za pristup resursu. Pozivanje dohvaćanja bez navođenja tokena uvijek ne uspijeva.

Kako se pokazalo, zaštita pristupa resursima dodataka može se zaobići procjenom vremena izvršenja operacije. Unatoč činjenici da fetch uvijek vraća pogrešku kada zahtijeva bez tokena, vrijeme izvršenja operacije s dodatkom i bez njega je različito - ako je dodatak prisutan, zahtjev će trajati dulje nego ako je dodatak nije instaliran. Procjenjujući vrijeme reakcije, možete prilično točno odrediti prisutnost dodatka.

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

Izvor: opennet.ru

Dodajte komentar