基于移动应用GUI的测试研究及在移动安全上的应用

目前,随着安卓设备的大量普及,根据IDC2017年第一季度的调查报告,安卓用户已经占据全球手机市场的85%。在这种形式下,越来越多的安卓应用程序也随之出现。随之而来的就是越来越严峻的安全形势。为了去检查这些应用中是否存在着安全问题,许多学者都提出了各式各样的自动化测试技术和工具。但是现有的工作都是基于Activity层级作为UI基本单元进行自动化测试,但是目前许多开发者都转向使用更有效率和更方便的Fragment作为Activity的一部分来进行开发。但是原有的技术框架缺失了分析Fragment的能力可能导致无法发现在Fragment实现逻辑中存在的一些安全问题。为了弥补这个问题,我们提出了一个兼容Fragment的自动化测试模型,来实现对安卓Fragment组件的自动化测试兼容。它创新设计了一个Activity和Fragment的转换模型,并且能够将UI操作队列信息自动化编译生成对应的测试用例。并且将该模型和安卓敏感函数调用的检测功能进行了结合。在对该框架进行测试前,我们首先对Google Play流行的217个应用进行分析,发现其中有91%的应用使用了 Fragment组件。在选择的15个应用中,Fragment的平均覆盖率为66%,同时我们对敏感函数调用进行监测,发现有9.3%的敏感函数调用仅仅存在于Fragment中。在检测移动应用安全的时候,我们发现安卓应用和远程服务器交互的接口大多都是采用Web API来进行设计通行的,但是为了开发安卓应用而在原有服务器上引入新的兼容手机应用的Web API接口就会对原有服务器带来新的安全问题。因此我们为便于研究该问题,结合上述框架,设计并实现了一个能够自动的分析安卓应用中存在的Web API接口的模型,在实验部分我们利用该模型对48个顶级应用进行分析,发现了其中9个应用存在着API滥用,会话劫持等安全问题。

Android安全; 自动化测试; Fragment; Web API; 隐私泄露;

郭山清;

TP309

16724443K
在线咨询 用户反馈