В этом примере вы упомянули, что это был другой сценарий атаки (CSRF).
Что в основном означает CSRF: злоумышленник выполняет действие от имени жертвы.Это действие или исходный запрос этого действия будут поступать с другого сайта.
Для защиты от CSRF вам может потребоваться следовать руководству OWASP.(https://github.com/OWASP/CheatSheetSeries/blob/master/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.md)
Но для вашего примера. Предположим, вы хотите защитить действие под названием Order. На вашем сервере будет сгенерирован токен. Этот токен будет затем обработан или отправлен клиенту. ДействительныйЗапрос будет выглядеть как www.somewebsite.com/Order
с почтовым параметром Order=Something & Token="RANDOM_TOKEN"
Этот токен будет впоследствии проверен сервером перед выполнением этой операции.
Злоумышленник, тем не менее, не будет иметь доступа к этому токену.если он просто отправляет этот запрос с другого сайта / домена, поскольку он был обработан на странице клиента.
Может ли злоумышленник получить доступ к этому токену?
Да, это возможно, если приложение уязвимо для (XSS). Используя JS, злоумышленник может отправить вредоносную ссылку жертве с помощью команды JS, которая будет
- Извлекать визуализированный токен CSRF.
- Выполните Действие с помощью токена.
Хотя в обычном сценарии XSS украдут куки жертвы, но в случаеооки были помечены HTTPOnly
возможна атака CSRF.