БЕЗОПАСНОСТЬ / GUIDE

Как сайты узнают вас после смены IP: Browser Fingerprint, TLS и антифрод

От IP и TLS/JA4 до Canvas, WebGL, WebGPU, WebAssembly и антифрода. Как сайты связывают браузерные сессии, где мифы и как проверить собственную приватность.

≈ 17 min read Signal
#fingerprint#browser#privacy#security#antifraud#ja4#tls#webgpu#canvas#proxy#tor
Схематичный цифровой отпечаток браузера и сетевые соединения
On this page

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

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

Мы разберём процесс от первого сетевого пакета до антифрод-оценки: IP, ASN, TLS/JA4, HTTP Client Hints, Canvas, WebGL, WebGPU, WebAssembly, WebRTC, cookies и поведенческие данные. Затем проведём безопасный эксперимент и построим архитектуру снижения отслеживания.

Видеоматериалы Vektor T13 о CPU/GPU Canvas, WebAssembly и сетевых отпечатках помогли определить интересные вопросы. Но далее мы используем собственные объяснения и проверяем утверждения по MDN, Cloudflare, Tor Project, EFF и исследованиям. Там, где технология экспериментальна, это будет сказано прямо.

1. Начнём с реального сценария: IP другой, браузер тот же

Представьте ноутбук с Chrome. Сначала он обращается к сайту напрямую, потом через домашний VPN, затем через мобильный прокси. Во всех трёх случаях удалённый сервис может видеть разные IP и провайдеров. Но набор доступных шрифтов, характеристики рендеринга, поддерживаемые браузерные API и часть настроек может почти не измениться.

Если человек входит в прежний аккаунт, связывание становится прямым: у сайта уже есть устойчивый идентификатор аккаунта. Если входа нет, остаётся статистическая задача: насколько похожи новые запросы на прежнюю сессию и достаточно ли признаков для решения?

Смена IP - это смена одного сигнала, а не сброс всей цифровой идентичности. И наоборот, похожий набор сигналов ещё не означает, что сайт нашёл конкретного человека. Миллионы пользователей могут делить распространённые конфигурации.

2. Три вещи, которые нельзя путать: отпечаток, идентификатор и риск

Идентификатор - значение, присвоенное пользователю или устройству: аккаунт, cookie с ID сессии или токен приложения. Оно может однозначно связывать действия внутри соответствующей системы, пока действительно сохраняется.

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

Risk score - оценка вероятности определённого события. Например, насколько запрос похож на автоматизированный. Оценка ботоподобности не равна доказательству мошенничества и тем более не доказывает личность посетителя.

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

3. От соединения до решения: четыре уровня наблюдения

Упрощённая последовательность выглядит так. Сеть: сервер или CDN получает подключение и его сетевые характеристики. TLS и HTTP: анализируются параметры рукопожатия и запросов. Браузер: после загрузки страницы разрешённый JavaScript может изучать свойства веб-платформы. Приложение: сервер сопоставляет полученное с авторизацией, историей запросов и признаками поведения.

В реальном мире это не обязательно один линейный процесс. Некоторые сигналы доступны до выполнения JavaScript, другие появляются лишь после взаимодействия, а третьи не собираются вовсе. Работающая через CDN площадка и собственный сервер получают разные уровни детализации.

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

Подключение
  ↓
IP / ASN / сетевой маршрут
  ↓
TLS ClientHello / HTTP-заголовки
  ↓
JavaScript / browser APIs / рендеринг
  ↓
Cookies / аккаунт / контекст сессии
  ↓
Антифрод: оценка риска + действие

4. IP, ASN, география: контекст соединения, а не паспорт пользователя

IP помогает определить точку сетевого выхода. ASN описывает автономную систему, через которую анонсируется адрес: это может быть мобильный оператор, домашний провайдер, дата-центр или VPN-инфраструктура. Геолокация по IP является оценкой и может ошибаться, особенно для мобильных сетей и туннелей.

Домашний IP может менятьcя, за одним мобильным IP могут одновременно находиться многие абоненты из-за CGNAT, а серверный прокси может обслуживать множество клиентов. Поэтому один IP не доказывает одного человека, и один человек не обязан иметь один IP.

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

5. TLS-отпечаток: JA3 и JA4 появляются до JavaScript

При установке TLS-соединения клиент обычно отправляет ClientHello с набором поддерживаемых версий, шифров, расширений и других параметров. По характеристикам такого начала соединения можно построить групповой отпечаток клиента.

