1

我想避免在我已经运行的 asp.net 应用程序中进行脚本注入,因此我在 Pagebase Init 事件的运行时为每个文本框添加了 FilteredTextBoxExtender,并且效果很好,其中我定义了无效的“<>&”章程。

我想知道所有导致脚本注入问题的特殊章程。

4

1 回答 1

0

尝试使用Server.HTMLEncodeServer.HTMLDecode

  1. 小于号 (<) 转换为&lt;.
  2. 大于号 (>) 转换为&gt;.
  3. & 符号 (&) 转换为&amp;.
  4. 双引号字符 (") 转换为&quot;.
  5. 任何代码大于或等于 0x80 的 ASCII 代码字符都将转换为 &#,其中是 ASCII 字符值。

更多详细信息
http://msdn.microsoft.com/en-in/library/ms525347%28v=vs.90%29.aspx

编辑 1

一些 SO 链接
ASP.NET Server.HtmlEncode 限制
为什么需要 Server.HtmlEncode?

编辑 2

可以参考这个链接
ValidateRequest 设置为 true 时哪些字符或字符组合无效?

于 2013-03-13T11:36:36.510 回答