Допустим, мы используем CSRF-токен в наших формах, но бывает, что на нашем сайте есть незамеченная XSS-дыра.
Насколько я понимаю, защита токена CSRF в этом случае полностью недействительна, потому что злоумышленник может получить его с помощью XMLHttpRequest через XSS.
В таком случае, есть ли способ зачаровать защиту CSRF таким образом, чтобы она выдержала атаку, или наш сайт должен сначала иметь безопасную защиту от XSS, прежде чем вообще прибегать к CSRF?
Установка нового токена при каждом запросе страницы вместо токена при входе поможет решить эту проблему? Это поднимает проблему одновременного открытия большего количества форм, и мне это не нравится.