Элементы управления ASP.Net Validation фактически выполняют проверку как на стороне клиента, так и на стороне сервера, однако обычно это относится к таким вещам, как обязательные поля, длина, сопоставление формата и тому подобное. Элементы управления проверкой обычно не предназначены для предотвращения злонамеренных действий.
С точки зрения защиты вашего приложения следует обратить внимание на две основные вещи: внедрение скриптов и внедрение SQL.
По умолчанию в ASP.net встроена защита от внедрения скриптов, но лучше всего защищаться от атак напрямую. Любой вывод, сгенерированный из пользовательского ввода, должен быть закодирован перед выводом. Вы можете использовать HttpUtility.HTMLEncode (). Существует также библиотека AntiXss, доступная от Microsoft, которая предлагает улучшенную защиту.
Обратите внимание, что эти меры обычно выполняются как можно ближе к выходу программы. Этот метод не отклоняет записи, содержащие вредоносный скрипт - скрипт скорее закодирован в безвредный текст.
Конечно, любые данные, хранимые в базе данных, должны быть либо параметризованы, либо вставлены через linq для предотвращения внедрения SQL - это обеспечит строгую типизацию хранимых данных и не сможет быть выполнена как запрос.
Советы по защите XSS
Библиотека AntiXss Скачать