JA3 и JA4 - подходы к представлению части этих параметров. JA4 нормализует некоторые изменчивые детали, в том числе порядок расширений, чтобы удобнее группировать похожие клиенты. Cloudflare документирует JA3/JA4 как сигналы для Bot Management.

Важно: это не уникальный аппаратный ID. Тысячи экземпляров одной версии браузера могут иметь совпадающий отпечаток. Отпечаток зависит от TLS-реализации, конфигурации и точки, где наблюдается рукопожатие. Прокси, завершающий TLS от имени клиента, может изменить то, какой ClientHello видит конечный сервер.

Честный вывод: смена IP сама по себе не обязана менять JA4, но совпадение JA4 ещё не идентифицирует конкретное устройство.

6. HTTP/2, HTTP/3, QUIC и сетевые отпечатки

Поверх TLS и транспортного соединения существуют дополнительные особенности: согласование протоколов, порядок и параметры некоторых сообщений, поведение HTTP/2 и QUIC. Эти признаки могут помогать различать реализации клиентов и особенности промежуточных сетевых устройств.

Вектор Т13 обсуждал M1D/M1D1 как подходы к анализу сетевых характеристик TCP, UDP и QUIC. Это интересная тема, но не следует выдавать конкретные имена экспериментальных или проприетарных отпечатков за общедоступный стандарт с доказанной точностью во всех сетях.

Особенно важно местоположение наблюдателя. При VPN сеть сайта видит соединение через выходной сервер, но не обязательно все характеристики исходного TCP-сокета устройства. HTTP-прокси, SOCKS, TCP-туннель и конечный TLS-прокси могут менять наблюдаемые свойства по-разному.

Антифрод анализирует то, что действительно доступно в конкретной точке инфраструктуры, а не весь сетевой стек компьютера на расстоянии.

7. Cookies и аккаунты часто сильнее любого fingerprint

Если у сайта есть действующая cookie сессии, он может узнать возвращение браузера без Canvas, WebGL или анализа TLS. LocalStorage и другие веб-хранилища также могут удерживать идентификаторы в пределах доступной им области.

При входе в один и тот же аккаунт задача вообще меняется: сервис узнаёт аккаунт, даже если устройства, IP и браузер различаются. Отпечаток может помогать отличать привычную среду входа от незнакомой, но не требуется для самого связывания.

Удаление cookies может убрать один устойчивый идентификатор, но не обнулить все остальные сигналы. И наоборот, два одинаковых fingerprint не означают, что cookie или личность пользователя совпадают.

8. User-Agent и Client Hints: что браузер объявляет о себе

User-Agent традиционно сообщает название и версию браузера, платформу и часть сведений об ОС. Современные браузеры сокращают детализацию строки UA, потому что слишком подробный User-Agent сам способствует fingerprinting.

В Chromium часть сведений передаётся через User-Agent Client Hints: например, Sec-CH-UA, Sec-CH-UA-Platform и дополнительные значения, которые могут запрашиваться сайтом. Набор доступных полей зависит от реализации, политик разрешений и контекста.

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

9. Canvas: как рендеринг превращается в признак

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

Важный нюанс из разборов Vektor T13: Canvas не всегда означает GPU. Часть операций выполняется программно на CPU или через библиотеку рендеринга, часть может задействовать GPU. Изменение аппаратного ускорения и графического окружения способно изменить результат, но не обязано менять его всегда.

Сам по себе Canvas hash не является серийным номером видеокарты. Один хеш встречается на нескольких устройствах, а на одном устройстве может измениться после обновления или смены настроек. Поэтому его полезность определяется статистикой по группе пользователей и стабильностью во времени.

10. WebGL и WebGPU: возможности и ограничения графических API

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

WebGPU предоставляет другой набор возможностей, в том числе вычисления на GPU и сведения об адаптере через GPUAdapterInfo, где это поддерживается. Браузеры могут ограничивать детализацию и возвращать пустые или обобщённые значения. Поддержка WebGPU отличается между платформами.

Можно исследовать особенности выполнения вычислений, но такие измерения зависят от драйвера, нагрузки, температуры, питания и реализации. Это не прямой доступ к серийному номеру устройства. В некоторых исследованиях GPU-сигналы помогают группировать среды, однако точность нельзя обещать без контролируемой валидации.

11. Шрифты, ClientRects, экран и локаль

Веб-страница может оценивать наличие некоторых шрифтов косвенно, сравнивая размеры отрисованного текста с эталонным шрифтом. CSS, ClientRects, размеры окна, devicePixelRatio, язык и временная зона могут добавлять наблюдаемые различия.

