采用系统调用监测安卓应用资源使用的研究

来源 :复旦大学 | 被引量 : 0次 | 上传用户:originalwinter
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
现今手机、平板电脑等手持移动设备的运算能力日益增强,搭载智能系统的移动设备逐渐融入人们生活,成为日常活动不可或缺的一部分。手持移动设备大多存储了大量涉及用户隐私的重要信息,如通讯录、短信、彩信、邮件、文件等等,这些信息涵盖了用户生活和工作的各个方面。随着智能手机的普遍推广,针对手机的恶意应用的数量也极速增长,智能手机的安全面临诸多挑战。安卓恶意应用行为大多源于对系统资源的非法使用,资源使用信息将有助于快速地分析恶意行为。然而,由于安卓系统使用权限机制对资源进行管理的特性,现有的基于系统调用监测安卓应用资源使用的方法并不行之有效。针对该问题,本文通过对安卓系统资源管理特点的研究,提出并实现了一种采用系统调用辅以系统调用-API映射关系来监测安卓应用资源使用的方法SysTracker。SysTracker能够在不对应用程序和系统进行修改的前提下,把应用程序当做黑盒进行监测。因此,该方法能够适用于任何版本的安卓系统,特别适用对系统预装软件的监测分析。首先,SysTracker通过ptrace系统调用对应用程序进行追踪,以截获应用程序产生的系统调用。在截获系统调用后,SysTracker会根据该系统调用的参数个数以及类型对参数进行解析。其次,SysTracker使用Monkey工具对1879个应用程序进行自动化测试,收集了安卓程序框架中提供资源访问和操作的568个API对应的系统调用信息,并采用特征提取的方法分析出系统调用与API调用之间精确的映射关系。最后,SysTracker借助系统调用与API调用之间精确的映射关系,采用多路匹配的方式将应用程序的系统调用信息还原为相应的API调用,再根据已有的API与权限及资源的映射关系识别出应用程序对资源的使用情况。为了验证SysTracker识别安卓应用程序资源使用的准确性,我们使用Monkey收集316个应用的API调用情况,将收集到的API调用信息与SysTracker识别出来的API调用进行对比,结果显示SysTracker识别的正确率高达99.2%。此外,我们还使用SysTracker对多款应用程序进行分析。结果显示,SysTracker能够直接监测到应用对API的调用情况,大大降低了程序行为分析的代价。同时,根据监测到的API调用信息,分析人员能够快速准确地识别出应用程序对敏感资源的使用,这对于分析应用程序的恶意行为具有较大的参考价值。
其他文献
随着半导体工艺向超深亚微米推进,处理器的设计复杂度随之提高。这使得处理器的测试面临着越来越多的挑战,特别是处理器的时延测试已成为工程应用的需要和测试研究领域的热点
小波图像编码是近年来随着小波分析理论的发展而提出的一种具有很好发展前景的图像编码方法。 本文主要研究了基于提升方法的整数小波变换,以及基于整数小波变换的可分级图
当前企业应用系统开发过程中存在着大量的信息处理。作者把应用系统中的信息处理过程划分为两种:紧耦合的信息处理和松耦合的信息处理。这里所说的与应用系统本身紧耦合的信
粗糙集理论是一种新的处理模糊和不确定性知识的数学工具。其主要思想是在保持分类能力不变的前提下,通过知识约简,导出问题的决策或分类规则。它与其他处理不确定性问题理论
无线ad hoc网络具有许多不同于有线网络的特性,而由这些特性带来的大量的问题至今为止并没有得到完全解决,从而导致TCP业务在无线ad hoc网络中的性能不如在有线网络中那么令
蓝牙技术是一种短距离无线数据与语音通信的开放性标准。蓝牙技术具有低成本、低功耗、容易组网等优点,在许多领域逐渐得到广泛应用。 作为无线自组织网络,蓝牙网络既具有
随着近年通讯技术的迅速发展,出于对移动通讯需求的快速增长,无线网络技术渐受瞩目;无线网络技术将激起另一波巨大的产业变革。而蓝牙技术,被认为是实现个人与互联网最后10米
异构信息网络分析是近年来数据挖掘领域中非常热门而新颖的研究方向,受到越来越多专家学者的关注。现实世界中来自各种不同领域的系统中往往都存在多种类型的对象,不同类型的对
作为金融设备中的关键设备之一,货币识别接收器已广泛应用于各种交易场合。但随着自助服务行业的发展,货币识别接收器在应用中已面临着新的问题:一方面,由于货币版本的不断更
UML(统一建模语言)是一种通用的可视化建模语言,用于对软件进行描述、可视化处理、构造和建立软件系统的文档。在当前软件项目开发过程中,UML建模被广泛使用,很好地提高了软