适用于Android操作系统的统一安全性增强框架外文翻译资料

 2022-08-14 02:08

J Supercomput (2014) 67:738–756 DOI 10.1007/s11227-013-0991-y

Unified security enhancement framework for the Android operating system

Chanhee Lee · Jonghwa Kim · Seong-je Cho ·

Jongmoo Choi · Yeongung Park

Published online: 6 August 2013

copy; Springer Science Business Media New York 2013

Abstract In these days there are many malicious applications that collect sensitive information owned by third-party applications by escalating their privileges to the higher level on the Android operating system. An attack of obtaining the root-level privilege in the Android operating system can be a serious threat to users because it can break down the whole system security. This paper proposes a new Android security framework that can meet the following three goals: (1) preventing privilege escalation attacks, (2) maintaining system integrity, and (3) protecting usersrsquo; per- sonal information. To achieve these goals, our proposed framework introduces three mechanisms: Root Privilege Protection (RPP), Resource Misuse Protection (RMP), and Private Data Protection (PDP). RPP keeps track of a list of trusted programs with root-level privileges and can detect and respond to malware that illegally tries to acquire root-level privileges by exploiting system-level vulnerabilities. RMP keeps track of a list of critical system resources and can protect system resources from il- legal manipulation by malicious applications. PDP keeps personal information safe by enforcing strict access controls so that even privileged applications cannot access usersrsquo; private data if the applications violate the least privilege rule. The framework

C. Lee J. Kim S.-j. Cho (B) J. Choi

Department of Computer Science, Dankook University, Yongin-si, Gyeonggi-do, Korea

· · ·

e-mail: sjcho@dankook.ac.kr

C. Lee

e-mail: lchan12@dankook.ac.kr

J. Kim

e-mail: zcbm4321@dankook.ac.kr

J. Choi

e-mail: choijm@dankook.ac.kr

Y. Park

The Attached of ETRI, Jeonmin-dong, Yuseong-gu, Daejeon, Korea e-mail: santapark@ensec.re.kr

is verified using experiments on the Android operating system, which shows that our framework achieved the goals with processing overheads of 25.33 % on average.

Keywords Smartphone security · Android · Privilege escalation attacks · System integrity · Privacy protection · Unified security framework

Introduction

As smartphone usage increases, more developers become involved in implementing applications for smartphones (also called as Apprsquo;s). The number of Apprsquo;s in the Ap- plersquo;s App store has been reported to be more than 3 billion [1], and Android Apprsquo;s are expected to be more than that number since it has the open-platform strategy. How- ever, this explosive increase in the number of applications makes Android security even more important. In this paper, we discuss security threats related to smartphones and propose a novel security framework especially for the Android operating system (OS).

Since many applications are developed by various third-party developers and com- panies, the Android OS treats all applications as potentially malicious. The Android OS provides two security enforcing features: sandboxing and the privilege-based ac- cess control. Each application runs in its own virtual machine so that its execution is isolated, and the privilege-based access control orchestrates data to be referenced only by applications that have the relevant permissions.

However, the Android OSrsquo;s security model has been shown to be still vulnerable to application-level privilege escalation attacks [2–6] including confused deputy at- tacks and collusion attacks. The Android OS does not deal with transitive privilege usages, which allows applications to bypass restrictions imposed by the permission model. Therefore, the permission-based security model cannot fully protect userrsquo;s personal information under privilege escalation attacks and, as a result, a variety of privilege escalation attacks have been reported on the Android OS. Many studies have shown that malicious applications can be installed on the Android OS and can steal usersrsquo; private data through traditional attacks or privilege escalation attacks (see, for example, the BaseBridge [6], DroidKungFu [4, 6, 7], DroidDream [4, 6, 8], and

GingerMaster [9]).

In the Android OS, if an application (or process) obtains the root privilege, the application has full accesses to the file system (we refer to this application as a priv- ileged application). Since a privileged application has a full access permission to the system, privilege escalation attacks grant malware or unauthorized applications with the full access permission to the system. If an attacker can illegally elevate him- self/herself to root privileges, he/she can gain accesses to any sensitive data on the userrsquo;s smartphone.

To countermeasure against privilege escalation attacks and to protect personal in- formation, various security extensions and enhancements to the Android OS have been proposed, such as XManDroid [2, 3], RGBDroid [5], Kirin [10], Saint [11], Apex [12], TaintDroid [1], QUIRE [13], and so on. However, as we will elaborate in further details on related work in Sect. 2, none of the existing solutions sufficiently