Но не стоит преувеличивать: сайт не получает полный системный список шрифтов и все сведения об ОС автоматически. Браузеры ограничивают API, а разные методы измеряют разный объём информации.

Редкий набор параметров может выделять сессию сильнее, чем один необычный параметр. При этом признаки коррелированы: определённые ОС обычно идут вместе с определёнными шрифтами и API. Поэтому нельзя просто сложить энтропию всех полей и объявить получившееся число уникальным идентификатором.

12. AudioContext и WebAssembly: измерения вместо серийных номеров

AudioContext может использоваться для вычислений со звуковыми сигналами и сравнения результатов цифровой обработки. WebAssembly позволяет выполнять код с иным профилем производительности, чем обычный JavaScript. Это даёт дополнительные возможности измерения различий среды.

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

Исследования WebAssembly fingerprinting интересны, включая демонстрации Vektor T13, но нельзя утверждать, что любой WASM-тест способен без разрешения прочитать MAC-адрес, серийник диска или аппаратный UUID. Стандартный код веб-страницы не обладает такими полномочиями.

13. WebRTC, DNS и утечки: отделяем маршрутизацию от fingerprint

WebRTC использует механизмы поиска сетевых путей, включая ICE candidates. В зависимости от браузера, разрешений и сетевой конфигурации это может раскрывать локальные или внешние сетевые адреса. Современные браузеры применяют защитные механизмы, в том числе mDNS-обфускацию локальных адресов.

Важно различать утечку реального IP, локальную адресацию и обычный fingerprint браузера. Это разные классы информации. WebRTC не является универсальным API для получения MAC-адреса сетевой карты.

Аналогично, DNS-запросы могут обходить предполагаемую сетевую политику, но DNS-утечка не равна уникальному идентификатору человека. Для профилей с прокси и устройств с VPN проверки проводятся отдельно на уровне браузера и хоста.

14. Антифрод: как из сигналов получается решение

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

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

Антифрод платежей и защита от ботов - пересекающиеся, но разные задачи. Платёжный риск включает контекст операции и признаки злоупотребления, не сводится к fingerprint.

Профессиональная система должна учитывать ложные срабатывания: VPN, доступность браузера, корпоративные прокси и нестандартное оборудование могут выглядеть необычно, не будучи вредоносными.

15. Поведение и корреляция сессий

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

Сайт может видеть поведение в собственной системе. Третья сторона увидит данные только там, где ей действительно доступны события, скрипты или журналы. Поэтому утверждение «любая антифрод-система видит вас на всех сайтах» некорректно.

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

16. Антидетект-браузер: что он умеет, а что нет

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

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

Главная ошибка - проверять только «Canvas hash изменился». Изменение одного поля не доказывает, что меняется набор остальных сигналов. Обратная ошибка - считать любое совпадение гарантированным детектом.

Для повышенной безопасности рабочие контексты разумно разносить по отдельным VM или устройствам. Для конфиденциального веб-сёрфинга следует сравнивать защиту от fingerprinting, в том числе Tor Browser, а не полагаться на рекламное обещание «невидимого профиля».

17. Мобильные прокси и CGNAT: почему другой IP не меняет браузер

Мобильный прокси может направлять соединение через 4G/5G-инфраструктуру. В некоторых системах оператор использует CGNAT, а внешние IP динамически меняются. При этом ваш Chrome по-прежнему работает на том же ноутбуке и использует те же браузерные API.

Сменился внешний IP, возможно изменились сеть, география и характеристики задержки. Но cookies, поддерживаемые шрифты, свойства рендеринга и часть TLS-поведения могут сохраниться, если их не меняет промежуточный узел.

Вывод: прокси управляет маршрутом подключения. Браузерная изоляция управляет состоянием приложения. Изоляция виртуальной машины управляет более сильной границей окружения. Эти уровни не взаимозаменяемы.

18. Почему уникальность fingerprint нужно измерять, а не угадывать

Представим, что два пользователя получили одинаковые Canvas hashes. Это может быть коллизия среди типичных конфигураций. Если их WebGL, UA и язык тоже совпадают, уверенность в похожести увеличится, но часть этих свойств зависима друг от друга.

Исследования оценивают информативность признаков через энтропию и статистические распределения. При этом независимое сложение показателей может сильно переоценивать реальную различимость. Исследование Assessing Web Fingerprinting Risk (2024) специально подчёркивает необходимость учитывать корреляции между API.

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

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

19. Практический эксперимент: отделяем IP от браузерных свойств

