Fałszerstwo między witrynami (XSRF lub CSRF), znane również pod różnymi nazwami, w tym fałszowaniem żądań między witrynami, przenoszeniem sesji i atakiem jednym kliknięciem, jest trudnym typem exploita witryny, któremu należy zapobiec. Działa poprzez nakłanianie przeglądarki internetowej do wysyłania nieautoryzowanych poleceń do zdalnego serwera. Ataki polegające na fałszerstwie między witrynami działają tylko na użytkowników, którzy zalogowali się do witryn internetowych przy użyciu autentycznych poświadczeń; w rezultacie wylogowanie się ze stron internetowych może być prostym i skutecznym środkiem zapobiegawczym. Twórcy stron internetowych mogą używać losowo generowanych tokenów, aby zapobiegać tego typu atakom, ale powinni unikać sprawdzania strony odsyłającej lub polegania na plikach cookie.
Exploity do fałszerstwa między witrynami często atakują przeglądarki internetowe w ramach tzw. „ataku zdezorientowanego zastępcy”. Uważając, że działa w imieniu użytkownika, przeglądarka jest oszukiwana do wysyłania nieautoryzowanych poleceń do zdalnego serwera. Polecenia te mogą być ukryte w pozornie niewinnych fragmentach kodu znaczników strony internetowej, co oznacza, że przeglądarka próbująca pobrać plik obrazu może w rzeczywistości wysyłać polecenia do banku, sprzedawcy internetowego lub portalu społecznościowego. Niektóre przeglądarki zawierają teraz środki mające na celu zapobieganie atakom typu cross-site fałszerstwa, a zewnętrzni programiści stworzyli rozszerzenia lub wtyczki, które nie mają tych środków. Dobrym pomysłem może być również wyłączenie poczty e-mail w języku HTML (HyperText Markup Language) w preferowanym kliencie, ponieważ programy te są również podatne na ataki typu cross-site fałszerstwa.
Ponieważ ataki typu cross-site forgery opierają się na użytkownikach, którzy legalnie zalogowali się na stronie internetowej. Mając to na uwadze, jednym z najłatwiejszych sposobów zapobiegania takiemu atakowi jest po prostu wylogowanie się z witryn, z których już korzystasz. Wiele witryn zajmujących się danymi wrażliwymi, w tym banki i firmy maklerskie, robi to automatycznie po pewnym okresie braku aktywności. Inne witryny przyjmują odwrotne podejście i pozwalają użytkownikom na ciągłe logowanie przez kilka dni lub tygodni. Chociaż może się to wydawać wygodne, naraża Cię na ataki CSRF. Poszukaj opcji „zapamiętaj mnie na tym komputerze” lub „nie wylogowuj mnie” i wyłącz ją, a po zakończeniu sesji kliknij łącze wylogowania.
Dla twórców stron internetowych eliminacja luk w zabezpieczeniach umożliwiających fałszowanie między witrynami może być szczególnie trudnym zadaniem. Sprawdzanie informacji o stronie odsyłającej i plikach cookie nie zapewnia dużej ochrony, ponieważ exploity CSRF wykorzystują legalne dane uwierzytelniające użytkownika, a informacje te można łatwo sfałszować. Lepszym podejściem byłoby losowe generowanie tokena jednorazowego użytku za każdym razem, gdy użytkownik się loguje, i wymaganie, aby token był dołączany do każdego żądania wysyłanego przez użytkownika. W przypadku ważnych żądań, takich jak zakupy lub przelewy środków, wymaganie od użytkownika ponownego wprowadzenia nazwy użytkownika i hasła może pomóc w zapewnieniu autentyczności żądania.