如何防范的iframe非法嵌入(不允许iframe嵌入)

网友投稿 1799 2022-07-28

WEB工程师在iframe标签上的讨论一直不嫌少,包括其可以用来跨域,方便开发的特性。但另一方面它又不利于对页面进行SEO优化,并且会降低网站的安全性。说到iframe的安全性问题,利用iframe来非法嵌入正规官方网站的页面,同时在页面两边打着自己产品的标语,宣称自己与大网站合作进而推销自己产品的例子,并不少见。

如何防范的iframe非法嵌入(不允许iframe嵌入)

那么应该如何保护自己的网站不被非法分子利用呢?其实很简单,一小段JS代码即可:

if (window != top)

top.location.href = window.location.href;

通过JS来判断当前页面所处DOM对象是否是最顶层页面,因为在最顶层页面中,window对象即等于top对象,如果不相等即将最顶层的页面(即非法分子的主页面)跳转到iframe中的页面。但是这段代码有一个问题,即自己的网站也无法用iframe嵌入自己的页面。其实很简单,改进一下:

var myDomain = "abc";

var webHost = top.location.href;

var tempArr = webHost.split(".");

if(tempArr.indexOf(myDomain) == -1)

{

if (window != top)

top.location.href = window.location.href;

}

通过top对象的href属性来判断当前顶层页面的域名是否为自己网站的域名即可。只需要把myDomain替换成自己网站域名的二级域名部分。最后只要把这段代码放入页面的onload事件即可完成对网站的保护啦!

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:四种XML解析方式详解(xml的三种解析方式)
下一篇:理解Cookie和Session机制(请论述session和cookie技术的区别)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~