Нужно ли очищать входные данные от элементов управления ASP.NET MembershipProvider?

Я использую различные элементы управления ASP.NET из коробки, такие как элемент управления CreateUserWizard, элемент управления Login и т. д. Для пользовательских элементов управления я санировал свои входные данные, убедившись, что они соответствуют ожидаемым значениям. Однако требуется ли это для элементов управления, таких как элемент управления CreateUserWizard, или это обрабатывается внутри? Нужно ли мне предоставлять какие-либо дополнительные проверки на стороне сервера для этих элементов управления, и если да, то было бы лучше сделать это в событии «CreateUserWizardControl_CreatingUser»? Спасибо


person Skoder    schedule 09.01.2010    source источник
comment
О какой очистке ввода вы говорите? То есть, какие входные данные, которые вы считаете недействительными, вы опасаетесь, что ASP.NET может счесть допустимыми?   -  person Eilon    schedule 09.01.2010
comment
Я не эксперт по безопасности, поэтому я могу предоставить ненужную проверку. Но, например, если пользователь ввел определенный сценарий в качестве «Имени пользователя», элемент управления автоматически закодирует сценарий и удалит символы «‹script›что-то‹/script›» или встроит его в базу данных как есть? При выводе я всегда мог бы закодировать его, но в первую очередь я бы не хотел иметь потенциально опасный код в БД.   -  person Skoder    schedule 09.01.2010


Ответы (2)


Если ввод поступает из какой-либо формы, рассматривайте его как подозрительный. Я включил несколько ссылок здесь, которые могут вам помочь:

http://www.codersbarn.com/post/2008/11/01/ASPNET-Data-Input-Validation.aspx

person IrishChieftain    schedule 09.01.2010
comment
Спасибо, ирландский вождь. Эта ссылка великолепна. Я предполагаю, что дополнительная проверка стоит небольшого увеличения накладных расходов по сравнению с потенциально дорогостоящей атакой. Я уже создал несколько методов Regex в своем классе util, поэтому я также передам через них элементы управления MembershipProvider. - person Skoder; 10.01.2010
comment
Большинство людей не принимают во внимание ничего, кроме форм — хакер может проникнуть множеством способов. Следите за CAT.NET :-) - person IrishChieftain; 10.01.2010

Если у вас включена проверка запроса, то данные формы с тегами скрипта будут автоматически генерировать ошибку.

person Josh Anderson    schedule 09.01.2010
comment
‹сценарий› был просто примером. Я все еще читаю о безопасности, так что, несомненно, есть другие фрагменты кода, которые можно внедрить, но они будут выглядеть корректно. - person Skoder; 10.01.2010