Android应用程序的隐式控制流分析

来源 :中国科学技术大学 | 被引量 : 0次 | 上传用户:luanwenjie
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
为了保护智能手机免受恶意代码的攻击,学术界在Android恶意代码检测方面进行了大量的研究,所采用的技术大体上可以分为静态分析和动态分析两个方面。控制流程图是静态分析中的一个重要组成部分,本文主要研究如何构建Android应用程序的控制流程图。由于Android是一个基于事件和框架的系统,应用程序中存在着大量的隐式调用,这是静态分析工具构建控制流程图过程中面临的一个比较大的挑战。目前的静态分析工具只是对一些比较流行的隐式调用进行建模(如生命周期回调方法),我们发现这种做法是不充分的,恶意软件可以通过不流行的隐式控制流绕过软件检测。本文主要结合工具EdgeMiner提供的Android“框架层”中隐式调用的API总结,利用过程内后向数据流分析技术,提取Android"应用层”中所有与回调方法相关的隐式调用。结合应用程序中的显式控制流和其他的隐式控制流,我们开发出了一款比较精确的,可扩展的原型工具用来构建Android应用程序的控制流程图。本文的主要工作和贡献有:(1)提出了一种自动化分析Android应用程序中与回调方法相关的隐式调用方法,该方法根据“框架层”中隐式调用关系来提取Android "应用层”中隐式调用,克服了现有方法在提取隐式控制流上的不足。(2)实现了一个轻量级的控制流程图构建工具,对每一个给定的应用程序,可以为其构建精确的控制流程图,包括传统的过程内控制流程图、过程间显式控制流程图和过程间隐式控制流程图。该工具使用Python语言开发,生成的控制流程图可应用于后续更加精确的静态分析,如数据流分析。(3)在Google Play上的200个(10个分类)免费热门Android应用软件上进行了实验,验证了该工具的有效性。与当前比较著名的静态分析工具FlowDroid和Amandroid作对比,本文的工具可以发现更多的隐式控制调用关系。对于给定的Android应用程序,在有了精确的控制流程图的基础上,研究人员可以完成后续的静态分析工作。由于控制流程图的准确性得到了提高,它也会提升后续静态分析的精确性。
其他文献
搜索引擎作为获取因特网上海量信息的重要手段,是信息检索领域重要的研究课题,随着信息技术的不断发展,因特网上的信息量也与日剧增,内容庞大,组织松散。因此如何优化搜索引
随着海洋技术的发展,海洋研究领域对海洋环境数据的需求不断增大,由于海洋环境数据的调查方式不同,不同测量仪器测得的数据格式多样,使得海洋环境数据不能充分共享。此外,由
科学计算可视化是将科学与工程计算等产生的大规模数据转换为图形、图像的有力工具。海量、多分辨率、多时相、多类型海洋观测数据及模式分析数据的产生,无疑能给海洋研究工
随着网络技术以及多媒体技术的飞速发展,视频以其突出的优势深入地影响着社会生活,成为了传达信息的主要方式。正因如此,各种音频、视频编码标准也不断制定推出,视频格式繁多
船舶智能避碰问题研究,特别是多目标避碰问题,一直以来是智能航海领域的研究热点和重点。船舶碰撞事故不仅会造成巨大的经济损失和人员伤亡,也会对环境造成巨大破坏。多目标
伴随着信息化的不断普及与互联网技术的不断创新,信息过载问题从更多、更广的方面影响着我们的生活。推荐系统已经成为继搜索引擎之后处理信息过载问题的又一有力武器。如今
纹理合成及分类是近年来一个比较活跃的研究领域,在数字图像处理、计算机视觉以及模式识别领域有着非常广泛的应用背景。纹理合成的目的是产生一幅比样本图像大的新图像,新图
学位
随着Web的迅猛发展,Web上网页的数量已经超过万亿级,并且其中大部分都是深层网络(Deep Web)的数据。这些数据呈现出规模巨大、结构化程度高、动态性与异质性并且按领域分布的
随着传感器、图像处理技术的飞速发展,图像融合已成为信息领域的热点课题之一,其应用潜力得到了充分的关注与重视。一方面图像融合广泛应用于目标探测、识别与跟踪等军事领域