Изначально, отпечатки браузера использовались с благими намерениями, например для оптимизации страницы под конкретное устройство, ведь не корректно отображать полноценную версию сайта, если просмотр идет с мобильного устройства и наоборот, для этого браузер передавал сайту информацию о разрешении экрана устройства. Вот ещё пример: пользователь заходит на сайт с программой и сайт сразу ему предлагает версию программы под его операционную систему, для этого сайт передает информацию об операционной системе устройства. Сайты авиакомпаний могут сразу писать, сколько времени осталось до конкретного рейса, для этого браузер передает информацию о часовом поясе устройства. Нужно воспроизвести сложную графику на сайте? Браузер передаст информацию о моделе видеокарты и процессора сайту. Нужно отобразить сайт сразу на нужном языке? Тоже не проблема, сайт передаст информацию о языке системы и шрифтах. Опционально, браузер может передавать информацию о геолокации устройства, что вообще неприемлемо.
Итого получается, что при входе на практически любой сайт, он сразу может получить всю информацию об устройстве: разрешение экрана, модель процессора и видеокарты, операционную систему, версию браузера, язык, часовой пояс и, в некоторых случаях, точное местоположение. Я считаю, что всё вышеперечисленное слишком чувствительная информация, чтобы передавать её всем подряд, особенно это касается геолокации, её передачу нужно отключать сразу.
Остальные же признаки так же помогают существенно сузить круг лиц, среди которых может быть посетитель сайта в конкретный момент времени.
Всё это и есть отпечатки браузера.
Любой сайт может снять отпечаток с браузера простейшим JavaScript-запросом и если в отпечатке есть какой-то уникальный признак, то пользователя можно отследить. К примеру, пользователь заходит на какой-то сайт и сайт снимает его отпечаток, затем пользователь закрывает браузер, очищает cookie-файлы, включает VPN или Tor, чтобы себя "анонимизировать" и заходит на этот же сайт через этот же браузер. Сайт видит, что вход был с идентичным отпечатком и практически в то же время. Таким образом, можно с довольно высокой вероятностью предположить, что обычный и "анонимный" пользователь - один и тот же человек, и это без каких-либо дополнительных программ, деанонимизация произошла практически пассивно.
Так же, передается информация и о расширениях, которые установлены в браузер, некоторые расширения вообще могут собирать данные о браузере и так же отправлять их куда угодно.
Казалось бы, это касается только какого-то конкретного сайта, но это тоже не так, если на сайте установлены рекламные трекеры, они тоже будут собирать информацию об отпечатке браузера и передавать их компаниям, которые занимаются рекламой, таким как Google и Facebook, такие трекеры есть практически на каждом сайте и все эти данные идут компаниям с огромными ресурсами, которые в состоянии эффективно анализировать эти данные, а развитие ИИ сделает этот процесс ещё проще.
Вывод простой - нужно иметь такой же отпечаток, как и большинство других пользователей, чтобы максимально расширить круг подозреваемых, либо вообще запретить сайтам снимать отпечатки браузера. Об этом всём я расскажу ниже.
И так, самый простой способ защититься от снятия отпечатков - просто запретить выполнение каких-либо скриптов на сайте, но у такого подхода есть серьезный минус - очень многие сайты будут работать некорректно, проверить это легко, например в Tor браузере можно включить наивысший уровень защиты в настройках и посмотреть, как различные сайты будут отображаться при таких настройках.
Проверить уровень защиты от веб-трекинга и уникальность своего отпечатка можно на вот этих сайтах:
www.amiunique.org
К примеру, Tor браузер с уровнем защиты "Safest" покажет отличные результаты, тогда как "Safer" покажет весьма посредственные, но в режиме "Safest" сайты будут работать некорректно.
Более удобным методом является использования других методик сокрытия и блокировки отпечатков, такие как:
Но это тоже не является абсолютной защитой, тут возникает следующая проблема - сам браузер, а точнее, его движок. Самым популярным движком для браузеров является Chromium, который тесно связан с Google, хоть и имеет открытый исходный код. Стоит ли рассчитывать на то, что даже в бесплатном и открытом решении коммерческая компания позволит пользователю быть анонимным, если эта компания зарабатывает на продаже рекламы? Лично я очень в этом сомневаюсь. Второй по популярности - движок Gecko от Mozilla, на котором работает браузер Firefox, ситуация с этим движком лучше, чем с Chromium, но Mozilla тоже тесно связана с Google, но это всё же лучше, чем Chromium.
Для примера, сам браузер Firefox отправляет в Mozilla всю информацию о вашей системе и браузере в моменты открытия и закрытия браузера, с браузерами Chrome, Edge и т.д. ситуация ещё хуже.
С LibreWolf ситуация лучше, но он так же отправляет запросы при открытии и закрытии, хотя позиционирует себя, как "конфиденциальный".
У браузеров на базе Gecko хуже безопасность, т.к. у них более слабая изоляция, если сравнивать с Chromium, в Android у Firefox и его форков изоляции вообще нет, т.е. на Android вообще небезопасно использовать браузеры на базе движка Gecko.
Самым оптимальным и сбалансированным браузером является Tor браузер, остальные браузеры требуют серьезных доработок для обеспечения должного уровня конфиденциальности, но даже Tor браузер не всегда может защитить от деанонимизации, поскольку построен на базе движка Gecko и подвержен тем же уязвиомстям, что и этот движек. Например, возникали ситуации, когда уязвимости движка позволяли сайту узнать реальный IP пользователя Tor при помощи JavaScript.
Ситуация довольно печальная, поскольку не все могут соблюдать рекомандации, описанные выше, для тех же виртуальных машин требуется не слабый ПК, а с полностью отключенным JavaScript почти все сайты будут работать некорректно, поскольку JavaScript делает сайты удобнее и красивее, а большинству пользователей красота и удобство намного важнее безопасности. Движки браузеров тоже стали довольно раздутые, как раз для того, чтобы обрабатывать всё более сложные скрипты на сайтах. Более того, есть целые операционные системы, построенные вокруг браузерных движков, например ChromeOS построена вокруг Chomium, хоть эта ОС и является довольно безопасной, но к её конфиденциальности есть серьезные вопросы.
Со временем ситуация не улучшится, а только ухудшится, поскольку у компаний будет ещё больше ресурсов для обработки данных, а пользователи будут хотеть всё больше и больше удобства.
В данный момент единственным решением для защиты является полное отключение JavaScript и WebGL (обработка сложной графики) в браузере, использование виртуальных машин и сайтов, которые работают без JavaScript, но такой сценарий сложно совмещать с адекватной работой в интернете.
Относительно сбалансированным решением является использование Tor браузера в таких ОС, как QubesOS и Whonix, это даже близко не дает такой же уровень защиты, как при первом варианте, но в этом случае хотя бы большая часть сайтов будут нормально работать.
Итого получается, что при входе на практически любой сайт, он сразу может получить всю информацию об устройстве: разрешение экрана, модель процессора и видеокарты, операционную систему, версию браузера, язык, часовой пояс и, в некоторых случаях, точное местоположение. Я считаю, что всё вышеперечисленное слишком чувствительная информация, чтобы передавать её всем подряд, особенно это касается геолокации, её передачу нужно отключать сразу.
Остальные же признаки так же помогают существенно сузить круг лиц, среди которых может быть посетитель сайта в конкретный момент времени.
Всё это и есть отпечатки браузера.
Любой сайт может снять отпечаток с браузера простейшим JavaScript-запросом и если в отпечатке есть какой-то уникальный признак, то пользователя можно отследить. К примеру, пользователь заходит на какой-то сайт и сайт снимает его отпечаток, затем пользователь закрывает браузер, очищает cookie-файлы, включает VPN или Tor, чтобы себя "анонимизировать" и заходит на этот же сайт через этот же браузер. Сайт видит, что вход был с идентичным отпечатком и практически в то же время. Таким образом, можно с довольно высокой вероятностью предположить, что обычный и "анонимный" пользователь - один и тот же человек, и это без каких-либо дополнительных программ, деанонимизация произошла практически пассивно.
Так же, передается информация и о расширениях, которые установлены в браузер, некоторые расширения вообще могут собирать данные о браузере и так же отправлять их куда угодно.
Казалось бы, это касается только какого-то конкретного сайта, но это тоже не так, если на сайте установлены рекламные трекеры, они тоже будут собирать информацию об отпечатке браузера и передавать их компаниям, которые занимаются рекламой, таким как Google и Facebook, такие трекеры есть практически на каждом сайте и все эти данные идут компаниям с огромными ресурсами, которые в состоянии эффективно анализировать эти данные, а развитие ИИ сделает этот процесс ещё проще.
Вывод простой - нужно иметь такой же отпечаток, как и большинство других пользователей, чтобы максимально расширить круг подозреваемых, либо вообще запретить сайтам снимать отпечатки браузера. Об этом всём я расскажу ниже.
И так, самый простой способ защититься от снятия отпечатков - просто запретить выполнение каких-либо скриптов на сайте, но у такого подхода есть серьезный минус - очень многие сайты будут работать некорректно, проверить это легко, например в Tor браузере можно включить наивысший уровень защиты в настройках и посмотреть, как различные сайты будут отображаться при таких настройках.
Проверить уровень защиты от веб-трекинга и уникальность своего отпечатка можно на вот этих сайтах:

