Отпечаток браузера: что это, как работает, нарушает ли закон и как защититься. Часть 1 +19




image

От Selectel: эта статья первая в цикле переводов очень детальной статьи об отпечатках браузера и том, как работает технология. Здесь собрано все, что вы хотели знать, но боялись спросить по этой теме.

Что такое отпечатки браузера?


Это метод, используемый сайтами и сервисами для отслеживания посетителей. Пользователям присваивается уникальный идентификатор (отпечаток). Он содержит много информации о настройках и возможностях браузера пользователей, что используется для их идентификации. Кроме того, отпечаток браузера позволяет сайтам отслеживать поведенческие паттерны, чтобы впоследствии еще точнее идентифицировать пользователей.

Уникальность примерно такая же, как у реальных отпечатков пальцев. Только последние собирает полиция для поиска подозреваемых в совершении преступлений. А вот технология отпечатка браузеров применяется вовсе не для отслеживания преступников. Ведь мы же здесь не преступники, верно?

Какие данные собирает отпечаток браузера?


О том, что человека можно отследить по IP, мы знали еще на заре существования интернета. Но в данном случае все гораздо сложнее. Отпечаток браузера включает IP-адрес, но это далеко не самая важная информация. На самом деле, для того, чтобы идентифицировать вас, IP не нужен.

Согласно исследованию EFF (Electronic Frontier Foundation), отпечаток браузера включает в себя:

  • User-agent (включая не только браузер, но и версию ОС, тип устройства, языковые настройки, панели инструментов и т.п.).
  • Часовой пояс.
  • Разрешение экрана и глубину цвета.
  • Supercookies.
  • Настройки куки.
  • Системные шрифты.
  • Плагины к браузеру и их версии.
  • Журнал посещений.

Согласно результатам исследования EFF, уникальность отпечатка браузера очень высока. Если говорить о статистике, то только раз на 286777 случаев случается полное совпадение отпечатков браузеров двух разных пользователей.

Согласно еще одному исследованию, точность идентификации пользователя при помощи отпечатка браузера составляет 99,24%. Изменение одного из параметров браузера снижает точность идентификации пользователя лишь на 0,3%. Существуют тесты на отпечаток браузера, которые показывают, насколько большой объем информации собирается.

Как работает отпечаток браузера


Почему вообще возможен сбор информации о браузере? Все просто — ваш браузер обменивается данными с веб-сервером, когда вы запрашиваете адрес сайта. В обычной ситуации сайты и сервисы присваивают пользователю уникальный идентификатор.

Например, «gh5d443ghjflr123ff556ggf».

Эта строчка из случайных букв и цифр помогает серверу узнать ваc, ассоциировать ваш браузер и ваши предпочтения с вами. Действиям, которые вы совершаете онлайн, будет присвоен примерно тот же код.

Так, если вы зашли в Twitter, где есть какая-то информация о вас, все эти данные будут автоматически связаны с тем же идентификатором.

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



Как сайты собирают пользовательские данные?


Это двухуровневый процесс, который работает как на стороне сервера, так и на стороне клиента.

На стороне сервера

Логи доступа к сайту

В этом случае речь идет о сборе данных, отправляемых браузером. Как минимум это:

  • Запрошенный протокол.
  • Запрошенный URL.
  • Ваш IP.
  • Referer.
  • User-agent.

Заголовки

Веб-серверы получают их от вашего браузера. Заголовки важны, поскольку они позволяют быть уверенным, что запрошенный сайт работает с вашим браузером.

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

Куки

Здесь все понятно. Веб-серверы всегда обмениваются куки с браузерами. Если вы в настройках указываете возможность работы с куки, они сохраняются на вашем устройстве и отправляются на сервер, когда бы вы ни зашли на сайт, который уже посещали прежде.

Куки помогают серфить более комфортно, но они же открывают и больше информации о вас.

Canvas Fingerprinting

В этом методе используется элемент холста (canvas) HTML5, который WebGL также использует для визуализации 2D- и 3D-графики в браузере.

Этот метод обычно «заставляет» браузер обрабатывать графический контент, включая изображения, текст или то и другое разом. Для вас этот процесс незаметен, поскольку все происходит в фоне.

Как только процесс завершен, canvas fingerprinting превращает графику в хэш, который становится тем самым уникальным идентификатором, о котором мы говорили выше.

Этот метод позволяет получать следующую информацию о вашем устройстве:

  • Графический адаптер.
  • Драйвер графического адаптера.
  • Процессор (если нет выделенного графического чипа).
  • Установленные шрифты.

Логирование на стороне клиента

Здесь подразумевается, что ваш браузер обменивается большим количеством информации благодаря:

Adobe Flash и JavaScript

Согласно FAQ AmIUnique, если у вас активирован JavaScript, то вовне передаются данные о ваших плагинах или спецификациях железа.

Если установлен и активирован Flash, то это предоставляет стороннему «наблюдателю» еще больше информации, включая:

  • Ваш часовой пояс.
  • Версию ОС.
  • Разрешение экрана.
  • Полный список установленных в системе шрифтов.

