Из того, что я узнал до сих пор, цель токенов - не дать злоумышленнику подделать отправку формы.
Например, если на веб-сайте была форма, в которую вводились элементы, добавленные в вашу корзину, и злоумышленник мог спамить вашу корзину с элементами, которые вам не нужны.
Это имеет смысл, поскольку для формы корзины покупок может быть несколько допустимых входных данных, и все, что нужно сделать злоумышленнику, это узнать товар, который продает веб-сайт.
Я понимаю, как работают токены, и в этом случае они обеспечивают безопасность, поскольку они гарантируют, что пользователь действительно заполнил и нажал кнопку «Отправить» формы для каждого элемента, добавленного в корзину.
Однако добавляют ли токены какую-либо защиту в форму входа пользователя, для чего требуются имя пользователя и пароль?
Поскольку имя пользователя и пароль очень уникальны, злоумышленник должен знать как для того, чтобы подделка логина работала (даже если у вас не было настройки токенов), так и если злоумышленник уже знал это, он мог бы просто войти на сайт сам. Не говоря уже о том, что CSRF-атака, при которой пользователь сам входит в систему, в любом случае не имеет никакой практической цели.
Верно ли мое понимание атак и токенов CSRF? И они бесполезны для пользовательских форм входа в систему, как я подозреваю?