Size: a a a

2020 May 09

A

Alex in Python Flask
Подробней рекомендую прочитать здесь
https://cheatsheetseries.owasp.org/cheatsheets/Cross-Site_Request_Forgery_Prevention_Cheat_Sheet.html
источник

V

Vlad in Python Flask
Спасибо, ща чаек надо заварить.
источник

V

Vlad in Python Flask
Alex
Если через заголовок, то дополнительная CSRF защита не нужна.
Видимо я какой-то момент упускаю, но не пойму какой
источник

A

Alex in Python Flask
Ну и непосредственно к CSRF это не относится, стоит озаботиться безопасным хранением токена.
источник

A

Alex in Python Flask
Vlad
Видимо я какой-то момент упускаю, но не пойму какой
CSRF — это атака, при которой злоумышленник заставляет браузер пользователя отправить нежелательный запрос на сайт, где этот пользователь аутентифицирован. Эта атака эксплуатирует свойство браузера отправлять запросы с соответствующими хранящимися в контексте этого ресурса куками.
Условием проведения данной атаки является аутентификация пользователя при помощи куки.
источник

A

Alex in Python Flask
Либо же какой-либо другой механизм аутентификации подразумевающий возможность браузером отправить аутентифицированный запрос, например аутентификация по IP адресу, Windows Domain и т.п.
источник

A

Alex in Python Flask
Подробнее читать здесь
https://owasp.org/www-community/attacks/csrf
источник

A

Alex in Python Flask
Vlad
При авторизации закладывается в заголовок там и таскается
аутентификации
источник

V

Vlad in Python Flask
Alex
аутентификации
да, да, да)
источник

V

Vlad in Python Flask
Спасибо, повешу в рамку, гугл к сожалению увёл не в ту сторону.
источник

T

Tishka17 in Python Flask
А как вообще нормально бороться с csrf? Одноразовые токены или просто по времени? Как это работает в wtforms?
источник

A

Alex in Python Flask
Tishka17
А как вообще нормально бороться с csrf? Одноразовые токены или просто по времени? Как это работает в wtforms?
по первой ссылке выше что я давал описаны различные механизмы противодействия
источник

A

Alex in Python Flask
в случае классических сайтов чаще всего это токен, передаваемый обратно на сервер в форме.
источник

A

Alex in Python Flask
обычно не одноразовые.
источник

T

Tishka17 in Python Flask
Просто если он не одноразовый, надо чтобы у него был относительно маленький срок жизни. Или это уже другая тема?
источник

V

Vlad in Python Flask
новая форма = новый код, код генерится и вставляется перед выдачей формы
источник

A

Alex in Python Flask
Vlad
новая форма = новый код, код генерится и вставляется перед выдачей формы
с формой да, с куки — нет
источник

V

Vlad in Python Flask
Куку очень редко где видел
источник

A

Alex in Python Flask
Vlad
Куку очень редко где видел
ну без куки ты не сделаешь API или AJAX запросы.
источник

A

Alex in Python Flask
в том случае если API stateful, читай креденшалы в тех же куки передаются.
источник