Është publikuar një set mjetesh me implementimin e metodës për identifikimin e shtesave të instaluara në shfletuesin Chrome. Lista e fituar e shtesave mund të përdoret për të rritur saktësinë e identifikimit pasiv të një instance specifike të shfletuesit, së bashku me tregues të tjerë të tërthortë, siç janë rezolucioni i ekranit, karakteristikat e WebGL, lista e shtesave dhe fonteve të instaluara. Implementimi i propozuar kontrollon instalimin e më shumë se 1000 shtesave. Për të verifikuar sistemin tuaj, është rekomanduar një demonstrim online.
Identifikimi i shtesave bëhet nëpërmjet analizës së burimeve të ofruara nga shtesat, të cilat janë në dispozicion për kërkesa të jashtme. Zvarrisht, shtesat përfshijnë skedarë të ndryshëm të shoqërueshëm, si imazhet, të cilat përcaktohen në manifestin e shtesës me pronën web_accessible_resources. Në versionin e parë të manifestit të Chrome, qasja në burime nuk ishte e kufizuar dhe çdo faqe mund të ngarkonte burimet e ofruara. Në versionin e dytë të manifestit, qasja në burime të tilla me default ishte lejuar vetëm për shtesën e vet. Në versionin e tretë të manifestit, u ofrua mundësia për të përcaktuar se cilat burime mund të jepen për cilat shtesa, domain-e dhe faqe.
Faqet në internet mund të kërkojnë burimet e ofruara nga shtesat duke përdorur metodën fetch (p.sh., 'fetch("chrome-extension://okb….nd5/test.png")'), kthehet që vlera "false" zakonisht tregon se shtesa nuk është e instaluar. Për të bllokuar identifikimin e shtesës në bazë të burimeve, disa shtesa gjenerojnë një token verifikimi, që është e nevojshme për qasje në burim. Thirrja e fetch pa specifikimin e token-it përfundon gjithmonë me dështim.
Siç duket, mbrojtja e aksesit në burimet e shtesave mund të anashkalohet duke vlerësuar kohën e ekzekutimit të operacionit. Megjithatë, edhe pse fetch gjithmonë kthen një gabim kur bëhet një kërkesë pa token, koha e ekzekutimit të operacionit ndryshon në varësi të pranisë së shtesës — nëse shtesa është e pranishme, kërkesa do të kërkojë më shumë kohë se sa nëse ajo nuk është instaluar. Duke vlerësuar kohën e reagimit, mund të përcaktohet mjaft saktë pranisë së shtesës.
Disa shtesa që nuk përfshijnë burime të aksesueshme nga jashtë mund të përcaktohen përmes vetive shtesë. Për shembull, shtesa MetaMask mund të identifikohet nëpërmjet vlerësimit të përcaktimit të veprës window.ethereum (nëse shtesa nuk është e instaluar, «typeof window.ethereum» do të kthejë vlerën «undefined»).
Burimi: opennet.ru
