Co to jest Cross-Site Request Forgery (CSRF)
Cross-Site Request Forgery (CSRF) to rodzaj ataku na aplikacje internetowe, który polega na zmuszeniu ofiary do wykonania niechcianych działań na stronie, na której jest zalogowany. Atak CSRF wykorzystuje zaufanie, jakie strona ma do użytkownika, a nie użytkownik do strony.
Przykładowo, wyobraź sobie, że jesteś zalogowany na stronie banku, a następnie odwiedzasz inną stronę, która zawiera ukryty formularz próbujący przekazać żądanie o przelanie środków z Twojego konta bankowego na konto atakującego. Jeśli strona banku nie ma odpowiednich zabezpieczeń, może nie zauważyć, że to żądanie nie pochodzi od Ciebie i przeprowadzić transakcję.
Ochrona przed atakami CSRF zwykle polega na wykorzystaniu tokenów anty-CSRF. Gdy użytkownik przegląda stronę, serwer generuje unikalny token CSRF dla jego sesji. Następnie, gdy użytkownik próbuje przeprowadzić jakąś akcję (np. zmienić hasło, wysłać wiadomość, itp.), strona wymaga, aby token CSRF był również przesłany z żądaniem. Ponieważ atakujący nie ma dostępu do tego tokena, nie jest w stanie sfałszować prawidłowego żądania.
Ważne jest zauważenie, że ataki CSRF są skuteczne wtedy, gdy ofiara jest już zalogowana na stronie, która jest celem ataku. Dlatego ważne jest również, aby użytkownicy wylogowywali się z ważnych stron, zwłaszcza na publicznych komputerach lub sieciach.