Backbone.js obsługuje wysyłanie danych do serwera pod maską, więc nie ma łatwego sposobu na wstawienie tokena CSRF w polu danych. Jak mogę chronić moją witrynę przed CSRF w tej sytuacji?Jak chronić się przed CSRF podczas używania Backbone.js do publikowania danych?
W tej odpowiedzi na pytanie: https://stackoverflow.com/a/10386412/954376, sugerowana jest weryfikacja nagłówka x-Requested-By jako żądania XMLHTTPRequest. Czy to wystarczy, aby zablokować wszystkie próby CSRF?
W dokumentach Django sugeruje się dodanie tokenu CSRF do innego niestandardowego nagłówka w każdym żądaniu AJAX: https://docs.djangoproject.com/en/1.5/ref/contrib/csrf/#ajax. Czy to konieczne?
Rozumiem, że atak wykorzystuje ukrytą formę, jestem bezpieczny, zapewniając, że żądanie pochodzi z XMLHTTPRequest. Ale czy są jakieś sztuczki ataku CSRF, które mogą wykuć nagłówek?
„Jestem bezpieczny tylko o zapewnienie żądanie pochodzi z XMLHTTPRequest "- Nie można tego zagwarantować. – Quentin