本文起这个名字还是因为之前,曾经和朋友茶几部落研究过这个问题。当时他想帮直接iframe他朋友的某篇文章进他的blog。
后来发现iframe不了,经过研究之后,发现代码这防止了iframe:
<script type="text/javascript"> if(self != top)top.location.href = "http://chanyouji.com/?anti_iframe_source=" + top.location.href + "&anti_iframe_url=" + self.location.href; </script>
当时没考虑那么多,考虑的多半是为何这个网站不允许iframe呢?不够开放什么的。
或许是当时不够深入。
经过一段时间的总结,防止iframe标签嵌套他们的网站,很有可能是因为如下几点:
1、确保流量以及内容均能正常显示在自己的网站之中
2、Clickjacking
3、防止电信以及其他运营商的劫持
首先先谈谈1,为什么这么说呢?首先iframe只是显示在一个很小的区域里头,经过iframe之后的网页,会产生滚动条(在长宽都不满足的情况下)。
不过真正因为1去防止别人iframe网站的,还是挺少的。那在1的原因里头,如果是小网站,可以看成是防止怀有恶意之人Ddos的一种不错的方法。(思路如下:hacker找到大流量的网站,通过拿下大流量的网站权限,在某个地方iframe进你的站点,直接把你的网站打挂。)
再看看Clickjacking,似乎对于点击劫持的例子,网上还不够多。但是在乌云社区里头已经有不少不错的帖子:
譬如:Clickjacking简单介绍:http://drops.wooyun.org/tips/104
可能这还不够形象,我可以发两张图演示一下,到底什么是点击劫持:
原文link在:http://zone.wooyun.org/content/3858
图1:
图2:
通过这两张图,我们不难发现,在自己的网站如果存在点击劫持,那么你的访客会造成什么影响(当然这些都是未知的,完全要看攻击者的角度)
最后再说说第三点,电信等运营商劫持用户已经不是什么新鲜事情了。通过防止iframe标签,一样能够实现防止电信篡改你的网页。
当然,基于这三点,chanyouji的做法我还是比较接受的。当然,这么做有利也有弊,上面我也分析出这么做的优点,缺点大家可以自行想象一下,如果一个网站不允许iframe会有些什么影响?
其他的目的还不知道,欢迎朋友们的讨论。
本文来自:梧桐雨软件园原创,转载请注明出处。
这么好的文章,要顶。