CSRF и Ajax: мне нужна защита? - PullRequest
0 голосов
/ 30 января 2011

Нужно ли использовать токены csrf в моих запросах ajax?

Я думаю, что кто-то, кто обманывает моих пользователей для выполнения вредоносных запросов ajax с другого сайта на мой сайт, потерпит неудачу из-за политики источника, которая обрабатывается браузером, я прав?

Меня не волнуют дублированные запросы при использовании ajax, я спрашиваю только об атаках. Я в опасности, если я не использую csrf в моих запросах ajax?

Ответы [ 3 ]

1 голос
/ 02 декабря 2014

Согласно моему исследованию, мы можем уменьшить уязвимость, используя запрос POST (для запроса, который будет иметь побочный эффект).Но дело в том, что мы можем подделать POST-запрос также с отправкой form , потому что та же политика происхождения не будет применять простой HTML для отправки.Но это относится к запросу, который генерируется с помощью JS.

Так что, если вы используете POST-запрос ajax, и вы в безопасности, если вы используете полезную нагрузку JSON.Причина Полезная нагрузка в кодировке URL (запрос POST) может быть подделана при отправке формы с других сайтов.Если вы используете JSON, так как невозможно отправить полезную нагрузку в виде простого текста (без закодированного urlform) с отправкой html-формы, вы в безопасности.Потому что с помощью ajax POST-запроса, если вы используете полезную нагрузку закодированных данных urlform, это может быть подделано с отправкой формы POST.

0 голосов
/ 23 сентября 2011

Так мы решили проблему с токеном CSRF в Ajax-запросах http://mylifewithjava.blogspot.com/2010/11/implicit-csrf-protection-of-ajax_22.html

0 голосов
/ 30 января 2011

Тот факт, что вы используете Ajax, не означает, что другие тоже должны это делать.Ваш сервер не сможет отличить запрос, сделанный XHR, от запроса, сделанного <form>.(Да, XHR обычно добавляет заголовок, идентифицирующий себя, но это не сложно подделать.)

Так что да, вам нужно учитывать CSRF-атаки.

Редактировать

Djangoимеют POC , поэтому они и Ruby on Rails теперь реализуют защиту CSRF для запросов AJAX.

Еще раз, пожалуйста, проверьте свои факты, прежде чем понижать голос, и объяснитедля чего нужен понижающий голос.

...