/ / Използване на валидиране на заявки за заявки в Ajax? - c #, asp.net, xss

Използване на потвърждаване на заявки за заявки в Ajax? - c #, asp.net, xss

Потребителите на моя сайт имат страница, на която могат да пишат свои собствени html. Искам това да се използва за неща като подредени списъци, стил и т.н., но някои хора ще се опитат да вмъкнат скрипт, който не мога да разреша.

Механизмът за актуализиране на описанието на потребителя е чрез ajax. От javascript изпращам заявка до файл ajax.ashx, който нарича функция в ajaxMethods.cs, Във функцията актуализирам сървъра sql с новото описание на потребителя.

Как мога да потвърдя входа във функцията, преди описанието да бъде подадено на сървъра? Искам да извадя нещо от скриптовете, но да оставя нормалните тагове за хартия като <p>, Има ли някакви инструменти, които ще се справят с всичко това?

Отговори:

1 за отговор № 1

Защо не позволи на потребителите да използват вместо това персонализиран формат / език (например Markdown) и след това да анализираме тази страница на сървъра в HTML? По този начин знаете, че всеки скрипт / html код, който намирате в действителната заявка, е невалиден и може да бъде премахнат (или кодиран). Това също ви дава предимството да разрешите само предварително зададен списък с етикети. По принцип ще ви даде същата функционалност, каквато има StackOverflow.


0 за отговор № 2

Препоръчвам ви HttpServerUtility.HtmlEncode Вашата продукция. Опитвайки се да анализирам скриптовите маркери, а не HTML, не е добър подход. Вижте справката по-долу:

XSS (кръстосано скриптови скриптове) Cheat Sheet