Железо: Canvas

Со свежими изменениями:


Canvas - это HTML5 API, который используется для рисования 2D-графики и анимации на веб-странице.

Помимо предполагаемых функций, Canvas также может быть использован в качестве дополнительной энтропии при снятии отпечатков в браузере. Согласно исследованию, проведенному Принстонским университетом, Englehardt and Narayanan (2016), более 5% веб-сайтов используют Canvas для получения браузерных отпечатков.

В целом, получение отпечатков Canvas работает таким образом, что браузер запрашивает прорисовку скрытого Canvas изображения. Данное изображение будет слегка отличаться на разных ПК, но будет схожим если ПК идентичны. После прорисовки изображения, полученный результат конвертируется в хеш, который в дальнейшем используется как дополнительная энтропия в уникальной идентификации. Более детальное описание механизма получения Canvas отпечатков вы можете прочитать в здесь .

Индиго позволяет вам контролировать отпечатки Canvas в профилях вашего браузера, предоставляя три различных режима работы: Noise, Off и Block.

Режим шума

Когда веб-сайты запрашивают считывание функции Canvas из вашего браузера, алгоритм маскирования Canvas в режиме Noise перехватывает его в середине пути и добавляет случайный, но постоянный шум к показаниям. Для лучшего понимания, приведём аналогию с модификатором голоса. Когда вы используете модификатор голоса, происходит изменение голоса, что делает его кардинально отличимым от первоначального, но изменённый голос всегда постоянный.

Поскольку к показаниям применяется случайный шум, веб-сайт при использовании статистического анализа может заметить, что отпечаток уникальный на 100%.

Выключенный режим

В случае если маскировка Canvas установлена на режим "Выключить", веб-сайты могут видеть реальный Canvas хеш вашего ПК.

Установка режима "Выключить" может быть выгодна в тех случаях, когда веб-сайты плохо реагируют на 100% уникальный или блокированный Canvas.

На заметку!

В реальном мире хеш Canvas отпечатка не уникален, так как несколько копий настроек вашего компьютера существуют в других странах мира. В связи с этим, при раскрытии вашего Canvas отпечатка, вы просто сливаетесь с сегментом пользователей, у которых схожее железо. Более того, при подмене отпечатков вы повышаете энтропию, что приводит к тому, что ваши профили слишком выделяются из общего дистрибутива. 

Ещё один способ уменьшить энтропию ваших браузерных профилей, и таким образом сделать так, чтобы они лучше сливались с общим дистрибутивом пользователей — запускать  Индиго на Mac компьютерах. Поскольку Mac устройства очень схожи по железу, их Canvas отпечатки очень похожи друг на друга. В большинстве случаев, одинаковые модели будут иметь идентичные хеши.

Режим "Блокировать"

Режим "Блокировать" полностью отключает возможность веб-сайтам читать Canvas. Когда веб-сайт запросит прорисовку Canvas изображения у браузера, в котором Canvas установлен на "Блокировать", полученное значение будет пустым.

Как веб-сайт среагирует на данную ситуацию полностью зависит от предусмотрительности самого веб-сайта. Однако, данная ситуация может возникнуть и не только с пользователями, которые тщательно пытаются скрыть свой Canvas отпечаток, но и в случаях, когда возникает ошибка на стороне браузера во время получения данных Canvas объекта.

Открытие профилей браузера на нескольких машинах

Не забывай

Если вы создали браузерный профиль с Canvas установленным на "Добавить шум" и открываете его на разных ПК, с разным железом, веб-сайт увидит на своей стороне, что Canvas хеш не постоянен между запусками.

Добавляемый шум постоянный, но добавляется как фильтр, поверх существующего отпечатка ПК. Поэтому, если ПК сменился, то итоговое значение тоже меняется.

Ниже приведен пример скриншота. Один и тот же профиль браузера открывается на 2 разных машинах. Хотя шум для этого профиля постоянен, показания Canvas по-прежнему различны.

Если на нескольких устройствах требуются неизменяемые показания, есть несколько решений:


  1. Запускайте Индигоn на идентично настроенных виртуальных машинах (VM) или же на VPS, с Canvas установленным на "Добавить шум". Поскольку данные машины будут настроены одинаково, подменённый Canvas отпечаток будет постоянным на нескольких ПК.
  2. Запускайте Индиго на идентичных моделях ПК, с одинаковым железом, драйверами и ОС. Поскольку данные ПК будут иметь одинаковое железо, подменённые отпечатки будут постоянными между запусками сессий.
  3. Запускайте Индиго на схожих Mac компьютерах. Присутствует аналогичная логика, что в пункте номер 2, но использование Mac устройств позволяет эффективнее "слиться с толпой".

Эта статья помогла Вам?