Возможности идентификации пользователя по web-браузеру
Организация Electronic Frontier Foundation опубликовала интересный отчет, в котором представлены выводы, сделанные при исследовании запросов от около миллиона пользователей. Исследование показало, что для достаточно точной идентификации пользователя в сети и трекинга его соединений оказалось вполне достаточно стандартной информации, предоставляемой серверу обычным браузером. Для 84% из всех обработанных запросов удалось сгенерировать уникальную сигнатуру размером всего несколько байт, позволяющую с высокой степенью вероятности утверждать об ее уникальности, что дает возможность отслеживать перемещения пользователя в сети без установки Cookie и учета IP-адреса. При наличии у пользователя плагина Flash или Java вероятность получить уникальный идентификатор возрастает до 94%.
При расчете сигнатуры учитываются такие параметры, как полное наименование браузера (User Agent), содержимое заголовка HTTP_ACCEPT, список установленных плагинов, часовой пояс, список поддерживаемых MIME-типов, параметры экрана и список доступных шрифтов. Каждое из вышеперечисленных полей в отдельности может показаться типичным, но их комбинация обладает достаточной степенью уникальности для использования в качестве «сетевого отпечатка пальца». Проверить уникальность своей системы можно через сервис panopticlick.eff.org.
Из категорий пользователей для которых не удалось генерировать уникальный идентификатор перечислены:
- Пользователи по умолчанию блокирующие работу JavaScript, например, при помощи Firefox-расширения NoScript;
- Пользователи TorButton;
- Обладатели мобильных устройств, подобных Android и iPhone (к сожалению, браузеры подобных устройств не имеют инструментов для контроля за cookie, что позволяет использовать для их трекинга основанные на cookie методы);
- Корпоративные пользователи, у которых все машины в сети по программной начинке точно повторяют друг друга.