идентификация

Идентификация пользователя в сети

Сегодня существует много способов идентифицировать и устроить слежку за пользователем в сети. Изначально слежка за пользователем была придумана с целью отличить реального пользователя от бота. Затем этим способом воспользовались рекламные компании. Рассмотрим наиболее распространенные способы.

Cookie, куки

cookies

Куки — это самый старый и популярный метод идентификации пользователя. Хранит короткие отрезки текстовых данных. На стороне пользователя устанавливается идентификатор (cookie), который запрашивается при последующих обращениях к сайту. Для блокировки куки можно установить соответствующие плагины в браузер, либо использовать его в режиме «инкогнито».

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

Local Shared Objects

Этот механизм используется для хранения информации на стороне пользователя в adobe flash. В отличие от cookie может хранить большие объемы информации.

При настройке браузер ищите, как отключить именно флэш-куки.

Хотите анонимности в сети — не устанавливайте Adobe flash плеер.

Хранилище Silverlight

silverlight

Платформа Silverlight похожа на Adobe flash. Здесь используется Isolated Storage для хранения всей информации о пользователе.

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

HTML5 и хранение данных

html5

Для хранения данных HTML5 использует:

  • localStorage.
  • File Api.
  • Indexed DB.

Объем хранилища может быть огромным.

Однако вручную удалить все данные пользователя из этих хранилищ не совсем понятно как.

Кешированные объекты

Для быстрой загрузки страниц повсеместно используется кеширование. В локальный кеш записываются все объекты с посещаемого сайта. Здесь же прописывается время жизни кеша (заголовок Expires). При повторном обращении к сайту загружается локальная копия.

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

ETag и Last-Modified

Для правильной работы с закешированным содержимым страниц сервер должен информировать браузер, что документ обновился. Для этой цели используют ETag и Last-Modified.

ETag

Сначала с кешированной страницей сервер передает version tag. В будущем будет проверяться эта версия на правильность. Если версия тега совпадает с загружаемой страницей — грузится локальная копия, если версия изменилась — грузится новая страница с сервера.

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

Last-Modified

Last-Modified сообщает дату последнего изменения документа.

Чтобы избавиться от ETag и Last-Modified, нужно чистить кеш. Чистка куки и истории не поможет.

HTML5 AppCache

Application Cache позволяет сохранять какую-то часть сайта, чтобы она была доступна оффлайн.

Чтобы удалить данные из этого хранилища на одних браузерах нужно удалить весь кеш, на других — очистить куки и историю.

SDCH-словари

Такие словари используют сжатые данные посещенных страниц. Большинство сайтов сегодня работают на CMS, у них несколько повторяющихся блоков для всех страниц (футер, сайдбар, шапка). Чтобы каждый раз не запрашивать эти одинаковые блоки, сервер подготавливает для клиента SDCH-словарь (сжатый архив). Далее при последующих обращениях к страницам сайта сервер ссылается на данные из этого словаря.

Такие словари можно использовать и для хранения уникальных идентификаторов пользователя.

«Отпечатки» браузера

Никаких уникальных идентификаторов на стороне клиента не устанавливается. Сервер берет набор данных из среды браузера и объединяет их:

  • User-Agent — версия браузера, операционная система, установленные расширения.
  • Время на компьютере клиента.
  • Информация об установленном железе на компьютере. Это можно узнать через бенчмарки и тесты, реализованные на javaScript.
  • Разрешение монитора, размер окна браузера.
  • Установленные шрифты в системе + установленное ПО на компьютере (некоторые программы корректируют отображение веб-страниц, поэтому можно легко их определить).

«Сетевые» отпечатки

отпечатки пальцев

Идентифицировать пользователя можно и по структуре локальной сети, настройкам сетевых протоколов. Сюда включены: ip-адрес, MAC-адрес, номера портов для исходящих и входящих TCP/IP-соединений, локальный IP (если пользователь скрыт за прокси).

Поведенческий анализ и привычки

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




Добавить комментарий

Ваш e-mail не будет опубликован.