2014-10-08 4 views
2

Я читал на токен-аутентификации и возможность атак XSRF и XSS получать информацию об аутентификации.Аутентификация токена и защита XSRF/XSS

Я понимаю, что для предотвращения атак XSRF это популярный подход к чтению пользовательского маркера аутентификации из файла cookie, а затем добавление его в пользовательский заголовок запроса перед выполнением любых запросов AJAX. Затем сервер может выполнить проверку на заголовке запроса, а не на файле cookie. Я считаю, что AngularJS использует такой подход: https://docs.angularjs.org/api/ng/service/ $ http

Мое замешательство возникает, когда вы предотвращаете атаки XSS. Очевидно, что лучше всего гарантировать, что ни один пользовательский ввод не сможет вставить javascript, но позволяет сказать, что обнаружен недостаток, поскольку упомянутый выше cookie должен быть прочитан, чтобы установить его значение в заголовке запроса, не уязвим ли он для XSS атаки? Поскольку cookie не может быть настроен только на HTTP, может ли злоумышленник не читать cookie, чтобы получить токен аутентификации, а затем подделать запрос? Если да, то как это можно предотвратить?

Любая информация оценивается.

+0

Мне было интересно то же самое, если для защиты XSRF от Angular требуется cookie с тегом 'httpOnly', установленным на' false'. По-видимому, если ваш сайт уязвим для атак XSS, вы не можете помешать злоумышленнику подделывать вредоносный запрос даже с помощью защиты XSRF. См. Https://www.optiv.com/blog/bypassing-csrf-tokens-via-xss – Seeven

ответ

1

Куки будут уязвимы только для атак XSS, если ваш сайт уязвим для атак XSS.

Таким образом, вам необходимо убедиться, что любой пользовательский ввод подвергается санированию перед его отображением на странице.

Смежные вопросы