Відповідаємо простими словами на базові питання про кукі: що це за файли і навіщо потрібні, чому багато сайтів просять їх прийняти, що буде якщо їх відключити і коли їх потрібно чистити.
З тієї ж серії: Що таке кеш
Що таке кукі
Кукі (англ. 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. Параметр всередині cookie, який робить їх недоступними для JavaScript. Запобігає їх крадіжці через міжсайтовий скриптинг (XSS).
- Прапор Secure. Параметр, який гарантує, що кукі будуть передаватися лише по HTTPs. Запобігає ситуації, коли сайт працює по HTTPs, але кукі можна передати також по HTTP.
- Прапор SameSite. Параметр, який обмежує надсилання куків при міжсайтових запитах. Запобігає підробці запитів (CSRF) та знижує ризики XSS-атак.
- Регулярне оновлення токенів сесії. Оновлення при кожній авторизації або зміні рівня доступу ускладнить використання токенів у разі крадіжки.
- Мінімізація терміну дії кук. Короткий термін дії куків, наприклад, для сесій із підвищеними привілеями, зменшить ймовірність, що зловмисник встигне їх використати.
- Прив’язка сесій до IP-адреси та пристрою. Не дозволить використовувати вкрадений токен сесії на іншому пристрої або з іншої IP-адреси, але може створити проблеми при зміні IP або пристрою.
- Оптимізація даних, що передаються. По можливості, краще передавати якнайменше особистих даних у куках. Краще зберігати їх на сервері, а в куках використовувати ідентифікатори.
З боку відвідувачів, щоб убезпечити свої дані та гроші, рекомендується не залишати особисті дані на підозрілих сайтах та періодично перевіряти свої пристрої на віруси.
Чому сайти повідомляють про кукі
Цього вимагає GDPR — Європейський регламент захисту персональних даних. Якщо сайт може використовуватися жителями Євросоюзу, він має попереджати відвідувачів, що використовує кукі, і дати їм можливість відмовитися від цього. До речі, подібні закони є не лише у Євросоюзі, а й у США (у Каліфорнії), Канаді, Сінгапурі, Бразилії.
Припустимо, у вас інтернет-магазин в Україні. Якщо в ньому може зробити покупку мешканець ЄС або інших країн із подібним законодавством, ви підпадаєте під його дію, потрібно додати на сайт плашку про використання кукі.
За недотримання закону може прийти штраф або до вашого сайту можуть обмежити доступ на території відповідної країни. Зрозуміло, що це малоймовірно, та й хто вас знайде, ви ж у іншому місті. Але загалом, якщо ваша держава підтримує міжнародні зобов’язання щодо захисту даних, штраф можуть і надіслати.
Тим більше, зробити плашку не так уже й клопітно. Плюс деякі люди навіть примудряються зробити це красиво — розміщують на ній якийсь текст із гумором. Якщо у вас сайт на WordPress, це все взагалі можна зробити за допомогою плагіна.
Якщо так подумати, плашка — це щось на кшталт правила гарного тону. Ви попередили відвідувача, що збиратимете його дані, начебто все відбувається за його згодою. А не так, що збираєте, проте мовчите.
При цьому те ж саме вірно і навпаки. Якщо на сайті немає спливаючого повідомлення про кукі, це ще не означає, що він їх не використовує. Швидше за все, також використовує, просто нікого не попереджає.
Як очистити кукі
Зазвичай кукі зберігаються у сховищі браузера і ви з ними не взаємодієте. Але все одно є кілька причин, коли їх може знадобитися очистити:
- Виправлення помилок. Іноді застарілі або пошкоджені кукі можуть викликати проблеми із завантаженням сторінок, особливо при зміні версії сайту або оновленні браузера.
- Визволення місця. Хоча кожна кука окремо займає трохи місця, згодом їх може накопичитись достатньо, щоб займати навіть декілька гігабайт на пристрої. Це може навіть трохи уповільнити роботу браузера.
- Відновлення авторизації. Так ви зможете завершити сесії на сайтах. Це особливо актуально, якщо ви заходили кудись на чужому комп’ютері або одним браузером користуються одразу декілька людей.
- Скидання налаштувань сайту. Якщо сайт запам’ятовує старі налаштування (наприклад, мову, регіон або інші персональні параметри), очищення cookie дозволить скинути їх та налаштувати заново.
- Вилучення таргетованої реклами. Якщо ви дивилися якісь товари, а потім їх чи щось схоже показують на інших сайтах, а ви цього не хочете, очищення кукіс прибере персональні оголошення. Сама реклама залишиться, просто тимчасово перестане бути персоналізованою.
Щоб очистити кукі, достатньо натиснути комбінацію клавіш Ctrl+Shift+Backspace (Windows) або ⇧+⌘+Backspace (Mac), потім поставити галочку в пункті, де йдеться про кукі, та обрати період, за який потрібно видалити дані. Це спрацює у всіх браузерах, окрім Safari.
У Safari знадобиться зайти в «Параметри – Приватність» та натиснути кнопку «Змінити дані веб-сайту». Після цього відкриється спливаюче вікно, де можна буде вибірково видалити кукі для потрібних сайтів.
Якщо раптом вказана вище комбінація клавіш не працює, ми маємо окрему статтю з покроковими інструкціями з очищення файлів cookie у всіх популярних браузерах:
Як очистити файли cookies у браузері
Чи можна відключити кукі
Це можна зробити в налаштуваннях браузера, але краще не треба, оскільки це може порушити роботу деяких сайтів. Звичайно, якщо їх відключити, відстежити ваші дії стане трохи складніше, але це не буде неможливо. Сайти можуть використовувати інші способи збирання інформації, на які ви або не можете вплинути, або це буде важко зробити. Ось декілька із них:
- Цифрові відбитки. Зібрати дані про ваш пристрій можна, використовуючи JavaScript, HTML-заголовки, локальне сховище браузера і навіть CSS. Потім, на основі цих даних, можна створити ваш унікальний ідентифікатор.
- Параметри URL. Такий спосіб часто використовують у рекламних кампаніях. Параметри додають до основної адреси сторінки після питання (?). Наприклад, в URL https://vashdomen.com/page?utm_source=newsletter параметр utm_source передає інформацію про джерело переходу на сайт.
- Приховані поля форм. При заповненні форм можуть бути невидимі поля, куди сам відвідувач нічого не вводить, сайт сам підставляє потрібну інформацію, щоб передати її на сервер.
- JSON запити. З їхн допомогою можна надсилати на сервер інформацію про те, що відвідувач робить на сайті (навіть у реальному часі). Від проведеного на сторінці часу до кліків за кнопками та рухами миші.
Можна, звичайно, відключити і JavaScript, щоб ще сильніше збільшити анонімність у мережі, але тоді багато сайтів точно зламаються. Ця мова використовується майже на кожному сайті.
Головне про кукі
- Cookies — це невеликі файли, які сайти зберігають у нас на комп’ютері, щоб при наступному відвідуванні згадати, що ми робили на сайті раніше. Це робить сайти зручнішими та допомагає їх власникам розвивати свій бізнес.
- Кукі бувають постійні та тимчасові, первинні та сторонні. Їх також використовують для різних цілей, таких як робота критичних служб сайту, функціонал для поліпшення досвіду користувача, аналітика, реклама.
- У куках може зберігатися будь-яка інформація, навіть конфіденційна. Це безпечно, якщо їх правильно налаштувати. Але на будь-який пожежник краще залишати особисті дані лише на перевірених сайтах.
- На багатьох сайтах вискакує плашка про використання кук, тому що цього вимагає законодавство ЄС та деяких інших країн. Так власники сайтів зізнаються, що збирають особисті дані відвідувачів та обробляють їх для своїх цілей.
- Іноді через кукі можуть виникати проблеми з відображенням сторінок, а також вони можуть накопичитися у великому обсязі. Тому іноді їх потрібно чистити вручну.