导航
导航
文章目录
  1. 什么是点击劫持
  2. Flash点击劫持
  3. 图片覆盖攻击
  4. 拖拽劫持和数据窃取

Web安全之点击劫持

今天来聊聊前端应用安全问题中的最后一种,点击劫持(ClickJacking)。

什么是点击劫持

点击劫持是一种视觉上的欺骗手段,攻击者使用一个透明的、不可见的iframe元素,覆盖在一个网页上,然后诱使用户在该网页上进行操作,用户就可能在不知情的情况下点击透明的iframe,通过css改变iframe位置,可以让用户点击在iframe上的某些特定按钮上。

点击劫持和CSRF一样,都是在用户不知情的情况下诱使用户完成一些操作。但是在CSRF攻击过程中,如果有需要用户进行交互的页面,比如输入验证码等,则攻击可能无法顺利完成。与之相反的是,点击劫持没有这个顾虑,它利用的就是用户与页面产生的交互。

Flash点击劫持

通过Flash进行点击劫持攻击可能会更严重,攻击者最终可以控制电脑的摄像头。

首先,攻击者制作一个Flash游戏,并诱使用户玩这个游戏。游戏很简单,就是让用户去点击按钮,每次点击之后这个按钮的位置都会发送变化。在页面上覆盖了一层iframe。攻击通过诱使用户鼠标点击的位置,能够完成一系列的步骤,最终可以打开用户的摄像头。

图片覆盖攻击

同样的思路,可以用图片覆盖某个网站的logo,并指向一个钓鱼网站。网站的logo的点击率是相对较高的,如果用户点击了这个被覆盖的logo,进入钓鱼网站,那么就很可能会被骗。主要还是通过css来改变图片的位置,使它刚好覆盖网站上的某些图片。

拖拽劫持和数据窃取

目前很多浏览器都开始支持Drag&Drop的API,浏览器中的拖拽对象可以是一个链接,也可以是一段文字,还可以从一个窗口拖拽到另一个窗口,因此拖拽是不受同源策略限制的。

“拖拽劫持”的思路是诱使用户从隐藏的不可见iframe中拖拽出攻击者希望得到的数据,然后放到另一个页面中,从而窃取数据。

点击劫持相较于XSS和CSRF来说,实施攻击的成本更高,因为它需要诱使用户与页面产生交互行为。但是点击劫持很可能被攻击者利用在钓鱼、欺诈和广告作弊等方面,还是需要加倍小心。

本文总阅读量: