可能重复:
为什么在XmlHttpRequest响应中有"while(1);"?
Gmail中的while(1)有什么作用
我最近偶然发现了预先添加AJAX返回数据的做法,while (1==1) {}以便为CSRF攻击提供更高的安全性,但我没有看到该代码如何有用.有人可以解释一下吗?
尝试执行CSRF攻击的远程站点需要使用JSONP调用加载数据.(在页面中注入一个脚本块)如果您尝试进行JSONP调用并将脚本注入到您的网页中,则javascript vm会超时无法加载数据(因为while循环).所以攻击者无法看到数据.
这可确保只有匹配相同原始策略的客户端(通过正常的ajax调用加载数据)才能使用该数据,从而防止任何攻击者从远程站点访问数据.
| 归档时间: |
|
| 查看次数: |
427 次 |
| 最近记录: |