Avaldatud on tööriistakomplekt Chrome'i installitud lisandmoodulite tuvastamiseks

Avaldatud on tööriistakomplekt, mis rakendab meetodit Chrome'i brauserisse installitud lisandmoodulite tuvastamiseks. Saadud lisandmoodulite loendit saab kasutada konkreetse brauseri eksemplari passiivse tuvastamise täpsuse suurendamiseks koos muude kaudsete näitajatega, nagu ekraani eraldusvõime, WebGL-i funktsioonid, installitud pistikprogrammide ja fontide loendid. Kavandatav rakendus kontrollib enam kui 1000 lisandmooduli installimist. Teie süsteemi testimiseks pakutakse veebiesitlust.

Lisandmoodulite määratlus tehakse väliste päringute jaoks kättesaadavate lisandmoodulite pakutavate ressursside analüüsi kaudu. Tavaliselt sisaldavad lisandmoodulid mitmesuguseid kaasnevaid faile, näiteks pilte, mis on pistikprogrammi manifestis määratletud atribuudiga web_accessible_resources. Chrome'i manifesti esimeses versioonis ei olnud juurdepääs ressurssidele piiratud ja kõik saidid võisid pakutavad ressursid alla laadida. Manifesti teises versioonis oli juurdepääs sellistele ressurssidele vaikimisi lubatud ainult lisandmooduli enda jaoks. Manifesti kolmandas versioonis oli võimalik määrata, milliseid ressursse millistele lisandmoodulitele, domeenidele ja lehtedele saab anda.

Veebilehed võivad taotleda laienduse pakutavaid ressursse, kasutades toomismeetodit (nt "fetch('chrome-extension://okb....nd5/test.png')"), mille tagastamine "false" näitab tavaliselt et lisandmoodul pole installitud. Lisandmooduli ressursi olemasolu tuvastamise blokeerimiseks loovad mõned lisandmoodulid ressursile juurdepääsuks vajaliku kinnitusloa. Tootamise kutsumine ilma luba määramata ebaõnnestub alati.

Nagu selgub, saab lisaressurssidele juurdepääsu kaitsest mööda minna, hinnates toimingu täitmisaega. Vaatamata asjaolule, et ilma märgita taotlemisel tagastab toomine alati vea, on toimingu täitmisaeg lisandmooduliga ja ilma selleta erinev – lisandmooduli olemasolul võtab päring kauem aega kui lisandmooduli korral. pole installitud. Reaktsiooniaega hinnates saate toidulisandi olemasolu üsna täpselt kindlaks teha.

Mõned lisandmoodulid, mis ei sisalda väliselt juurdepääsetavaid ressursse, saab tuvastada täiendavate atribuutide järgi. Näiteks MetaMaski lisandmoodulit saab defineerida, hinnates atribuudi window.ethereum definitsiooni (kui lisandmoodul pole määratud, tagastab "typeof window.ethereum" väärtuse "undefined").

Allikas: opennet.ru

Lisa kommentaar