Новый формат
Cookies в браузере: зачем нужны, как работают и что с безопасностью
Cookie — небольшие данные, которые сайт сохраняет в браузере, чтобы узнать вас при следующих запросах: сессия входа, язык, корзина, метки аналитики. Это не «вирус», но и не безобидная пыль: через cookie строят профили и держат авторизацию.
Ниже — назначение, типы, следящие сценарии, безопасность и что учесть владельцу сайта (согласие, HTTPS, срок жизни). Важно: в cookie обычно не кладут пароль открытым текстом — только токены/идентификаторы.
Назначение cookie
Сервер (или скрипт) отдаёт заголовок `Set-Cookie`, браузер сохраняет пару имя=значение и при следующих запросах на домен отправляет её обратно. Так сайт «узнаёт» сессию без повторного ввода логина на каждой странице.
Типовые задачи: авторизация, корзина, язык/валюта, «уже видели баннер», идентификаторы Метрики/GA (с согласия, где требуется).
Коротко:
- это данные в браузере, не программа;
- привязаны к домену/пути;
- имеют срок и флаги безопасности;
- не заменяют серверную сессию целиком.
Следящие и маркетинговые cookie
Рекламные сети и виджеты ставят идентификаторы, чтобы связывать визиты между сайтами (пока third-party ещё живы) или через иные техники. Для пользователя это персонализация и ретаргет; для бизнеса — атрибуция, но и обязанность прозрачности.
First-party аналитика на своём домене обычно предсказуее в эпоху ограничений сторонних cookie.
Владельцу сайта:
- инвентаризация всех тегов;
- политика cookie понятным языком;
- не грузить маркетинг до согласия, если так требует режим;
- минимум сторонних скриптов.
Безопасность и флаги
HttpOnly — JS не читает cookie (защита от кражи сессии через XSS). Secure — только по HTTPS. SameSite — ограничивает отправку с чужих сайтов (CSRF). Короткий срок жизни сессии снижает ущерб при утечке.
Пользователю: не сохранять вход на чужих ПК, обновлять браузер, осторожнее с расширениями, не вводить пароли на HTTP-страницах.
Риски:
- XSS → кража session cookie;
- MITM на HTTP без Secure;
- фишинг + повторное использование сессии;
- лишние third-party с широким доступом.
Конфиденциальность и закон
Cookie могут быть связаны с персональными данными, если идентифицируют пользователя. Нужны политика, основание обработки и интерфейс управления там, где это требует право и здравый смысл.
Не копируйте чужой баннер «Accept all» без реальной блокировки необязательных меток — это только раздражает и не закрывает риск.
Минимум для сайта:
- страница политики cookie/ПДн;
- разделение необходимых и опциональных;
- возможность отозвать согласие;
- журнал, какие теги реально ставятся.
Как управлять в браузере
В настройках: просмотр, удаление по сайтам, блокировка сторонних. В DevTools видно имя, домен, срок, размер. Очистка cookie разлогинит кабинеты и сбросит корзины — это нормально.
Расширения-блокировщики режут трекеры, но могут ломать оплату и чаты — тестируйте критичные сценарии.
Пользовательский чеклист:
- смотреть cookie подозрительных сайтов;
- выходить из кабинетов на чужих устройствах;
- не отключать всё подряд на банках/госуслугах без нужды;
- обновлять ОС и браузер.
Практика для вебмастера
Зафиксируйте список cookie (имя, цель, срок, кто ставит). Сессионные — HttpOnly+Secure+SameSite по задаче. Не раздувайте срок «на 10 лет» без причины.
После внедрения CMP/баннера проверьте, что аналитика и реклама реально ждут согласия. Сверьте Метрику/GA на потерю данных.
Релиз:
- таблица cookie в политике;
- флаги на auth-cookie;
- тест логина/корзины;
- тест «отклонить опциональные»;
- мониторинг ошибок тегов.
Частые вопросы
Cookie хранят мой пароль?
Нормальные сайты — нет. Хранят идентификатор сессии или токен. Если сервис пишет пароль в cookie — это плохая практика и риск.
Чем session и persistent?
Сессионные живут до закрытия браузера (условно). Постоянные — до даты Expires/Max-Age.
Что такое third-party cookie?
Ставятся доменом, отличным от сайта, который вы открыли (часто реклама/виджеты). Браузеры их всё сильнее ограничивают.
Зачем cookies сайту?
Логин, корзина, A/B, аналитика, персонализация, антифрод. Без них многие сервисы «не помнят» пользователя.
Опасны ли cookies?
Риск — кража сессии (XSS), подмена (без Secure/HttpOnly), трекинг. Лечится гигиеной разработки и поведением пользователя.
Нужен ли баннер согласия?
Зависит от юрисдикции и состава меток. В РФ учитывайте 152-ФЗ и политику; в ЕС — GDPR/ePrivacy. Юрист + минимально необходимые cookie.
Как посмотреть cookies?
DevTools → Application/Storage → Cookies. Или настройки браузера: список сайтов и очистка.
Блокировка cookies ломает сайт?
Часто да для корзины и кабинета. Для визитки — реже. Дайте fallback и честное сообщение.
Cookies и согласие запутывают?
Разложим типы cookie, флаги безопасности и баннер без «фейкового Accept».
Обсудить задачу