Это еще более безопасно :), потому что даже если злоумышленник может получить действительный токен csrf для текущей транзакции, он должен будет создать междоменный запрос ajax для включения в запрос пользовательских заголовков.И если пользователь отключил js в своем браузере, то злоумышленник поджаривается :).Однако его можно переопределить с помощью java-апплетов ... но вы знаете, что если пользователи необразованы и злоумышленник действительно мотивирован, вы можете сделать очень мало;).
Но есть проблема, что не все пользовательские заголовки будутперенаправляется в случае, если пользователь обращается к нам через брандмауэр или корпоративный прокси.Поэтому я думаю, что это основная причина использования поля вместо пользовательского заголовка.Хотя есть заголовок, который предотвращает атаки XSRF: Источник , Концепция веб-источника также в качестве дополнительной информации Политика безопасности контента 1.1 этотолько проект, но некоторые интересные идеи представлены там.