Ciasteczka (cookies) przechowują m.in. identyfikator sesji, więc ich przejęcie oznacza przejęcie konta. Chronią je flagi ustawiane przy tworzeniu ciasteczka, które ograniczają dostęp i sposób wysyłania.
Ważne flagi
| Flaga | Działanie |
|---|---|
HttpOnly |
skrypty JavaScript nie mają dostępu do ciasteczka |
Secure |
wysyłane tylko przez HTTPS |
SameSite |
ogranicza wysyłanie w żądaniach z innych stron |
Set-Cookie: sid=abc123; Secure; HttpOnly; SameSite=Lax; Path=/
Jak sprawdzić ciasteczka swojej strony?
Otwórz narzędzia deweloperskie, zakładkę Application (Aplikacja), a następnie Cookies. Sprawdź, czy ciasteczka sesyjne mają ustawione Secure, HttpOnly i SameSite, oraz czy nie przechowują w sobie danych osobowych w jawnej postaci.
Czas życia i zakres ciasteczka
Ciasteczka sesyjne wygasają po zamknięciu przeglądarki, a trwałe po ustawionej dacie. Dla sesji logowania ustaw możliwie krótki czas, a atrybut Path i Domain ogranicz do potrzebnego zakresu, bo ciasteczko ustawione dla całej domeny trafia także do podstron i subdomen, które mogą być mniej zabezpieczone. Prefiks __Host- wymusza Secure, brak atrybutu Domain i ścieżkę główną.
Czy ciasteczka analityczne wymagają zgody?
Tak, ciasteczka niebędące niezbędnymi do działania usługi wymagają zgody użytkownika. To zagadnienie prawne, niezwiązane bezpośrednio z flagami bezpieczeństwa.