
上QQ阅读APP看书,第一时间看更新
4.4 Testaspnet网站有框架钓鱼风险
缺陷标题:testaspnet网站>comments评论区>评论框中,存在通过框架钓鱼的风险。
测试平台与浏览器:Windows 10+IE11或Firefox浏览器。
测试步骤:
1)用IE浏览器打开网站:http://testaspnet.vulnweb.com/。
2)在主页中单击“comments”。
3)在“comments”输入框中输入<iframe src=http://baidu.com>。如图4-6所示。
4)单击Send comments。
5)查看结果页面。
期望结果:用户能够正常评论,不存在通过框架钓鱼的风险。
实际结果:存在通过框架钓鱼的风险,覆盖了其他评论,并且页面显示错乱。如图4-7所示。

图4-6 输入脚本代码

图4-7 存在通过框架钓鱼的风险
[攻击分析]:
对于禁止自己的网页或网站被Frame或者IFrame框架(阻止钓鱼风险),目前国内使用的大致有三种方法。
1.使用meta元标签


2.使用JavaScript脚本

这个方法用得比较多,但是网上的高手也想到了破解的办法,那就是在父框架中加入脚本var location=document.location或者var location=" "。注意:前台的验证经常会被绕行或被其他方式取代而不起作用。
3.使用加固HTTP安全响应头
这里介绍的响应头是X-Frame-Options,这个属性可以解决使用JS判断会被var location破解的问题,IE8、Firefox3.6、Chrome4以上的版本均能很好地支持,以Java EE软件开发为例,补充Java后台代码如下:

就可以进行服务器端的验证,攻击者是无法绕过服务器端验证的,从而确保网站不会被框架钓鱼利用,此种解决方法是目前最为安全的解决方案。