На сайте Джанго https://docs.djangoproject.com/en/dev/ref/contrib/csrf/ говорится:Файл cookie Django CSRF доступен через javascript?
The CSRF protection is based on the following things:
1. A CSRF cookie that is set to a random value (a session independent nonce, as it is called), which other sites will not have access to.
2. ...
После этого, он также заявляет маркер CSRF может быть получен из печенья с помощью JavaScript:
var csrftoken = $.cookie('csrftoken');
является ли эти два заявлениями конфликтующих? Скажем, есть атака Cross Origin, тогда злоумышленник может просто получить токен CSRF из cookie, а затем сделать запрос POST с токеном CSRF в заголовке? Может кто-нибудь объяснить это, пожалуйста?
UPDATE
теперь я понимаю, что, только Javascript из того же происхождения, разрешается доступ к куки. Следующий вопрос:
Если запрос POST автоматически добавляет куки-файлы как часть запроса, а значение cookie csrf django совпадает с токеном csrf, тогда запрос на злонамеренный перекрестный источник по-прежнему будет иметь правильный токен CSRF в любом случае? (в cookie)
Возможный дубликат [Что такое защита CSRF действительно для (в Django)?] (Http://stackoverflow.com/questions/10242263/what-is-csrf-protection-really-for-in-django) –