2013-02-20 2 views
1

Как AntiForgeryToken становится недействительным? Я установил этот токен, чтобы предотвратить атаки CSRF на мою страницу входа в систему и проверить ее с помощью скрипача. Когда я вызываю метод GET, токен генерирует как скрытое поле __RequestVerificationToken. Когда я отправляю данные входа в систему, должен ли этот токен быть изменен при следующем вызове GET? Я поймаю с помощью скрипача это значение с данными о постах и ​​повторным выпуском/повтором, и это работает. Это хорошее поведение, или этот повтор не должен произойти, потому что значение токена не должно быть действительным после того, как я покину эту форму.AntiForgeryToken validation Asp.Net MVC 3

Заранее благодарен.

ответ

2

Токен привязан к сеансовому файлу; когда сеанс уходит, и cookie исчезает, токен будет отображаться недействительным. Причина повторной работы в Fiddler заключается в том, что Fiddler захватывает (и воспроизводит) и cookie сеанса, и токен формы.

Вы можете имитировать окончание сеанса, удалив заголовок запроса Cookie изнутри Fiddler перед повторным воспроизведением. Затем сервер должен отклонить поле __RequestVerificationToken формы.

+0

Jup i see Я удалил значение cookie/токен ** __ RequestVerificationToken_Lw __ **, но как легко украсть этот файл cookie, который содержит ** __ RequestVerificationToken_Lw ** токен? И когда этот cookie сеанса истекает на сервере –