安卓平台安全性增强关键技术的研究

被引量 : 18次 | 上传用户:ji5214
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
互联网技术的进步推动了计算模型的深刻变革。继云计算之后,移动计算是现如今炙手可热的新型计算模型。通过移动互联技术,移动设备可以方便地接入互联网,这使得传统在移动终端上难以满足的复杂计算需求可以便捷地转移到云平台中。与此同时,移动设备提供的强大编程能力以及便携的特点,极大丰富了移动互联计算能够带来的服务。基于对移动智能终端飞速发展的前景预期,IT工业界各大巨头如谷歌、苹果、微软均推出自己的移动智能终端平台。在移动计算中,得益于开源、免费特性的安卓平台在全球范围内获得了巨大的成功,目前已广泛应用于日常消费领域、企业领域、政府及军队、汽车、工业制造等领域。随着安卓平台在关系到国计民生的各个领域发挥越来越大的作用,其安全性问题变得不容忽视。目前,安卓平台恶意软件泛滥、软件漏洞层出不穷,安全性增强技术已经成为安卓平台在各个领域应用中亟需研究的一个问题。然而,安卓平台在系统结构、应用分发模式、版本管理、编程模型及运行平台方面的独有特征在为安卓平台普及化助力的同时,也为安卓平台安全性增强技术的研究带来了诸多挑战,面临的突出问题有:1)海量安卓应用的分析,针对安卓应用的分析技术必须支持海量应用的自动化分析。2)多层软件栈的协同,针对安卓平台的安全性增强研究需要合理地协同Linux内核与安卓框架层来实现完备的安全性增强方案。3)灵活的部署能力,考虑到安卓版本的碎片化问题,针对安全漏洞的修复技术需要不依赖于对系统或者应用程序的修改。4)对性能的影响,由于安卓平台运行在计算能力受限的无源设备中,安全性增强研究需要兼顾到系统性能的优化技术。当前,安卓平台及其生态系统正在快速发展,针对安卓平台安全性的研究也在不断进行。现有研究主要集中在以下几个方面:1)恶意软件分析与检测,致力于通过对软件行为的分析提取代表恶意软件的行为特征,以实现对已知和未知恶意软件的检测。例如DroidScope通过在本地代码执行级别识别Java代码的执行,从而可以有效地分析安卓恶意软件中Java代码的行为。2)漏洞分析与检测,致力于通过对安卓平台编程机制的剖析,分析攻击场景并采用代码分析技术检测现有应用程序中的漏洞。例如CHEX通过数据流分析和代码切片枚举技术实现了对应用程序中组件劫持漏洞的精确检测。3)系统安全性增强,力图通过对安卓系统现有安全机制进行增强,以防范针对安卓系统和应用软件的攻击方式。例如,IPC Inspection通过引入进程通讯自省技术,可以防范应用程序间的权限委托攻击。TrustDroid提出基于域的程序隔离技术,力图保护受信任的程序不被未受信任程序攻击。然而,当前针对安卓平台安全性的研究存在着一些问题,大部分系统安全性增强工作只能部分地解决现有针对安卓系统的攻击。由于还未完全考虑到安卓系统安全机制自身存在的问题,现有工作无法有效地在系统层面对安全性进行增强,进而无法通用地防范现有针对安卓系统的多种攻击。另外,现有软件分析工作无法有效地刻画安卓软件与系统之间的敏感行为以及安卓软件内部的敏感行为。安卓平台在系统架构、编程模型等方面的独有特征使得现有方法在分析效果、分析完整性等方面效果很差。此外,安全性技术的引入会带来显著的性能开销。目前针对安全技术的研究并未完全考虑到安卓平台运行环境受限带来的对性能的挑战。本文在充分理解安卓平台特征的基础上,针对安卓平台的两大重要组成部分一应用商城和终端系统提出了系统化的安全性增强方案。本文从软件分析、系统加固和性能优化三个角度提出了增强安卓平台安全性的关键技术,即基于权限使用行为的程序安全性分析技术、基于上下文跟踪的系统安全性增强技术、基于细粒度权限框架的安全性应用研究、基于寄存器映射的系统性能优化技术。与现有研究相比,本研究借助于对安卓平台编程模型和安全机制的深入分析,从真实的安全问题出发设计出适用于应用商城和终端系统的安全性增强技术方案,测试表明这些技术可以有效地分析安卓应用软件的行为和提高安卓系统的安全性。此外,本研究提出的性能优化技术可以显著提升系统性能,弥补安全性增强技术的引入带来的性能开销,从而更好地支持这些技术在真实环境中的应用。具体而言,本文的主要贡献如下:1.首次提出了基于权限使用行为的软件安全性分析技术,设计并实现了VetDroid分析系统以完成对安卓软件行为安全性的自动化分析。VetDroid系统基于权限使用行为,通过对安卓软件的动态分析,在分析期间自动化提取软件内部与权限有关的行为,从而离线构建出软件对权限的使用行为模型。为了全面地、精确地提取软件在执行过程中对权限的使用行为,VetDroid系统设计了系统化的权限分析技术,以识别软件对权限的显式使用和隐式使用。VetDroid系统不但可以有效分析恶意软件中存在的恶意行为,还可以分析良性软件中存在的不良行为。通过对软件分析过程进行并行化,VetDroid系统平均仅需2.2分钟即可完成对一个软件的分析。2.首次提出基于上下文跟踪的系统安全性增强技术,设计并实现了FineDroid系统以支持上下文敏感的权限管理。FineDroid系统设计了系统级的上下文跟踪技术,自动地在程序执行过程中跟踪上下文信息。FineDroid系统中的上下文信息不但包括单个应用程序内部的执行上下文,还包括多个协作应用程序之间的交互上下文。为了支持上下文信息在程序执行过程的无缝传播,FineDroid重点解决了上下文信息在程序组件交互、线程交互以及事件交互过程中的传播。为了实现灵活的权限控制,FineDroid系统设计了一套规则语言以描述上下文敏感的权限管理策略。FineDroid系统可以对程序中使用权限的行为进行灵活和强有力的控制,从源头杜绝程序对权限的滥用,从而提升系统的安全性。3.首次基于上下文敏感的细粒度权限框架进行安全性增强应用的研究,面向终端用户、系统管理员和应用开发者设计并实现了三个安全性增强系统。Aurasuim+系统提供给终端用户即时权限授予的能力。通过Aurasuim+,用户可以将每一次权限授予的决定与当时应用程序的使用场景进行关联,从而一方面可以有效地识别应用程序申请权限的目的,另一方面降低对用户的干扰。DroidFence系统提供给系统管理员自动化修复权限泄露漏洞的方法。基于DroidFence,系统管理员可以通过添加规则的方式在不修改任何应用程序和安卓系统的前提下,修复应用中存在的权限泄露漏洞。CompJail系统提供应用开发者划分程序内部细粒度权限沙箱的能力。应用开发者可以对内嵌的第三方代码插件进行单独的权限控制,从而实现对未验证的代码插件进行限制。4.首次提出基于寄存器映射的系统性能优化技术,设计并实现了Swift即时编译系统,在不牺牲生成代码质量的前提下完成对Java方法的轻量级动态编译。Swift系统针对采用虚拟寄存器的Java字节码,基于Java程序在使用虚拟寄存器时的特性,发现超过90%的Java方法使用不超过11个虚拟寄存器。由于目前安卓设备大多运行在基于RISC架构的ARM处理器上,而ARM处理器具有丰富的物理寄存器资源。Swift系统通过将物理寄存器直接映射到虚拟寄存器实现快速的寄存器分配。此外,由于在将Java代码编译到基于虚拟寄存器的字节码时已经使用了近乎最优的寄存器分配算法,因此通过寄存器映射生成的二进制代码具有较高质量的寄存器使用策略。实验证明,与安卓原有的即时编译系统相比,Swift系统可以在引入很小的内存增长的情况下,系统性能提升比达到40%。
其他文献
拓展案例的学习是案例教学的重要环节,现行高中地理教科书均在主要案例之外提供了拓展案例。笔者以"区域可持续发展"为例,对中图版地理教科书中拓展案例的编制情况进行研究,
经济责任的目的是确保财产的安全性和稳定性,同时确保会计信息的真实性,并阐明经济责任人的行政责任,可以说,经济责任审计涉及面很广。20世纪末修订的关于审计的新法律包括了
网络效应的本义在于产品或者服务的销售量越大,其对于用户的价值就越大。由此引发的问题是,对于现有用户来讲,网络效应是否会增加用户的转换成本,进而锁定用户;对于新进入企
<正> 在著作权法律关系中,其客体是作品。根据著作权法第3条规定,我国著作权法保护的作品有九类之多,涉及到文学、艺术和自然科学、社会科学、工程技术等领域。尽管受著作权
在宋元时期,江西地区是在南方地区的墓葬中比较具有地方特色的区域。在随葬器方面,江西地区是南方地区典型随葬器堆塑罐的发源地和中心演变区。本文以江西地区的宋元时期墓葬
<正>从科幻到现实,声控渐行渐近。多年前,在科幻作家和未来学家想象的文章中以及科幻大师的电影中,人们可以用声音来控制生活中的设备。多年后的今天,这种理念正在试图改变我
以系统净功、不可逆能量损失等作为目标参数,建立海洋温差能ORC系统多目标函数优化体系,研究蒸发温度、冷凝温度、工质流量、温海水出口温度等对系统性能的影响。研究结果表
市场环境下供电企业面临着各种各样的风险,风险需要进行量化分析,以便在此基础上进行有效的风险规避,这方面的研究工作在我国刚刚开始。本文针对供电企业的各种风险源,建立了
《大宅门》是作者郭宝昌的一部现代小说著作,但是整个故事从1880年一直写到改革开放,跨越中国百年的历史发展。其中的称谓语数量繁多、变化多样,与时代发展紧密相连。因此本
随着深化医药卫生体制改革的工作逐渐推进,2010年年底财政部、卫生部发布了新的《医院财务制度》、《医院会计制度》,该两项制度针对我国独立核算的公立医院提出了更高的期望