Куки

Они играют очень важную роль в логировании. Так, вам обычно нужно решить, позволить ли браузеру обрабатывать куки или полностью удалить их.

В первом случае веб-сервер получает просто огромное количество информации о вашем устройстве и предпочтениях. Если вы не одобрите работу с куки, сайты все равно получат кое-какие данные о вашем браузере.

Зачем нужна технология отпечатка браузера?


В основном для того, чтобы пользователь устройства получил оптимизированный для его устройства сайт, вне зависимости, зашел он в интернет с планшета или смартфона.

Кроме того, технология используется для рекламы. Это просто идеальный инструмент дата-майнинга.

Так, получив собранную сервером информацию, поставщики товаров или услуг могут создавать очень тонко нацеленные рекламные кампании с персонализацией. Точность таргетирования гораздо выше, чем если использовать просто IP-адреса.

Например, рекламщики могут использовать отпечатки браузеров для того, чтобы получить список пользователей сайта, разрешение экрана которых можно назвать низким (например, 1300*768), кто ищет более качественные мониторы в интернет-магазине продавца. Или же пользователей, которые просто серфят по сайту без намерения что-либо купить.

Затем полученную информацию можно использовать для таргетирования рекламы качественных мониторов с высоким разрешением на пользователей с небольшим и устаревшим морально дисплеем.

Кроме того, технология отпечатка браузера используется еще и для:

  • Обнаружения фрода и ботнетов. Это реально полезная для банков и финансовых организаций функция. Они позволяют отделить поведение пользователя от активности злоумышленников.
  • Определение VPN и proxy пользователей. Разведслужбы могут использовать этот метод для отслеживания интернет-пользователей со скрытыми IP-адресами.



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

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

Напомним, эта статья — только первая часть, впереди еще две. В них рассматриваются вопросы законности сбора персональных данных пользователей, возможности использования этих данных и методы защиты против слишком уж активных «?собирателей»?.




Комментарии (16):

  1. yamifa_1234
    /#22130008

    читал в свое время, что появилась методика идентификации пользователя по стилю печатания(скорость нажатия на клавиши, интервалы между нажатиями и все такое...)

    • raamid
      /#22153728

      По движению мыши можно еще. Там даже больше информации можно извлечь, ИМХО.

  2. Nosgoth
    /#22130190

    Плагины для всех современных браузеров генерящие рандомный canvas уже давно есть. Хоть на каждую сессию будет выдавать рандом.

    • Finesse
      /#22131572

      Это не поможет. Канвас не обязателен для идентификации. Айфоны все одинаковые железом (точнее есть немного кластеров устройств с одинаковым железом), они генерирую одинаковое изображение на канвасе, но тем не менее их идентифицируют и отличают друг от друга.

      • algotrader2013
        /#22132500

        Что-то не особо. Из того, что видел даже в коммерческих проприетарных фингерпринтах, на айфонах все обламываются

        • Finesse
          /#22133238

          Интересно попробовать — обращайтесь в ЛС

      • Bonio
        /#22138394

        но тем не менее их идентифицируют и отличают друг от друга

        Нет. Айфоны практически неподверженны фингерпринтингу из за своей одинаковости железа и по.

        • Finesse
          /#22138486

          Да, железо у них одинаковое. Но есть другие факторы, не связанные с железом, по которым айфоны идентифицируют.

  3. imbasoft
    /#22131010

    Для усвоения материала на практике можно поиграться с сайтом browserleaks.com

  4. Luxo
    /#22131186

    В основном для того, чтобы пользователь устройства получил оптимизированный для его устройства сайт, вне зависимости, зашел он в интернет с планшета или смартфона.
    Оптимизированный для устройства вне зависимости от устройства?

    • Pro-dev-pm
      /#22132888

      Не знаю, с чего все взяли, что на разных устройствах отпечаток может быть одинаковым, но как человек, который сталкивается по работе с фингерпринтингом (мы отлавливаем ботов таким образом) могу сказать, что даже в разных браузерах даде без защиты проблема один и тот же фингерпринт создать. И ещё важный момент, чем универсальнее (читать «чтобы точнее детектил разные браузеры/устройства одного пользователя») будет фингерпринт, тем больше совпадений (вплоть до случайного совпадения на каждый второй) наблюдается, а если точнее определять каждый параметр и увеличивать количество параметров, то начинаем сталкиваться с ситуацией, когда на одном браузере могут быть разные отпечатки. Тут важна именно золотая середина.

  5. ivan386
    /#22131492

    Но тем неменее некогда анонимный видеочат который какраз и пользовался отпечатками браузера для идентикации пользователей таки здался и встроил авторизацию через социальные сети.

  6. try1975
    /#22132832

    Вот ещё для понимания, что собирается:
    antoinevastel.com/bots
    amiunique.org
    www.deviceinfo.me

  7. barloc
    /#22138214

    Что значит журнал посещений в EFF?
    Нет там такой уникальности. Хром вместе с вин10, сафари вместо с иос будут иметь гораздо меньше уникальности на этих параметрах.