如果我有一个用户将数据输入到富文本编辑器(微小的编辑器)并将数据存储到数据库然后检索以显示在其他动态网页上,为什么我需要在这里进行编码.
唯一的原因是有人可能会将javascript粘贴到富文本编辑器中吗?还有其他原因吗?
安全是原因.
最明显/常见的原因是跨站点脚本(XSS).事实证明,这是您在网站中可能遇到的安全问题的根本原因.
跨站点脚本(XSS)是Web应用程序中常见的一种计算机安全漏洞,它使恶意攻击者能够将客户端脚本注入其他用户查看的网页中.攻击者可以使用利用漏洞利用的跨站点脚本漏洞来绕过访问控制,例如相同的源策略.截至2007年,赛门铁克在网站上执行的跨站点脚本大约占所有安全漏洞的80%.1 它们的影响可能从轻微的麻烦到重大的安全风险,具体取决于易受攻击的站点处理的数据的敏感性,以及网站所有者实施的任何安全措施的性质.
另外,如下面的评论所示,您的网站布局也可以搞砸.
您需要Microsoft Anti-Cross Site Scripting Library
更多资源
http://forums.asp.net/t/1223756.aspx