and efficiently protect usersrsquo; private information from privilege escalation attacks. Some approaches cannot detect transitive permission usage attacks or fail to protect the system again

剩余内容已隐藏,支付完成后下载完整资料


适用于Android操作系统的统一安全性增强框架

摘要

当下,有许多恶意程序将其权限提升到Android操作系统上的更高级别,从而收集第三方应用程序的敏感信息。当恶意程序在Android操作系统中获取root权限时,他的攻击可能会对用户造成严重威胁,因为这很大概率导致整个系统的安全性被破坏。本文提出了一种新的Android安全框架,该框架可以满足以下三个目标:防止权限提升攻击;维护系统完整性;以及保护用户的个人信息。为了实现这些目标,我们提出的框架引入了三种机制:root权限保护(RPP),资源滥用保护(RMP)和私有数据保护(PDP)。RPP能够跟踪具有root权限的受信任程序的列表,利用检测并响应非法尝试利用系统漏洞获取root权限的恶意软件;RMP跟踪重要系统资源,并避免系统资源受到恶意应用程序的非法操纵;PDP执行严格的访问控制以确保个人信息安全,如果被授权的应用程序违反了最小权限规则,那么即使应用程序已被授权,它也将无法访问用户的私有数据。框架已在Android操作系统上进行过实验,验证了功能,并实现了平均处理开销为25.33%的目标。

关键字:智能手机安全性、Android、权限提升攻击、系统完整性、隐私保护、统一安全框架

1.介绍

随着智能手机使用率的提高,越来越多的开发人员开始编写App,即智能手机上的应用程序。据报道,应用商店中的App数目已大于30亿[1],而Android App又具有开源性,这个数据恐怕很快就会被超过。随着应用程序以如此惊人的数量爆炸性增长,Android安全性也随之愈发重要。我们将在在本文中讨论智能手机面临的安全威胁,提出一种针对Android操作系统(OS)的全新安全框架。

由于绝大部分应用程序都是由第三方开发人员或公司开发的,因此Android操作系统会将所有应用程序都视为潜在恶意软件。Android OS提供了两个安全性强制功能:沙箱和权限访问控制。每个应用程序都在自己的虚拟机中运行,以便于程序孤立地运行;并且权限访问控制会将数据分组,以便于只被相关权限应用程序的引用。

然而,Android OS的安全模型仍然容易受到应用程序的权限提升攻击[2–6],包括责任混淆攻击和合谋攻击。Android操作系统不会阻止用户改变权限,这使应用程序可以绕过权限许可的限制。因此,权限安全模型在权限提升攻击下无法完全保护用户的个人信息,Android OS报道了各种权限提升攻击。许多研究表明,恶意应用程序可以安装在Android OS上,并且可以通过传统攻击或权限提升攻击来窃取用户的私人数据(参见BaseBridge [6], DroidKungFu [4, 6, 7], DroidDream [4, 6, 8]和GingerMaster [9]).

在Android操作系统中,如果应用程序或进程获得了root权限,则该应用程序具有对文件系统的完全访问权限(我们将此应用程序称为权限应用程序)。由于权限应用程序具有对系统的完全访问权限,因此权限提升攻击会向恶意软件或未经授权的应用程序授予对系统的完全访问权限。如果攻击者可以非法将自己提升为root用户权限,则他/她可以访问用户智能手机上的任何敏感数据。

为了对付权限提升攻击并保护个人信息,对Android OS的各种安全扩展和增强功能已被发表,例如XManDroid [2, 3],RGBDroid [5],Kirin[10],Saint[11], Apex [12],TaintDroid [1],QUIRE[13]等等。但是,正如我们将在本文中详细阐述相关工作的更多细节一样。目前没有任何方案能够在权限提升攻击之下足量且有效地保护用户私人信息,很多方案要么无法检测到传递权限使用攻击,要么在恶意软件或复杂的运行时无法保护系统,至于需要依赖用户做出安全决策并且效率低下的方案那就更多了。

在本文中,我们提出了一个统一高效的内核级安全框架,用于抵御权限提升攻击,禁止恶意应用程序操纵关键系统资源,并保护用户的私人数据在Android系统中不受非法权限的侵害。我们提出的框架可以通过引入三种机制来保护Android系统:root权限保护(RPP),资源滥用保护(RMP)和私有数据保护(PDP)。RPP机制利用称为pWhiteList的数据结构来跟踪具有root权限的受信任程序列表,任何没有记录在pWhiteList中的任何程序都不能以root权限运行。如果任何列表中未列出的恶意软件或应用程序通过权限提升攻击获得root权限后,并在没有相关权限的情况下尝试打开,读取或写入文件,我们的框架就能够使用RPP机制检测并阻止访问。RMP机制使用CriticalList数据结构跟踪重要的系统资源,这种机制可以防止此类关键资源被具有root权限的进程修改。

