Работя върху XSS (скрипт на различни сайтове) проблеми на моето уеб приложение. Приложението има много потребителски контроли, които приемат потребителски входове.
Попаднах на тази статия http://www.asp.net/whitepapers/request-validation
Можете ли да отговорите на следните въпроси:
Има ли недостатъци на използването validateRequest = "истинска" на ниво приложение (в web.config)?
Има ли по-добър начин да коригирате XSS проблеми, освен да продължавате всеки контрол и да правите HTML кодиране?
Благодаря предварително.
Отговори:
1 за отговор № 1Нещо, което първоначално ни хрумва, е следното:
Ако добавяте ретроспективно validateRequest
към сайт, тогава всяко потребителско въвеждане, което съдържа злонамерени скриптове, които вече сте заснели и съхранявали в база данни, все още е уязвимост за вашето приложение, validateRequest
няма да ви защитя тук, HTML кодирането ще.
Може да е болка да си проправите път през вашияприложение и HTML Кодирайте всичко, ако наистина сте притеснени, това е необходимо зло. Хакерите винаги измислят нови методи. Ако използвате библиотека, ще трябва да изчакате актуализации, за да залепите нови дупки, като същевременно оставяте вашия сайт уязвим - вярвам, че HTML Encode е най-доброто ви оръжие за защита срещу XSS атаки.
След като каза това, дайте това на кратко:
HTML кодирането ще предотврати ли всякакви XSS атаки?