Железо: WebGL
Последнее изменение:
WebGL - это браузерные API для прорисовки 3D графики на веб-странице. Веб-сайты могут использовать WebGL для снятия отпечатков вашего устройства. В целом, существует два метода для получения WebGL отпечатка:
- WebGL Report - извлекается и изучается полная таблица отчёта WebGL. В некоторых случаях, результат конвертируется в хеш, для дальнейшего анализа.
- WebGL Image - прорисовывается скрытое 3D изображение из которого получается хеш. Поскольку конечный результат зависит от железа, которое производит расчёты при прорисовке, данный метод приносит уникальные значения при использовании различных комбинаций устройств и их драйверов.
Вы можете проверить, какую информацию веб-сайты могут получить через WebGL API из этого теста Browserleaks
Режим "Добавить шум"
Когда вы ставите WebGL режим на "Добавить шум", Индиго перехватывает WebGL запрос посланный веб-сайтом и добавляет случайный шум к выводимым данным. Данный шум является постоянным для браузерного профиля, и это означает что WebGL выводимые данные будут подменены в рамках данного профиля каждый раз также. Например: одно и то же WebGL изображение будет прорисовано также на всех страницах и во всех последующих запусках сессий.
Данный механизм позволяет создавать уникальный, но постоянный отпечаток для каждого браузерного профиля.
Поскольку добавляется случайный шум к данным, веб-сайт при использовании статистического анализа может заметить, что отпечаток уникальный на 100%
Подмена метаданных WebGL
Каждый раз, когда вы устанавливаете WebGL в режим "Добавить шум", метаданные подменяются по дефолту. На самом деле это устаревший механизм, который будет вскоре улучшен, позволяя подменять WebGL метаданные и WebGL image по отдельности.
Когда подмена метаданных включена, Индиго подменит значения WebGL Vendor и Renderer используя значения полученные из базы данных отпечатков.
Изменения метаданных WebGL можно посмотреть в разделе настроек “Дополнительные параметры WebGL”
Режим "Выключить"
В случае, если WebGL подмена установлена на "Выключить", веб-сайты будут видеть реальные хеши WebGL Report и Image.
Установка режима "Выключить" может быть выгодна в тех случаях, когда веб-сайты плохо реагируют на 100% уникальный или блокированный WebGL.
На заметку! В реальном мире хеш WebGL отпечатка не уникален, поскольку по всему миру существует множество копий вашего ПК. В связи с этим, при раскрытии вашего WebGL отпечатка, вы просто сливаетесь с сегментом пользователей, у которых схожее железо. Более того, при подмене отпечатков вы повышаете энтропию, что приводит к тому, что ваши профили слишком выделяются из общего дистрибутива.
Ещё один способ уменьшить энтропию ваших браузерных профилей, и таким образом сделать так, чтобы они лучше сливались с общим дистрибутивом пользователей — запускать Индиго на Mac компьютерах. Поскольку Mac устройства очень схожи по железу, их WebGL отпечатки очень похожи друг на друга. В большинстве случаев, одинаковые модели будут иметь идентичные хеши.
Открытие профилей браузера на нескольких машинах
Важно! Если вы создали браузерный профиль с WebGL установленным на "Добавить шум" и открываете его на разных ПК, с разным железом, веб-сайт увидит на своей стороне, что WebGL хеш не постоянен между запусками.
Добавляемый шум постоянный, но добавляется как фильтр, поверх существующего отпечатка ПК. Поэтому, если ПК сменился, то итоговое значение тоже меняется.
Ниже приведён пример. Тот же браузерный профиль открыт на двух разных ПК. Несмотря на то, что шум постоянный в данном профиле, результаты WebGL отпечатка отличаются.
Если вам нужны постоянные, не изменяемые отпечатки WebGL при использовании на нескольких устройствах, вы можете попробовать следующее:
- Запускайте Индиго на идентично настроенных виртуальных машинах (VM) или же на VPS, с WebGL установленным на "Добавить шум". Поскольку данные машины будут настроены одинаково, подменённый WebGL отпечаток будет постоянным на нескольких ПК.
- Запускайте Индиго на идентичных моделях ПК, с одинаковым железом, драйверами и ОС. Поскольку данные ПК будут иметь одинаковое железо, подменённые отпечатки будут постоянными между запусками сессий.
- Запускайте Индиго на схожих Mac компьютерах. Присутствует аналогичная логика, что в пункте номер 2, но использование Mac устройств позволяет эффективнее "слиться с толпой".