Na czym polega CSRF
Jeśli użytkownik jest zalogowany do aplikacji, jego przeglądarka automatycznie dołącza sesję lub ciasteczka do żądań wysyłanych do tej domeny. Atak CSRF wykorzystuje ten mechanizm, nakłaniając przeglądarkę ofiary do wysłania żądania zmieniającego stan systemu, np. zmiany hasła lub usunięcia danych.
Kiedy jest groźny
- przy operacjach wykonywanych w kontekście zalogowanego użytkownika,
- gdy endpoint akceptuje żądania bez dodatkowej weryfikacji,
- gdy sesja opiera się wyłącznie na cookie przeglądarki.
Jak się bronić
- stosować tokeny CSRF dla operacji zmiany stanu,
- weryfikować metodę żądania (np. tylko POST dla akcji modyfikujących),
- sprawdzać nagłówek Origin lub Referer,
- stosować politykę SameSite dla cookies.
Kiedy CSRF nie jest potrzebny
W publicznych, bezstanowych endpointach bez kontekstu zalogowanego użytkownika ryzyko CSRF jest znikome. Mechanizm ten ma największe znaczenie w panelach administracyjnych i aplikacjach wymagających sesji.