Am I Unique ?
Check if your browser has a unique fingerprint, how identifiable you are on the Internet
К примеру, Tor браузер с уровнем защиты "Safest" покажет отличные результаты, тогда как "Safer" покажет весьма посредственные, но в режиме "Safest" сайты будут работать некорректно.
Более удобным методом является использования других методик сокрытия и блокировки отпечатков, такие как:
- Использовать браузеры, которые нацелены на защиту конфиденциальности пользователя (Tor Browser, LibreWolf, Mullvad Browser и т.д.);
- Использовать разные браузеры для разных задач;
- Использовать виртуальные машины (например QubesOS и Whonix);
- Отключить JavaScript хотя бы частично;
- Использовать как можно меньше расширений для браузера (в идеале только 1 - uBlock Origin для блокировки трекеров).
Но это тоже не является абсолютной защитой, тут возникает следующая проблема - сам браузер, а точнее, его движок. Самым популярным движком для браузеров является Chromium, который тесно связан с Google, хоть и имеет открытый исходный код. Стоит ли рассчитывать на то, что даже в бесплатном и открытом решении коммерческая компания позволит пользователю быть анонимным, если эта компания зарабатывает на продаже рекламы? Лично я очень в этом сомневаюсь. Второй по популярности - движок Gecko от Mozilla, на котором работает браузер Firefox, ситуация с этим движком лучше, чем с Chromium, но Mozilla тоже тесно связана с Google, но это всё же лучше, чем Chromium.
Для примера, сам браузер Firefox отправляет в Mozilla всю информацию о вашей системе и браузере в моменты открытия и закрытия браузера, с браузерами Chrome, Edge и т.д. ситуация ещё хуже.
С LibreWolf ситуация лучше, но он так же отправляет запросы при открытии и закрытии, хотя позиционирует себя, как "конфиденциальный".
У браузеров на базе Gecko хуже безопасность, т.к. у них более слабая изоляция, если сравнивать с Chromium, в Android у Firefox и его форков изоляции вообще нет, т.е. на Android вообще небезопасно использовать браузеры на базе движка Gecko.
Самым оптимальным и сбалансированным браузером является Tor браузер, остальные браузеры требуют серьезных доработок для обеспечения должного уровня конфиденциальности, но даже Tor браузер не всегда может защитить от деанонимизации, поскольку построен на базе движка Gecko и подвержен тем же уязвиомстям, что и этот движек. Например, возникали ситуации, когда уязвимости движка позволяли сайту узнать реальный IP пользователя Tor при помощи JavaScript.
Ситуация довольно печальная, поскольку не все могут соблюдать рекомандации, описанные выше, для тех же виртуальных машин требуется не слабый ПК, а с полностью отключенным JavaScript почти все сайты будут работать некорректно, поскольку JavaScript делает сайты удобнее и красивее, а большинству пользователей красота и удобство намного важнее безопасности. Движки браузеров тоже стали довольно раздутые, как раз для того, чтобы обрабатывать всё более сложные скрипты на сайтах. Более того, есть целые операционные системы, построенные вокруг браузерных движков, например ChromeOS построена вокруг Chomium, хоть эта ОС и является довольно безопасной, но к её конфиденциальности есть серьезные вопросы.
Со временем ситуация не улучшится, а только ухудшится, поскольку у компаний будет ещё больше ресурсов для обработки данных, а пользователи будут хотеть всё больше и больше удобства.
В данный момент единственным решением для защиты является полное отключение JavaScript и WebGL (обработка сложной графики) в браузере, использование виртуальных машин и сайтов, которые работают без JavaScript, но такой сценарий сложно совмещать с адекватной работой в интернете.
Относительно сбалансированным решением является использование Tor браузера в таких ОС, как QubesOS и Whonix, это даже близко не дает такой же уровень защиты, как при первом варианте, но в этом случае хотя бы большая часть сайтов будут нормально работать.