XSS 漏洞的危害与预防

XSS 攻击全称跨站脚本攻击,它允许攻击者将 JavaScript 代码植入到网站页面中。这种类型的漏洞由于被骇客用来编写危害性更大的网络钓鱼攻击而变得广为人知。

XSS 漏洞常用的攻击方法是通过表单提交 JavaScript 脚本代码,例如:

<script>for(;;){alert('1');}</script>

上面的代码,如果不加处理直接在页面上面显示表单数据,那么页面就会解析并执行上面的 JavaScript 脚本,导致浏览器一直弹窗,这时候只能通过关闭浏览器才能解决上面的问题。

另一种攻击方法是在跳转的 URL 页面上面携带 JavaScript 脚本,例如:

http://localhost/?returnUrl=document.write('\u003c\u0073\u0063\u0072\u0069\u0070\u0074\u003e\u0061\u006c\u0065\u0072\u0074\u002815196\u0029\u003c\u002f\u0073\u0063\u0072\u0069\u0070\u0074\u003e');

同样,上面的代码如果不加处理,直接访问页面的话浏览器也会一直不断弹窗,直至关闭浏览器才能阻止弹窗。

XSS 漏洞的危害主要是通过在页面上执行 JavaScript 代码来获取 Cookie 数据,这样用户就可以通过撞库等方式获取用户名和密码,目前预防 XSS 漏洞的主要方法是:

1、提交的时候进行安全验证,对于一些关键字应阻止表单提交,比如 <、> 等危险字符。
2、在展示数据的时候,使用编码的方式展示数据,在 .NET 中可以通过 Html.Raw(Server.HtmlEncode()) 来编码数据,这样会把 < 编译成 &lt; 编码。

管理员

转载请注明出处!如果本博文或者本站对您(网站)的内容/素材构成侵权,请第一时间与本博主联系!

Press ESC to close