点击挟持ClickJacking
攻击者使用一个透明的不可见的iframe覆盖在一个网页上,诱使用户在该网页上进行操作,在用户不知情情况下诱使用户完成一些动作,利用与用户交互页面,调整iframe页面的位置,恰巧点在功能性按钮上。
Flash点击挟持
图片覆盖攻击Cross Site Image Overlaying –XSIO
通过调整图片的位置使得覆盖在所指定任意位置。
- 防御:需要检查用户提交的HTML代码中 < img>标签的style属性是否可能导致浮出。
拖拽挟持与数据窃取
Drag & Drop
诱使用户从隐藏不可见的iframe中拖拽出攻击者希望得到的数据,然后放到攻击者能控制的另外一个页面中,从而窃取数据。拖拽不收同源策略的限制
触屏挟持
- touchstart
- touchend
- touchmove
- touchcancel系统可取消touch事件
防御ClickJacking
- 禁止跨域的iframe来防范
- frame busting :使用javascript禁止iframe嵌套
- if(top.location !=location) {top.location=self.location}
- if(top!=self)
- ……
- 这种方式容易被绕过,比如嵌入多个iframe,此外iframe的sandbox属性和security属性限制JS脚本执行,使frame busting 失效
- X-Frame-Options:HTTP头
- Content Security Policy(firefox)
- NoScript(firefox)

