Как предотвратить XSS и CSRF глобально в Asp. Net Core - PullRequest
0 голосов
/ 03 марта 2020

Я хочу предотвратить атаку моего приложения на XSS и CSRF, я хочу сделать глобальную проверку, чтобы предотвратить их.

Я использовал приведенный ниже код в файле statup в ConfigureServices функция, она предотвращает CSRF-атаки, но я не уверен, достаточно ли этого для предотвращения обеих атак или мне нужно написать некоторый код для предотвращения XSS отдельно.

services.AddMvc(options => 
    options.Filters.Add(new AutoValidateAntiforgeryTokenAttribute()));

Еще одно сомнение : это будет работать для приложения API?

1 Ответ

2 голосов
/ 03 марта 2020

XSS и CSRF - это совершенно разные виды атак, от которых нужно защищаться совершенно разными способами.

XSS требует, чтобы пользовательский ввод был надлежащим образом экранирован для самого конкретного c контекста, в который он вставлен , Для этого нет панацеи. Вы не можете решить это глобально. (Существуют различные методы поиска подозрительного контента в запросах, которые могут быть XSS, но они довольно склонны к выдаче ложных срабатываний).

...