Подтвердить что ты не робот

Anti XSS и классический ASP

В настоящее время я пытаюсь защитить свое классическое приложение ASP от XSS. Я столкнулся с AntiXSS от Microsoft в сети, и мне было интересно, будет ли это работать с классическим приложением?

Если у вас нет каких-либо идей, как я могу заниматься дезинфекцией струн?

4b9b3361

Ответ 1

Чтобы деактивировать строки, я бы кодировал HTML-код для всего вывода, так что вам не нужно обходить специальные символы или огромные выражения регулярных выражений

Server.HTMLEncode(string) 

Двумя наиболее важными контрмерами для предотвращения атак с межсайтовыми сценариями являются:

  • Ограничить ввод.
  • Кодировать вывод.

через Как предотвратить межсайтовый скриптинг в ASP.NET (я знаю, что я не классический asp, но есть похожие принципы)

Ответ 3

Если вам нужно разрешить определенные HTML-теги (как и в моем текущем проекте), вы можете использовать регулярное выражение, чтобы разрешать только те теги и другие, например:

set objRegExp = new RegExp
with objRegExp
    .Pattern = "<^((b)|(i)|(em)|(strong)|(br))>.*</.*>"
    .IgnoreCase = varIgnoreCase
    .Global = True
end with
cleanString = objRegExp.replace(originalString, "")

Ответ 4

Не легко - вам нужно сделать COM-вызываемую оболочку, установить на серверы и т.д. Я просто не думаю, что это подходит для "классического" ASP.

Ответ 5

<% 
Response.AddHeader "X-XSS-Protection", "1" 
%>