intDataBlog
← ЖурналМаршруты обучения ↗

Browser fingerprint: почему шрифты и canvas выдают пользователя

Cookies можно удалить, но браузер все равно оставляет набор сигналов: шрифты, размеры экрана, WebGL, timezone, язык, расширения и особенности рендера.

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

Что дает отпечаток

  • Список доступных шрифтов и результат измерения текста через canvas.
  • WebGL renderer, GPU, color depth, device memory и аппаратные подсказки.
  • Timezone, locale, preferred languages, размеры окна и media capabilities.
  • Поведение API: audio, battery, permissions, touch, storage и доступность расширений.

Как проверять privacy-риск

Для своего продукта важно понимать не только то, что собирается явно, но и то, что попадает в аналитику, антифрод, A/B-платформы и сторонние виджеты.

  • Проверьте список сторонних скриптов и их сетевые запросы.
  • Отдельно оцените антифрод: ему часто дают больше данных, чем нужно продукту.
  • Сравните поведение обычного браузера, приватного окна и профиля с блокировщиками.
  • Не обещайте пользователю анонимность, если fingerprinting остается активным.

Что уменьшает энтропию

Самый практичный путь - не собирать лишнее. Если сигнал не нужен для безопасности или продукта, он не должен уходить в логи и события. Для пользователей помогают hardened-профили, блокировка сторонних скриптов и одинаковые browser profiles в критичных сценариях.