XSS漏洞

跨站脚本漏洞

Cross-site scripting

可以对请求的数据做检测,如果请求数据中有<等就认为是恶意请求,禁止提交。aspx默认就是采用这种策略,这样做的缺点是如果做的是一个程序员论坛,程序员就无法发表HTML代码的帖子了,因此更好的处理策略是将用户发表的内容按照原样显示出来,而不是以HTML的方式显示出来。使用HttpUtility.HtmlEncode就可以将字符串中的<、>等特殊字符转换为HTML显示的字符,也就是不把<script>当成定义脚本的标签,而是当成“&lt;script&gt;”这样可以在页面上直接显示出来的内容。 修改看帖代码,context.Response.Write(line + "<hr/>");修改为 context.Response.Write(HttpUtility.HtmlEncode(line)+"<hr/>");即可。

原文地址:https://www.cnblogs.com/zhxshseu/p/5292175.html