5.1 界面劫持操作概述
界面操作劫持是通过网页的可见输入控件上覆盖一个不可见的框,使得用户误以为在操作可见控件,而实际上用户的操作行为被其不可见的框,使得用户误以为在操作可见控件,而实际上用户的操作行为被其不可见的框所劫持,执行不可见框中的恶意劫持代码,从而完成在用户不知情的情况下窃取敏感逆袭,篡改数据等攻击。
点击劫持、拖放劫持、触屏劫持
5.1.1 点击劫持
劫持用户的鼠标点击操作
5.1.2 拖放劫持
在浏览器中,拖放操作是不受同源策略限制的,用户可以把一个域的内容拖放到另一个不同的域。
5.1.3 触屏劫持
5.2 界面操作劫持技术原理分析
5.2.1 透明层+iframe
1 透明层使用CSS样式实现
2 使用iframe来嵌入被劫持的页面
5.2.2 点击劫持技术的实现
5.2.3 拖放劫持技术的实现
1 dateTransfer对象
dateTransfer对象定义了两个主要方法:getData和setData
2 拖放函数
5.2.4 触屏劫持技术的实现
1 桌面浏览器
2 可视区域viewport
3 隐藏URL地址栏
4 触屏函数
5.3 界面操作劫持案例
5.3.1 点击劫持案例
以腾讯微博为例,在页面上通过iframe引入腾讯微博,然后上面覆盖一层其他页面,引导点击
5.3.2 拖放劫持案例
在小球上面使用iframe标签加入隐藏层,用户单机小球后,实际上是选择了隐藏层的内容。在海豚嘴上方使用了div加入隐藏层
5.3.3 触屏劫持实例
5.4 有何危害