Эксперимент можно провести на своём устройстве, без обхода чужих антифрод-систем и без публикации чужих данных.

Сеанс A. В обычном браузере откройте EFF Cover Your Tracks и собственный проверочный сервис. Запишите видимый IP, версию браузера, факт наличия cookies, набор полей теста и время проверки.

Сеанс B. Не меняя браузер и профиль, подключите разрешённый VPN или прокси. Повторите измерение. Сравните только собственные данные: какие сетевые поля изменились, какие браузерные сохранились.

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

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

СравнениеЧто обычно меняетсяЧто может сохраниться
Тот же браузер + другой IPIP / ASN / географияCookies / Canvas / WebGL / UA
Чистый профиль того же браузераCookies / хранилищеДвижок / графика / часть настроек
Другой браузер на том же ПКUA / API / отпечаткиОборудование / сеть / язык
Отдельная VMОС / окружение / часть рендераХостовый выход / общий шлюз
Tor BrowserМаршрут / нормализованные признакиАккаунты, введённые вручную

20. Защита приватности: не обещать, а уменьшать наблюдаемость

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

Tor Browser специально уменьшает различимость параметров: letterboxing, ограничение информации о шрифтах, нормализация UA и другие механизмы защиты от fingerprinting. Его не следует беспорядочно «улучшать» расширениями и случайными подменами.

Для задач, где одна сессия не должна иметь доступ к данным другой, выбирайте VM или отдельные устройства. Для защиты сетевого маршрута применяйте VPN и корректную DNS/IPv6-политику, но не путайте это с гарантией незаметности браузера.

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

21. Для владельцев сайтов: антифрод без избыточной слежки

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

Вместо автоматического наказания за «подозрительный fingerprint» лучше применять последовательные меры: контекстную проверку, дополнительную аутентификацию при повышенном риске, лимиты запросов и процедуры ручного разбора спорных случаев.

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

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

22. Семь мифов, которые стоит оставить в прошлом

«Сменил IP - стал другим человеком». Нет, аккаунты и браузерные сигналы могут сохраняться.

«Canvas hash уникален всегда». Нет, бывают совпадения и изменения на одном устройстве.

«JA4 раскрывает серийник ноутбука». Нет, он описывает характеристики TLS-клиента.

«WebAssembly считывает всё железо». Нет, действует песочница браузера, а измерения вероятностны.

«Мобильный IP невозможно распознать». Нет, тип сети - лишь один из факторов.

«Антидетект-профиль равен виртуальной машине». Нет, уровень изоляции принципиально иной.

«Антифрод всегда знает личность по отпечатку». Нет, оценка риска и достоверная идентификация - разные процессы.

23. Итоговая архитектура: сеть, браузер, окружение, поведение

Если строить систему приватности как инженерный проект, разделите её на четыре зоны ответственности.

Сеть: IP, DNS, TLS, прокси, VPN и маршрутизация. Браузер: cookies, разрешённые API, кросс-сайтовые трекеры, ограничения fingerprinting. Окружение: ОС, VM, отдельные устройства, обмен файлами. Поведение: аккаунты, повторное использование идентификаторов, публикуемые данные и операционные процедуры.

Часть характеристик неизбежно остаётся видимой для работы интернета. Задача не в тотальной подмене всех полей, а в сокращении ненужной наблюдаемости и недопущении слияния независимых контекстов.

Сайт не обязательно знает вас по одному признаку. Он может делать выводы из сочетания слабых сигналов. Поэтому и защита должна состоять из согласованных границ, а не из одной кнопки «сменить IP».

24. Контрольный список и следующий шаг

Перед оценкой приватности браузера ответьте на вопросы: известен ли сайту ваш аккаунт или session cookie? Изменился ли только IP или всё окружение? Какие поля доступны через JavaScript? Кто наблюдает TLS и транспорт? Применяется ли сторонняя аналитика? Сколько сохраняются собранные идентификаторы? Что происходит при смене профиля, браузера и устройства?

Для самостоятельной диагностики проведите три безопасных сравнения из раздела 19, а затем попробуйте объяснить каждое изменение без предположений про «невидимость». Это даст больше пользы, чем стремление получить уникально случайный fingerprint.

Для дальнейшего изучения Signal рекомендует материалы о мобильных прокси и архитектуре цифровой приватности. Они объясняют сетевые маршруты и изоляцию, которые дополняют эту статью.

Технические источники и материалы Vektor T13

Читайте также: мобильные прокси на практике →Читайте также: архитектура цифровой приватности →