论文部分内容阅读
随着Android平台的快速发展,Android目前已成为拥有最多应用程序数量和最大用户基数的智能手机操作系统。在各种商业利益的驱使下,针对Android软件数据的攻击日益增多。虽然Android提供了诸如进程沙箱隔离机制、权限声明机制以及应用程序签名机制等安全机制对系统的安全性进行保护,但仍然挡不住无数攻击者针对其系统漏洞及软件漏洞的攻击,Android的软件数据安全在这一过程中受到严峻的挑战,特别是一些用户隐私数据或重要账号密码数据。因此,开发者开发应用程序时,在Android现有的安全机制的基础上,还需要采取更多新的安全措施来保护软件数据的安全,从而维护用户及软件所有者本身的利益。在此背景下,本论文以保证Android平台的软件数据安全为目标,详细分析了Android平台的体系结构、安全机制及其存在的软件数据安全威胁,并对攻击者获取Android平台软件数据的常用手段进行了深入分析,最后给出了基于多层防护的Android软件数据保护方案的总体设计与详细设计,实现了基于密码防护、逆向防护、dex(Dalvik Executable)防护、通信防护、组件防护、内存防护以及旁路数据防护七大防护的Android软件数据保护方案。本文的主要工作有以下几点:1)在对Android平台的体系结构和安全机制进行详细的分析之后,对Android平台的软件数据面临的安全威胁进行全面的调研和分析。2)以实例介绍的方式详细分析了攻击者获取Android平台软件数据的常用手段,分析了这些手段背后利用的系统漏洞及软件漏洞。3)设计并实现了基于多层防护的Android软件数据保护方案,详细介绍了系统各层的功能以及各层之间的依赖关系。多层防护方案的各层不是独立的,而是构成一个整体协同保护用户的软件数据安全的。其中密码防护是整个系统的基础,逆向防护与dex防护可有效保护其他各层的代码安全,通信防护模块则保护其他模块的通信数据安全不受攻击。4)通过具体的模拟攻击与反攻击实例分析本方案的抗攻击性,并通过性能测试,证明了本方案系统的可用性。