Отвечаем простыми словами на базовые вопросы про куки: что это за файлы и зачем нужны, почему многие сайты просят их принять, что будет если их отключить и когда их нужно чистить.
Из этой же серии: Что такое кэш
Что такое куки
Куки (англ. cookie — «печенька») — это небольшие текстовые файлы, которые сайты сохраняют у нас в браузерах. Информация в этих файлах помогает сайтам вспомнить посетителей при повторном посещении: куда они кликали, какие настройки меняли.
До конца не понятно, почему эту технологию назвали именно так. Известно только, что это название произошло от похожего понятия в Unix программировании — «magic cookie» (волшебная печенька). Там это небольшой пакет данных, который одна программа передаёт другой для идентификации.
С точки зрения пользователя в этом пакете данных передаётся набор случайных символов. Но для программы это что-то в роде идентификационного номера, по которому она понимает, кто именно к ней обратился и что делать дальше.
Мы считаем, что программисты просто решили прикольнуться с таким названием. Типа пусть программу нужно будет покормить печенькой, чтобы она вас узнала. Ну или может это отсылка к печенью с предсказаниями, которое разламываешь, а внутри бумажка с загадочным посланием.
Зачем нужны куки
Владельцам сайтов куки нужны в основном для продвижения и рекламы. С их помощью можно фиксировать действия посетителей на сайте, анализировать эти данные и делать выводы, как лучше развивать сайт.
Например, куки Google Аналитики позволяют увидеть, какие страницы посещают чаще, какие из них генерируют больше продаж, сколько времени люди проводят на каждой из них, на какие кнопки или ссылки кликают, из какого источника переходят на сайт.
Также куки дают возможность показывать людям рекламу на основе их прошлых запросов в поиске и товаров, которые они смотрели на разных сайтах. Это делает рекламу более релевантной и помогает владельцам сайтов улучшить продажи.
Ещё при помощи кук работают всякие опросы и меню для настройки сервисов, которые состоят из нескольких шагов. Без них браузер не смог бы запомнить, что вы ввели или какие варианты ответа выбрали на каждом из шагов.
Посетителям сайтов куки нужны для удобства. С их помощью сайты запоминают, какой язык или город вы выбрали в прошлый раз, входили в аккаунт или нет, что сохранили в избранное или добавили в корзину, какие всплывающие окна закрыли.
Если отклонить куки при первом посещении сайта или удалить их, сайт не будет ничего запоминать и в следующий раз откроет настройки по умолчанию. Он даже может заново показать плашку про использование кук.
Виды куки
Куки можно классифицировать по таким критериям как срок действия, источник и назначение. Это поможет лучше понять сценарии их использования.
По сроку действия
Постоянные. Такие cookies сохраняются на компьютер для повторного использования при следующих посещениях сайта. Они могут храниться бессрочно (пока не удалят) или иметь срок годности. В них может храниться информация о ваших предыдущих действиях на сайте. Например, выбранный язык интерфейса или тема оформления, тот факт, что вы поставили галочку «Запомнить меня» при входе в аккаунт или галочку «Больше не показывать» при закрытии какого-то всплывающего окна.
Сессионные. Такие cookies создаются только на время одной сессии и удаляются, когда человек закрывает браузер. Их используют для хранения временной информации, такой как ответы при прохождении опросов, фильтры и сортировка товаров. Иногда авторизацию на сайте реализуют при помощи сессионных кук. На таких сайтах вас может разлогинить из аккаунта спустя какое-то время без активности.
По источнику
Первичные. Это cookies, которые сохраняются на ваш компьютер от имени домена сайта, который вы посещаете. Их настраивает и внедряет администратор конкретного сайта, он же отвечает за то, чтобы они работали правильно и были безопасными.
Сторонние. Это cookies других сервисов, которые администраторы сайтов подключают к своим сайтам. Они сохраняются на компьютер от имени других доменов. Например, вы зашли на сайт vashdomen.com, на котором подключена Google Аналитика. Этот сайт передаст вам куки аналитики, но они сохранятся под доменом google.com.
По назначению
Необходимые. Эти cookies нужны для корректной работы сайта. Если от них отказаться, сайт может частично перестать работать или вообще не открыться. Для примера такие куки обычно отвечают за авторизацию, поддержание безопасности, работу корзины, обработку платежей, завершение заказов.
Дополнительные. Эти cookies не критические для работы сайта, но могут сделать опыт его использования лучше. Например, в них могут храниться параметры, которые вы вручную изменили при прошлых посещениях (тема, язык или регион), автозаполнение форм, сохранение фильтров и сортировки.
Аналитические. Эти cookies собирают информацию о взаимодействии посетителей с сайтом: какие страницы они посещали, сколько времени там провели, куда переходили, встречались ли в процессе ошибки и так далее. Такие куки устанавливают сервисы по типу Google Аналитики.
Рекламные. Эти cookies используются для отслеживания активности пользователей на разных сайтах, чтобы потом показывать им персонализированную рекламу. Обычно это тоже куки от Google, поскольку многие используют именно их сервисы для показа контекстной рекламы.
Какая информация может передаваться в куках
Практически любая. Зависит от того, что хочет собирать владелец сайта. Поэтому на каждом сайте по-разному. Вот несколько примеров:
- Настройки и предпочтения. Язык интерфейса, тема сайта, валюта, регион, флаги «Больше не показывать» на всплывающих окнах, настройки уведомлений.
- Данные авторизации. Идентификатор сессии, флаг «Запомнить меня» при входе в аккаунт, флаг «Доверять этому устройству» для двухфакторной аутентификации.
- Личные данные. Имя пользователя, номер телефона, адрес доставки, способ оплаты (без полной информации карты), стояние заполнения формы.
- Данные про действия с товарами. Ранее просмотренные товары, сохранённые поисковые запросы, товары в корзине, товары в избранном, фильтры и сортировка.
- Информация для аналитики. Идентификатор пользователя, источник перехода на сайт, посещённые страницы, время пребывания на странице, переходы и клики.
- Данные об устройстве. Браузер и его версия, разрешение экрана, язык системы, модель устройства, операционная система, временная зона.
- Данные для поддержания безопасности. Параметры для защиты от хакерских атак на куки (HttpOnly, Secure, SameSite).
Использовать куки — не опасно?
В целом, куки — безопасная технология, но всё зависит от того, как их настроили. Если сделать это неправильно, информацией в куках могут завладеть злоумышленники. Вот основные риски для безопасности, связанные с куками:
- Взлом сессии. Если на сайте используется соединение HTTP, злоумышленники могут перехватить трафик и прочитать содержимое в куках, потому что в этой версии протокола нет шифрования (данные передаются в открытом виде).
- Межсайтовый скриптинг (XSS). Если сайт уязвим для таких атак, злоумышленник может внедрить в него вредоносный код, который будет воровать куки.
- Подделка запросов (CSRF). Это когда злоумышленник отправляет поддельный запрос от имени пользователя на сайте, где он уже авторизован.
- Вредоносное ПО на устройстве. Есть программы и вирусы, которые могут украсть куки в хранилище браузера или подменить их на фальшивые.
Всё это может привести к печальным последствиям. Например, если куки содержат токен сессии или другие данные, которые позволяют обойти аутентификацию, злоумышленник получит доступ к чужому аккаунту. Чтобы таких ситуаций не происходило, рекомендуется использовать распространённые практики безопасности, такие как:
- Установка SSL-сертификата. Переведёт сайт на HTTPS (защищённая версия HTTP), который шифрует трафик между посетителем и сайтом. Это защитит данные от прочтения или изменения, даже если трафик будет перехвачен.
- Флаг HttpOnly. Параметр внутри куки, который делает их недоступными для JavaScript. Предотвращает их кражу через межсайтовый скриптинг (XSS).
- Флаг Secure. Параметр, который гарантирует, что куки будут передаваться только по HTTPs. Предотвращает ситуации, когда сайт работает по HTTPs, но куки можно передать также по HTTP.
- Флаг SameSite. Параметр, который ограничивает отправку куков при межсайтовых запросах. Предотвращает подделку запросов (CSRF) и снижает риски XSS-атак.
- Регулярное обновление токенов сессии. Обновление при каждой авторизации или изменении уровня доступа затруднит использование токенов в случае кражи.
- Минимизация срока действия кук. Короткий срок действия куков, например, для сессий с повышенными привилегиями, уменьшит вероятность, что злоумышленник успеет их использовать.
- Привязка сессий к IP-адресу и устройству. Не даст использовать украденный токен сессии на другом устройстве или с другого IP-адреса, но может создать проблемы при смене IP или устройства.
- Оптимизация передаваемых данных. По возможности, лучше передавать как можно меньше личных данных в куках. Лучше хранить их на сервере, а в куках использовать идентификаторы.
Со стороны посетителей, чтобы обезопасить свои данные и деньги, рекомендуется не оставлять личные данные на подозрительных сайтах и периодически проверять свои устройства на вирусы.
Почему сайты сообщают про куки
Этого требует GDPR — Европейский регламент по защите персональных данных. Если сайт может использоваться жителями Евросоюза, он должен предупреждать посетителей, что использует куки, и дать им возможность от этого отказаться. Кстати, подобные законы есть не только в Евросоюзе, но и в США (в Калифорнии), Канаде, Сингапуре, Бразилии.
Допустим, у вас интернет-магазин в Украине. Если в нём может сделать покупку житель ЕС или других стран с подобным законодательством, вы подпадаете под его действие, нужно добавить на сайт плашку про использование куки.
За несоблюдение закона может прийти штраф или к сайту могут ограничить доступ на территории соответствующей страны. Понятно, что это маловероятно, да и кто вас найдёт, вы же в другом городе. Но в целом, если ваше государство поддерживает международные обязательства в вопросах защиты данных, штраф могут и прислать.
Тем более, сделать плашку не так уж и хлопотно. Плюс некоторые люди даже умудряются сделать это красиво — размещают на ней какой-то текст с юмором. Если у вас сайт на WordPress, это всё можно сделать при помощи плагина.
Если так подумать, плашка — это что-то вроде правила хорошего тона. Вы предупредили посетителя, что будете собирать его данные, всё вроде как происходит с его согласия. А не так, что собираете, но молчите.
При этом то же верно и наоборот. Если на сайте нет всплывает уведомления про куки, это ещё не значит, что он их не использует. Скорее всего, тоже использует, просто никого не предупреждает.
Как очистить куки
Обычно куки хранятся в хранилище браузера и вы никак с ними не взаимодействуете. Но всё равно есть несколько причин, когда их может понадобиться очистить:
- Исправление ошибок. Иногда устаревшие или повреждённые куки могут вызвать проблемы с загрузкой страниц, особенно при изменении версии сайта или обновлении браузера.
- Освобождение места. Хотя каждая кука по отдельности занимает немного места, со временем их может накопиться достаточно, чтобы занимать даже несколько гигабайт на устройстве. Это может даже немного замедлить работу браузера.
- Обновление авторизации. Так вы сможете завершить сессии на сайтах. Это особенно актуально, если вы заходили куда-то на чужом компьютере или одним браузером пользуется сразу несколько человек.
- Сброс настроек сайта. Если сайт запоминает старые настройки (например, язык, регион или другие персонализированные параметры), очистка куки позволит сбросить их и настроить заново.
- Удаление таргетированной рекламы. Если вы смотрели какие-то товары, а потом их или что-то похожее показывают на других сайтах, а вы этого не хотите, очистка кукис уберёт персонализированные объявления. Сама реклама останется, просто временно перестанет быть персонализированной.
Чтобы очистить куки достаточно нажать комбинацию клавиш Ctrl+Shift+Backspace (Windows) или ⇧+⌘+Backspace (Mac), затем поставить галочку в пункте, где речь идёт про куки, и выбрать период, за который нужно удалить данные. Это сработает во всех браузерах, кроме Safari.
В Safari понадобится зайти в «Настройки – Конфиденциальность» и нажать кнопку «Управлять данными веб-сайтов». После этого откроется всплывающее окно, где можно выборочно удалить куки для нужных сайтов.
Если вдруг указанная выше комбинация клавиш не работает, у нас есть отдельная статья с пошаговыми инструкциями по очистке файлов куки во всех популярных браузерах:
Как очистить файлы cookies в браузере
Можно ли отключить куки
Это можно сделать в настройках браузера, но лучше не надо, поскольку это может нарушить работу некоторых сайтов. Конечно, если отключите, отследить ваши действия станет немного сложнее, но это не будет невозможно. Сайты могут использовать другие способов сбора информации, на которые вы либо не можете повлиять, либо это будет трудно сделать. Вот несколько из них:
- Цифровые отпечатки. Собрать данные про ваше устройство можно, используя JavaScript, HTML-заголовки, локальное хранилище браузера и даже CSS. Потом на основе этих данных можно создать уникальный идентификатор.
- Параметры в URL. Такой способ часто используют в маркетинговых кампаниях. Параметры добавляют к основному адресу страницы после знака вопроса (?). Например, в URL https://vashdomen.com/page?utm_source=newsletter параметр utm_source передаёт информацию об источнике перехода на сайт.
- Скрытые поля форм. При заполнении форм в них могут быть невидимые поля, куда сам посетитель ничего не вводит, сайт сам подставляет нужную информацию, чтобы передать её на сервер.
- JSON-запросы. С их помощью можно отправлять на сервер информацию о том, что посетитель делает на сайте (даже в реальном времени). От проведённого на странице времени до кликов по кнопкам и движений мыши.
Можно, конечно, отключить и JavaScript, чтобы ещё сильнее увеличить анонимность в сети, но тогда многие сайт точно сломаются. Этот язык используется почти на каждом сайте.
Главное про куки
- Куки — это небольшие файлы, которые сайты сохраняют у нас на компьютере, чтобы при следующем посещении вспомнить, что мы делали на сайте раньше. Это делает сайты удобнее и помогает их владельцам развивать свой бизнес.
- Куки бывают постоянные и временные, первичные и сторонние. Их также используют для разных целей, таких как работа критических служб сайта, функционал для улучшения пользовательского опыта, аналитика, реклама.
- В куках может храниться практически любая информация, даже конфиденциальная. Это безопасно, если их правильно настроить. Но на всякий пожарный лучше оставлять личные данные только на проверенных сайтах.
- На многих сайтах выскакивает плашка про использование кук, потому что этого требует законодательство ЕС и некоторых других стран. Так владельцы сайтов признаются, что собирают личные данные посетителей и обрабатывают их для своих целей.
- Иногда из-за куки могут возникать проблемы с отображением страниц, а также они могут скопиться в большом объёме. Поэтому иногда их нужно чистить вручную.