Мой вопрос о токенах csrf, цель этих токенов и можем ли мы их подделать ..
Идентификатор проблемы
Давайте предположим, что у нас есть bank.com, который должен сделать этот URLтранзакция на счет bank.com/make -transactions? amount = 100USD & to = [accountId] эта ссылка будет доступна только аутентифицированным пользователям (зависит от SessionID в файлах cookie) со страницы, на которой есть форма транзакции на сайте bank.com
Проблема возникает, когда вредоносный сайт размещает поддельную форму со скрытыми полями, которые отправляют свои данные на указанный выше URL.Причинение SessionID в cookie-файлах (связанных с bank.com), которые будут отправлены этой отправкой, и транзакция будет выполнена
Решение CSRF
Это решение зависит от генерирующего токена (токена CSRF), которыйотправить со страницы bank.com о совершении транзакции (в скрытом поле) и сохранить в текущем сеансе пользователя
А после того, как пользователь отправит данные со страницы транзакции, этот токен (который будет отправлен вместе с данными) будетпроверяется по значению токена CSRF в пользовательском сеансе, и если они равны, то транзакция действительна, и если нет, это означает, что что-то не так, и транзакция должна быть отклонена
И этим она предотвращает злонамеренное действие.com от совершения транзакций путем отправки фальшивых запросов. Потому что у него нет возможности получить этот CSRF-токен и внедрить его вместе с запросом.
Мои вопросы
1 - что если вредоносный сайт делаетajax-запрос от браузера пользователя на bank.com (этот запрос отправит связанные с bank.com файлы cookie.Я прав?) И он извлечет токен CSRF из ответа.и введите этот токен в его поддельном виде.Будет ли это фальсифицировать bank.com с этим захваченным токеном?
2 - можно ли сгенерировать токен CSRF из конечной точки ajax в одностраничном приложении (скажем, перед тем, как выполнить действие. Спросите у сервера токен CSRF и отправьте этознак действия) или нет (если я могу, что я должен знать)?
Спасибо за ваше время с наилучшими пожеланиями