论文部分内容阅读
随着智能终端在全球范围内的热销,众多厂商投身其中。以Google为首的手机开放联盟也推出了自己的系统Android。Google对Android系统的大力推广使得Android应用呈现爆炸式的增长,而随之而来的则是针对Android应用的恶意程序的泛滥。本文旨在通过对Android内核、安全机制、漏洞挖掘方面的分析,研究Android应用程序的准确和可靠的安全性分析,提出Android应用安全漏洞的检测技术和方法,并实现相应的工具。本文首先分析了国内外针对Android平台及Android应用的安全研究现状。接着,研究了基于控制流和数据流的Android应用安全分析方法和技术:1)提出了Android应用权限检测方法,针对Android应用中API、Content Provider和Intent的不同权限应用情况,实现了对Android应用权限申请和使用的分析。2)提出了Android应用通信系统检测方法,根据接收和发出消息的不同特点,从静态和动态两个角度来检测消息发送和接收的安全性。3)提出了基于控制流和数据流的Android应用分析技术,为权限检测和通信系统分析提供了可靠的数据。本文使用了迭代式的补全方法来提供更加准确的程序控制流图,而且针对Android代码定制的分析策略和IDA Pro的使用使得对Android应用分析更加准确。在此基础上,本文开发了信息抓取工具,为安全分析提供所需要的Android版本相关数据;开发了静态分析工具,分析Android应用的权限和通信系统的安全性。文中给出了这两个工具的需求模型和设计模型。最后,本文对信息抓取工具和静态分析工具进行了覆盖率、准确性和性能方面的实验,结果表明本文所提出的安全检测分析方法是有效的,所研发的信息抓取工具和静态分析工具是可靠的,能够支持Android应用的安全性分析。根据Android应用定制的静态分析工具可以根据Android应用的特点进行安全性分析,因此可以更加准确地找出Android应用中可能存在的问题。