Есть ли хорошие библиотеки кодирования безопасности для .NET?

Читал о различных атаках типа инъекций, и кажется, что лучший способ избавиться от этих уязвимостей — это закодировать весь пользовательский ввод, чтобы удалить / заменить одни символы другими (‹ > ; и т. д.).

Каков мой лучший выбор здесь? Есть ли какие-нибудь хорошие библиотеки, которые помогут мне в этом? Или что-то, что может помочь мне обнаружить потенциальные уязвимости? - Или регулярные выражения мой лучший выбор? :)

Большое спасибо


person cwap    schedule 01.04.2009    source источник
comment
Обман: stackoverflow.com/questions/188870/   -  person NotMe    schedule 02.04.2009
comment
Спасибо за эту ссылку. Искал перед публикацией, но не нашел :)   -  person cwap    schedule 02.04.2009
comment
Это не обман, хотя этот вопрос касается удаления того, что вы ищете, для правильного кодирования данных в соответствии с местоположением вывода, которое отличается, и ответ другого субъекта на самом деле не всегда безопасен. Так что не стоит полагаться и на этот ответ.   -  person dr. evil    schedule 02.04.2009


Ответы (5)


Взгляните на библиотеку AntiXSS.

person bdukes    schedule 01.04.2009
comment
вау .. это выглядит великолепно :S Не могу поверить, что это не более раскручено, если оно действительно делает то, что они говорят :) - person cwap; 02.04.2009

OWASP Antisamy и OWASP ESAPI.

Из них я бы проголосовал за ESAPI, поскольку я использовал Java-версию ESAPI для предотвращения атак XSS. Имейте в виду, что простое HTML-кодирование данных не помешает XSS. Контекст данных также важен — вам придется избежать JavaScript, если вы динамически генерируете его и внедряете в ответ на сервере.

person Vineet Reynolds    schedule 01.04.2009

Server в экземплярах Page ASP.NET (доступных через Page, то есть this) предлагает метод HtmlEncode(), которого должно быть достаточно для предотвращения атак XSS.

По умолчанию, не разрешая это явным образом ни в web.config, ни через директиву страницы, ASP.NET отклонит любой подозрительный ввод со страницей с ошибкой.

person Martin C.    schedule 01.04.2009

У вас есть 3 хороших варианта защиты от межсайтового скриптинга:

Я бы попробовал в таком порядке.

person dr. evil    schedule 01.04.2009

Недавно я просматривал ESAPI.NET, и проект кажется незавершенным и, возможно, неактивным, особенно по сравнению с пакетом java.

Anti-XSS охватывает только часть области действия ESAPI, и действительно, ESAPI.NET использует AntiXSS (хотя и не самую последнюю версию) для кодирования.

Будут полезны любые комментарии, свидетельствующие о полезности ESAPI.NET.

person Rick Putnam    schedule 30.11.2010