为了保护包括智能手机中的私人数据在内的个人信息,我们的PDP机制不允许受信任的程序通过在权限访问控制中实施最小权限原则来访问敏感数据。攻击者或恶意软件可以通过直接利用root权限或提升权限的受信任程序中的漏洞来逃避RPP机制,PDP机制则可以禁止系统调用检查不受控制地访问私有数据,从而阻止RPP机制被攻击者或恶意软件逃避。

我们的框架使用以系统为中心的方法,允许内核根据应用程序用户ID和文件强制执行安全决策。因此,它不需要应用程序开发人员向其应用程序额外添加安全功能。我们证明了所提出的框架可通过为私有数据提供额外的隐私保护措施来有效地检测权限提升攻击,保持Android系统的一致性并减轻攻击的影响。

我们提出了一个安全框架,以防止权限提升攻击,维护系统完整性并保护每个部分的用户私人信息。我们通过使用与权限相关的实际攻击情形的一些实验,证实了该框架的有效性。

2 Android系统安全性背景和相关工作

在本节中,首先,我们探讨Android系统中的敏感信息是如何受权限提升攻击影响并泄漏的。然后,我们调查了几种保护此类泄漏的安全实施技术,并讨论了这些方法与我们的方法有何不同。

2.1 通过权限提升攻击泄露信息

Android操作系统支持多种安全功能,例如权限访问控制和沙箱[14].权限访问控制协调数据,使其仅被具有相关权限的应用程序引用。但是,具有不同权限的多个应用程序之间的协作在Android环境中频繁发生,这可能会导致权限提升攻击[2, 3, 5, 6].权限提升攻击的典型示例是混淆攻击和合谋攻击。混淆攻击就是恶意应用程序混淆另一个脆弱的权限应用程序接口,从而实施权限提升攻击。恶意软件合谋将权限组合,允许他们执行超出其单个权限的操作,最终实现权限提升,这就是合谋攻击。

就像Base-Bridge [6], DroidKungFu [4, 6, 7], DroidDream [4, 6, 8]和GingerMaster [6, 9]. BaseBridge [6]等所报道的,权限提升攻击的关键在于,恶意软件执行权限提升攻击以提升其权限,使它可以将其他应用程序下载并安装到用户的智能手机上,可以进行多次攻击,致使私密数据被窃取。安装受感染的应用程序后,恶意软件会尝试利用udev Netlink消息验证权限升级漏洞[9]以获得root权限,BaseBridge恶意软件使用HTTP协议与中央服务器通信并传输个人信息,BaseBridge还可以将提供付费服务的SMS消息发送到预定数量,因此,BaseBridge恶意软件被称为AdSMS。

已出现在Google市场中的DroidDream[6, 8],使用与Windows操作系统中的传统特洛伊木马类似的机制来窃取个人信息,一些研究人员将DroidDream变体称为移动僵尸网络。

第三方市场中出现了更高级的恶意软件。其中一个例子是利用了权限升级漏洞的DroidKungFu [6, 7],使用了至少四个众所周知的权限升级漏洞,它也被称为“Rage against the Cage”。DroidKungFu恶意软件收集智能手机的个人信息,例如IMEI(国际移动设备身份识别)、设备ID和SDK版本,并将其发送到远程服务器,然后尝试获取root外壳。恶意软件获得的root外壳程序从C&C(命令和控制)服务器接收命令,并安装隐藏的后门应用程序。结果,感染了DroidKungFu的智能手机变成了bot或zombie。

GingerMaster [6, 10]与DroidKungFu类似,它会感染正常的Android应用程序。一旦应用程序被感染,被感染的应用程序将注册服务,在设备上收集个人数据,并将信息发送到远程服务器并尝试获取rootshell。rootshell会安装另一个恶意应用程序,该应用程序会从C&C服务器接收命令。

2.2安全执行技术

最近,在Android系统上已提出了各种技术加强严格的安全性,以防止权限提升攻击。这些技术的例子包括Kirin[11],Saint[12], Apex [1], TaintDroid [13],QUIRE[15], XManDroid[2, 3]和RGBDroid [5].

