Chrome жүйесінде орнатылған қондырмаларды анықтауға арналған құралдар жинағы жарияланды

Chrome браузерінде орнатылған қондырмаларды анықтау әдісін жүзеге асыратын құралдар жинағы жарияланды. Алынған қондырмалардың тізімі экран ажыратымдылығы, WebGL мүмкіндіктері, орнатылған плагиндер мен қаріптер тізімдері сияқты басқа жанама көрсеткіштермен үйлесімде белгілі бір шолғыш данасын пассивті сәйкестендіру дәлдігін арттыру үшін пайдаланылуы мүмкін. Ұсынылған енгізу 1000-нан астам қосымшалардың орнатылуын тексереді. Жүйені тексеру үшін онлайн демонстрация ұсынылады.

Қосымшалардың анықтамасы сыртқы сұраулар үшін қолжетімді қондырмалармен қамтамасыз етілген ресурстарды талдау арқылы жасалады. Әдетте, қондырмалар web_accessible_resources сипаты арқылы қондырма манифестінде анықталған кескіндер сияқты әртүрлі ілеспе файлдарды қамтиды. Chrome манифестінің бірінші нұсқасында ресурстарға қол жеткізу шектелмеді және кез келген сайт берілген ресурстарды жүктеп ала алады. Манифесттің екінші нұсқасында әдепкі бойынша мұндай ресурстарға кіру тек қондырманың өзі үшін ғана рұқсат етілген. Манифесттің үшінші нұсқасында қандай қосымшаларға, домендерге және беттерге қандай ресурстарды беруге болатынын анықтау мүмкін болды.

Веб-беттер алу әдісі арқылы кеңейтіммен қамтамасыз етілген ресурстарды сұрай алады (мысалы, "fetch('chrome-extension://okb....nd5/test.png')"), бұл әдетте "false" мәнін қайтарады қондырма орнатылмаған. Қосымшаның ресурстың бар-жоғын анықтауын бұғаттау үшін кейбір қондырмалар ресурсқа кіру үшін қажет растау таңбалауышын жасайды. Таңбаны көрсетпей fetch шақыру әрқашан сәтсіз аяқталады.

Белгілі болғандай, қосымша ресурстарға қол жеткізуді қорғау операцияның орындалу уақытын бағалау арқылы айналып өтуге болады. Таңбалаусыз сұрау кезінде fetch әрқашан қатені қайтаратынына қарамастан, қондырмасы бар және онсыз операцияның орындалу уақыты әртүрлі - егер қондырма бар болса, сұрау қондырмаға қарағанда ұзағырақ болады. орнатылмаған. Реакция уақытын бағалау арқылы сіз қосымшаның болуын дәл анықтай аласыз.

Сыртқы қолжетімді ресурстарды қамтымайтын кейбір қондырмаларды қосымша сипаттар арқылы анықтауға болады. Мысалы, MetaMask қондырмасын window.ethereum сипатының анықтамасын бағалау арқылы анықтауға болады (егер қондырма орнатылмаған болса, "typeof window.ethereum" "анықталмаған" мәнін қайтарады).

Ақпарат көзі: opennet.ru

пікір қалдыру