Как справиться с атаками XSS в ASP.NET веб-приложение на глобальном уровне.
I have already developed web application in asp.net c#. we also put setting validateRequest to true, this validates the scripts and html tags(<script>,<p>) from injecting. but using Burp suit we can insert data like "%uFF1Cscript%uFF1Ealert%28%u2018XSS%u2019%29%3B%uFF1C/script%uFF1E" how to validate these types of attack in some global level settings.
Что я уже пробовал:
we tried in webconfig like- <globalization requestEncoding="utf-8"/> <add name="X-Xss-Protection" value="1; mode=block" /> <add name="X-Content-Type-Options" value="nosniff" /> <add name="Content-Security-Policy" value="default-src 'self' , 'unsafe inline' etc...;" /> <add name="X-Frame-Options" value="SAMEORIGIN" /> <add name="Strict-Transport-Security" value="max-age=31536000; includeSubDomains"/>
F-ES Sitecore
Очистите объекты с помощью Html-кодирования, прежде чем выводить их в поток ответов. Если вы написали веб-сайт и теперь хотите обезопасить его в качестве последующей мысли, то измените способ написания веб-сайтов.
Vishal S. Kumbhar
Да, теперь я могу измениться. но я застрял в этом. так что если у вас есть какое-то решение, то предложите мне.
Kornfeld Eliyahu Peter
Поскольку "validateRequest" обрабатывает множество сценариев, вы должны добавить подробную информацию о том, как вы взломали себя с помощью Burp... Это поможет...
В любом случае - если это возможно, вы должны кодировать каждый бит данных, поступающих от клиента непосредственно перед сохранением их в БД...
Vishal S. Kumbhar
Тот же сценарий объяснен здесь --
https://support.portswigger.net/customer/portal/articles/2325935-Methodology_Attacking%20Users_XSS_Exploiting%20XSS%20-%20Injecting%20into%20Direct%20HTML.html
но вместо того, чтобы вводить теги скрипта, мы кодируем строковую строку "%uFF1Cscript%uFF1Ealert%28% u2018XSS%u2019%29% 3B%uFF1C/script%uFF1E" для предупреждения('XSS');