Подтвердить что ты не робот

Какова цель использования идентификатора сеанса, когда защита csrf уже реализована?

Я знаю, что для защиты веб-приложений от Cross Site Request Forgery единственным защищенным методом является реализация токена CSRF. Мой вопрос: нельзя ли использовать токен CSRF для отслеживания сеансов? Почему мы должны реализовывать другой идентификатор сеанса для отслеживания сеансов?

4b9b3361

Ответ 1

токен CSRF - это значение, которое должно генерироваться случайным образом и ассоциироваться с сеансом (пользователем) в КАЖДОМ GET, который показывает форму для предотвращения ложного POST. Этот ложный POST поступает из пользовательского браузера, поэтому для аутентификации POST вам потребуется сеанс с токеном, хранящимся в памяти сервера, для сравнения, если токен, который поставляется с POST, является тем же самым, что и в сеансе пользователя.

Кроме того, веб-приложение shuold должно идентифицировать пользователей в токенах GET и CSRF только в POST.

Сессия должна быть статичной для идентификации пользователя во времени и нескольких запросов из-за отключенного характера HTTP. CSRF изменяется в каждом GET, он не может использоваться как сеанс.

С другой стороны. Какой сервер должен делать с вашей идеей? Создайте новый сеанс каждый GET и скопируйте все предыдущие данные сеанса на новый сеанс? Это безумие.

Взгляните на этот pdf в Университет штата Монтана. Это помогает мне понять CSRF.