Можно ли изменить значение AntiForgeryToken в ASP.NET MVC после каждой проверки? - PullRequest
4 голосов
/ 08 февраля 2010

Мы только что провели некоторое тестирование на проникновение в приложении, которое мы создали с помощью ASP.NET MVC, и одна из рекомендаций, которая вернулась, заключалась в том, что значение AntiForgeryToken в форме можно повторно отправить несколько раз, и не истек после однократного использования.

В соответствии с рекомендациями OWASP вокруг шаблона токена синхронизатора:

"Как правило, разработчикам необходимо генерировать этот токен только один раз для текущего сеанса."

Вот как я думаю, ASP.NET MVC AntiForgeryToken работает.

В случае, если нам нужно вступить в битву, можно ли заставить AntiForgeryToken восстанавливать новое значение после каждой проверки?

Ответы [ 2 ]

8 голосов
/ 23 апреля 2010

Токен защиты от подделки - это просто токен защиты от XSRF. В частности, это не одноразовый одноразовый номер. Если вам требуется одноразовый одноразовый номер для вашего приложения, вы не можете использовать для этого маркер защиты от подделки. Для этого нет встроенной функциональности.

0 голосов
/ 08 февраля 2010

Возможно, вы можете использовать AntiForgeryToken, используя конструктор с тремя параметрами .

Всегда рекомендуется использовать соль, но ограничение токена доменом и путем сделает ваш токен более безопасным и уникальным для каждой страницы.

Если у вас нет уязвимостей XSS, эта проблема не будет большой путаницей на вашем веб-сайте:) // Я написал это? Конечно, я плохо прочитал проблему.

Ура!

...