Ponieważ artefakt sesji jest po zalogowaniu dowodem tożsamości, jego posiadanie omija nawet silne uwierzytelnianie. Ścieżki kradzieży obejmują cross-site scripting, złośliwe oprogramowanie odczytujące pamięć przeglądarki, przekaźniki adversary-in-the-middle, wyciek tokenów przez logi lub referery, side-jacking na nieszyfrowanych kanałach i fiksację, gdzie atakujący podkłada identyfikator sesji.
Obrona działa na dwóch warstwach: utrudnij kradzież tokenów i uczyń skradzione tokeny szybko bezużytecznymi. Bezpieczne atrybuty ciasteczek, ochrona transportu, wiązanie tokenów z kontekstem klienta tam, gdzie wykonalne, krótkie czasy życia, rotacja przy zmianie uprawnień, wykrywanie anomalii właściwości sesji i działające unieważnianie — wszystko to zawęża okno ataku.
Najważniejsze punkty
Wektory kradzieżyCross-site scripting, złośliwe lub podatne rozszerzenia, złośliwe oprogramowanie punktu końcowego, phishing przez proxy, wyciek przez referery i logi oraz przechwycenie tam, gdzie brak ochrony transportu.
ŁagodzenieCiasteczka Secure, HttpOnly i odpowiednio zawężone; pełne szyfrowanie transportu; wiązanie i rotacja tokenów; krótkie czasy bezczynności i absolutne czasy życia; ponowne uwierzytelnianie dla wrażliwych działań.
Detekcja i reakcjaAlarmuj o anomaliach sesji, takich jak zmiana klienta, lokalizacji lub odcisku; zapewnij działające unieważnianie; unieważniaj sesje przy resecie poświadczeń i przy podejrzeniu kradzieży.
Istotne ograniczeniePoprawnie skonfigurowane ciasteczka nie zatrzymują kradzieży przez złośliwe oprogramowanie lub XSS na punkcie końcowym, a długo żyjące sesje zostawiają szerokie okno nadużyć nawet przy szyfrowanym transporcie. Unieważnienie, które nie dociera do każdej usługi wydającej i konsumującej, nie jest unieważnieniem.