基于组件集合完整性的Android界面劫持攻击检测方法研究
作者单位:武汉大学
学位级别:硕士
导师姓名:严飞
授予年度:2018年
学科分类:08[工学] 081201[工学-计算机系统结构] 0812[工学-计算机科学与技术(可授工学、理学学位)] 081202[工学-计算机软件与理论]
摘 要:随着移动网络技术的发展和普及,移动互联网的时代已然到来,智能手机、平板电脑等移动设备进入了千家万户,而移动设备系统也随之成为了攻击者的重点目标,许多传统平台中的攻击方式也开始向移动平台进行转移。其中,界面操作劫持攻击原本是传统平台中的一种Web攻击方式,近年来该种攻击逐渐向移动平台进行转移,演变成了一种新型的应用攻击方法,受到了业界的广泛关注。本文对Android平台中的界面操作劫持攻击进行研究,按照攻击方式,该攻击可以分为GUI抢占攻击和点击劫持攻击两种,其原理都是利用Android系统界面调度机制的缺陷,对目标界面进行干扰,达到窃取用户敏感输入数据或控制目标应用的目的。该种攻击影响多个常用的Android系统版本,且系统自带的沙箱、权限等安全机制无法对其进行防范,其危害广泛,隐蔽性强。由于传统PC平台系统与Android系统的差异,针对传统平台界面操作劫持攻击的防御方法无法直接应用于Android平台,因此,研究Android界面劫持攻击检测方法,对于保证移动平台安全性具有重要意义。本文对现有的Android界面操作劫持检测方案进行了分析,发现现有方案存在不足,一方面,大多数的劫持攻击检测方案使用场景有限,另一方面部分检测方案存在明显误报现象。为此,本文设计了基于任务组件集合完整性的GUI劫持攻击检测方法,和基于窗口组件完整性的点击劫持检测方法,对多种界面操作劫持攻击进行检测。文中方法对修改界面组件集合的操作进行来源回溯,并对界面组件集合的完整性规则进行定义,从而实现对Android界面操作劫持攻击的检测。本文基于Android模拟器平台和插桩工具,对该检测方案进行了实现,实验结果表明,该检测方法能够在Android 4.4.4-7.1.0的多个系统版本下,对6类界面劫持攻击样例进行有效检测,同时对于常见应用和现有工作中的4类误报情况,该方法不会产生误判,而现有的检测方法(WindowGuard等)存在明显的误报现象。