Очистите свойства, украсив их, чтобы избежать атаки XSS.

В настоящее время я принимаю модели в своем веб-API. Я думаю украсить свои свойства, которые уязвимы для атак xss. Это должно удалить все теги сценариев и т. Д. Есть ли какая-нибудь библиотека, которая может мне помочь в этом...

public class ClassToSanitze
{

    public int Id {get;set;}
    [Sanitize]
    public string Name {get;set;}

}

person Code one    schedule 10.11.2020    source источник


Ответы (1)


Нет ничего, что делало бы то, чего вы пытаетесь достичь. Прочтите это руководство Microsoft по предотвращению XSS

Я нахожу следующее наиболее важным руководящим принципом

Проверка может быть полезным инструментом для ограничения XSS-атак. Например, числовая строка, содержащая только символы от 0 до 9, не вызовет XSS-атаку. Проверка становится более сложной при принятии HTML в пользовательском вводе. Анализ ввода HTML затруднен, если не невозможен. Markdown в сочетании с синтаксическим анализатором, который удаляет встроенный HTML, является более безопасным вариантом для обработки расширенного ввода. Никогда не полагайтесь только на проверку. Всегда кодируйте ненадежный ввод перед выводом, независимо от того, какая проверка или очистка были выполнены.

Здесь также есть несколько хороших ответов: Как удалить теги html на С#

По сути, единственное, что нужно сделать, это закодировать строки в формате Html.

person Athanasios Kataras    schedule 10.11.2020