Как мы можем справиться с ошибочным положительным результатом Spring CSRF с приложением с поддержкой единого входа? - PullRequest
0 голосов
/ 15 октября 2019

У меня есть приложение с включенным SSO (Single-on) с защитой CSRF.

  1. Войдите в приложение, которое создает новый сеанс (S1) и новый токен CSRF (C1)
  2. Откройте другую вкладку в том же браузере и снова войдите в приложение. Он сохранит тот же сеанс и токен CSRF
  3. Теперь выйдите из системы и войдите в приложение на второй вкладке. Теперь он создаст новый сеанс (S2) и новый токен (C2)
  4. Поскольку SSO включен, на первой вкладке все еще есть последний сеанс (S2), но в запросе имеется старый токен (C1).
  5. Когда вы выполняете любой запрос POST на первой вкладке, в результате ошибка доступа к CSRF приводит к несоответствию в токенах csrf. В запросе есть старый токен (C1), а в сеансе - новый токен (C2).

Это не настоящая атака CSRF. Итак, как мы можем справиться с этой ошибочно-положительной проблемой csrf?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...