日前,一个非常可怕的跨浏览器攻击漏洞Clickjacking正在逐渐显露在人们面前。通过这个Clickjacking漏洞你会在毫不知情的情况下“帮助”黑客“控制”你计算机上的摄像头和麦克风。
这个Clickjacking漏洞具有及其良好的跨平台性,能够影响所有主流桌面平台包括IE、Firefox、Safari、Opera 以及 Adobe Flash。
这个被称为 发现这个Clickjacking漏洞的是Robert Hansen与Jeremiah Grossman两名安全研究专家,从他们已经透露的一点相关信息来看,这个安全危险相当严重。
考虑到这个漏洞的高度危害性,经Adobe等厂商请求,OWASP NYC AppSec 2008大会将暂不对其进行公布。
什么是Clickjacking?
在中文里,Clickjacking可以翻译为“点击劫持”,而国外资料里对其的解释是“UI redress vulnerabilities(界面伪装漏洞 )”。
据参加OWASP半公开演示的人士介绍,这个漏洞与JavaScript无关,却能影响所有浏览器。
简单的说Clickjacking是一种攻击,是一种新型的WEB方式攻击。其中所涉及到的“Flash Player漏洞”,其实只是Clickjacking安全漏洞的一种表现形式,黑客可以通过一个简单的Flash游戏控制用户的摄像头或麦克风。
Clickjacking漏洞原理解析
在一个已经公布的Clickjacking Demo演示程序中我们不难发现Clickjacking的内涵。
在你可控制的页面A内有一个iframe,iframe的src链接到另一个域的页面B。设置这个iframe的CSS样式的透明度为0,并设置其CSS样式的z-index比页面A的其他元素的z-index大。这个iframe的Width与Height值都设置为足以保证用户可以点击到其中内容(页面B的内容)的大小。然后在页面A上放置一些按钮、链接等可以欺骗用户点击的元素,这些元素在iframe之下(z-index值决定),并恰好与 iframe的页面B内的关键元素在同一个位置。于是当用户被欺骗去点击页面A内的这些元素时,实际上点击了页面B内的关键元素,这些元素可以是:删除按钮、添加按钮、单选框、请求链接等等。再加上一些社会工程学技巧,这类攻击方式可以进行得非常巧妙。
这种Clickjacking漏洞攻击基于DHTML技术,用到了iframe,而且这样的攻击方式不一定需要JavaScript。虽然使用防iframe代码可以保护你不受跨站点攻击,但攻击者仍可以迫使你点击任何其指定的链接。
类似的欺骗还有——onMouseUpJacking、FormJacking、SubmitJacking——点击劫持。
如果黑客精心设计Clickjacking攻击页面,那么无论网页访问者进行正常鼠标点击还是无意间的鼠标点击动作,都可能会点击激发背后的隐形身影,而这个隐形身影则可以包括下载木马、打开摄像头等各类恶意行为。
据Hansen讲,他们已经同微软以及Mozilla谈论过这个问题,然而他们均表示这个问题非常棘手,目前没有简单的解决办法。Grossman更确切表示,微软最新的IE 8和Mozilla最新的Firefox 3均不能幸免。
那么除非你使用lynx一类的字符浏览器,同时不要任何动态的东西,这样才能保护自己。由于这个漏洞与JavaScript无关,所以即便你关闭浏览器的JavaScript功能也无能为力。事实上这是浏览器工作原理中的一个缺陷,无法通过简单的补丁解决。
本文来源:塞迪网 作者:佚名