Kirin系统是Android应用程序安装程序的扩展,它支持基于安全性的安装决策[11].Android操作系统配备了许多扩展的API(应用程序编程接口),包括用于访问硬件,配置和用户数据的API,而这些API由于与系统安全性相关,因此受安装管理系统监视和控制。在安装含一组API的应用程序时,Kirin系统会暂停安装进程,因为这些API最终有可能违反给定的系统策略。它将够检查权限以推断API的用法,并维护预定义的安全规则以匹配应用程序使用的危险权限组合。然而,Kirin系统使用的静态规则只能分别分析每个独立的应用程序,无法在协作泄漏的应用程序的侵害下保护用户。

Saint[12]扩展了Kirin系统的功能,允许在启动给定应用程序之前对完整的系统许可状态进行运行时检查。它采用细粒度的访问控制模型,并管理安装时许可分配和运行时使用。为了防止权限提升攻击,Saint要求应用程序开发人员在其应用程序界面上分配适当的安全策略,并向其应用程序添加安全功能。但是应用程序开发人员可能无法考虑所有安全威胁,因此,与以系统为中心的方法相比,这种开发人员定义的权限系统更容易出错。

Apex [1]提供了针对同一问题的另一种解决方案,那就是让用户负责定义程序运行时基于现有Android权限工具的权限限制。Saint和Apex方法允许用户指定静态策略以保护自己免受恶意应用程序的侵害,但不允许应用程序做出动态策略决策。但是,Apex与Saint都不能解决将权限分配给多个应用程序的权限提升攻击,并且Apex依赖于用户来做出安全决策。

TaintDroid [13]提出了一种动态污点分析技术,可以防止未经授权的敏感数据泄漏和程序运行时的攻击。该框架尝试使用元数据标记对象,以跟踪信息流并根据数据通过系统的路径实施策略,通过检测应用程序的DEX字节码来标记流经系统的每个变量,指针和进程间通信(IPC)消息,并使用污点值来实施其污点传播语义,它通过监视出站网络连接来限制将污染的数据传输到远程服务器。TaintDroid的缺点是权限提升攻击也与控制流有关,然而它主要处理的却是数据流。同时,使用TaintDroid跟踪控制流很可能会导致更高的性能损失。此外,它无法检测到利用秘密渠道泄漏敏感信息的攻击[2, 3]。

QUIRE[15]是旨在克服利用混淆攻击的框架。它专注于以轻量级的方式提供证明信息并防止敏感数据的访问,而不是限制数据流。当Android应用程序之间存在IPC请求时,它会通过跟踪IPC的调用链来强制应用程序以其调用者降低权限的状态运行。QUIRE的方法只需要修改IPC子系统,而不需要依赖检测代码,因此QUIRE可以使用使用本机库的应用程序,并且可以避免检测代码传播污染值所带来的开销。但是,这种方法是以应用程序为中心,而不是以系统为中心,因此QUIRE不能解决基于恶意合谋的应用程序的权限提升攻击。并且组件间通信(ICC)调用链是由应用程序本身转发和传播的,于是合谋应用程序可能会迫使ICC调用链遮盖原始应用程序,从而规避QUIRE的防御机制。此外,呼叫链的接收者意外拒绝访问可能会导致应用程序功能异常或者在呼叫者一方崩溃[2, 3].

XManDroid(Android上的扩展监视)是系统级的安全框架,允许Android OS监视中间件级别的应用程序通信通道[2]和底层Linux内核级别[3],该框架在运行时符合以系统为中心的安全策略。作者对Android的系统行为(使用流行的应用程序)进行启发式分析,以识别攻击模式并将不同的攻击模型分类,并指出待解决的问题。XManDroid在IPC之间建立语义链接,使参考监视器能够在中间件级别验证调用链,并在内核级别实现对文件系统和本地Internet套接字的强制访问控制,还提供了内核和中间件之间的回调通道。XManDroid的方法与本文的方法不同,因为XManDroid侧重于预防,而本文使用的方法则注重反应。

RGBDroid(Rooting Good Bye on Droid)[5]是我们以前的工作,是一种新的Android安全实施技术,可检测并响应与权限提升或滥用相关的攻击。RGBDroid引入了两个数据结构,即pWhiteList和CriticalList。前者是受信任程序的列表,而后者是权限应用程序也无法修改的关键资源列表。关键资源定义为一组资源,如果修改了这些资源,则会破坏Android系统的一致性,从而最终影响Android框架和用户应用程序的行为。

我们还在[16]提出了一种创新的RGBDroid机制。随着恶意应用程序的巧妙开发,其中一些应用程序可以利用具有root权限的受信任程序的漏洞来规避以前的RGBDroid的保护。为了克服这个困难,[

剩余内容已隐藏,支付完成后下载完整资料


资料编号:[235482],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。