【Android论文栏目提醒】:网学会员鉴于大家对Android论文十分关注,论文会员在此为大家搜集整理了“基于Android权限机制的动态隐私保护模型 - 期刊论文”一文,供大家参考学习
第 29 卷第 9 期 计 算 机 应 用 研 究 Vol. 29 No. 9 2012 年 9 月 Application Research of Computers Sep. 2012 基于
Android 权限机制的动态隐私保护模型 戴 威,郑 滔 ( 南京大学 软件学院,南京 210093) 摘 要: 针对
Android 平台自身粗粒度权限机制的缺陷以及缺乏有效预防程序间隐私泄露机制的问题,提出一 种改进的细粒度权限配置机制与隐私数据动态着色隔离相结合的
Android 隐私保护模型。
通过对
Android 应用 程序权限进行细粒度的动态配置,阻断隐私数据从程序内部泄露的途径,利用隐私数据着色跟踪实现对程序间 传播的包含不同隐私权限标签的消息的隔离控制。
通过大量实验的反复测试,该模型可以有效保护
Android 程 序内部的隐私数据,及时发现程序间权限提升攻击进而实现隐私数据隔离,从而全方位实现
Android 隐私数据的 保护,并为以后相关研究提供了新的方向。
关键词:
Android 平台; 隐私保护; 权限提升攻击; 细粒度权限; 动态着色; 组件间通信 中图分类号: TP309 文献标志码: A 文章编号: 1001-3695( 2012) 09-3478-05 doi:10. 3969 / j. issn. 1001-3695. 2012. 09. 074 Dynamic privacy protection model based on
Android permissions DAI Wei,ZHENG Tao ( Software Institute,Nanjing University,Nanjing 210093,China) Abstract: The privacy mode in
Android has some defects and is lack of effective mechanisms to prevent loss of privacy be- tween applications. This paper proposed a new privacy protection model by using the fine- grained permissions and privacy data tainting. Firstly the method could prevent loss of privacy from a single application by dynamically configuring the permissions in a fine- grained manner. By leveraging the track of the tainted privacy data it could prohibit the propagation of the privacy da- ta between applications which had different permissions on the accordingly privacy tag. Repeatly experimental tests show the model is able to effectively protect the privacy of data within the
Android application,and to detect the privilege escalation at- tacks between applications so as to isolate the private data. As a result,the full range of private data within
Android is in pro- tection,and leads a new direction for related research in the future. Key words:
Android platform; privacy protection; privilege escalation attack; fine- grained permissions; dynamic tainting; inter-component communication 踪,当隐私数据通过网络接口离开系统时向用户发送警告,缺0 引言 点是 TaintDroid 项目只是作为隐私数据流监视的工具,并没有 〔1〕 提供有效防控隐私泄露的机制。
但是基于 TaintDroid 平台的 智能手机的使用越来越广泛。
最新一期的 Gartner 报告 隐私防控机制成为近年研究的热点,本文项目同样在此基础上 2011 年第三季度全球手机销售达到 4. 405 亿,指出, 其中 An- 〔7〕 作了进一步防控拓展。
TISSA 项目 是近期在
Android Marketdroid 达到智能手机市场 52. 5 的份额,较去年增加了一倍,占 发布的隐私保护程序,该项目向用户提供了修改程序隐私相关据智能手机操作系统的第一位。
越来越多的用户习惯于利用 权限的功能以期提供对应用细粒度的权限控制机制,较早的一手机来储存和处理私人及商业信息。
〔2〕 些类似应用仅仅实现了禁止某些隐私权限,却容易造成程序崩 最新研究 指出,针对
Android 平台的攻击呈现复杂多变 溃,相比之下,该方案提供了多粒度的选择,但是实验表明,针的趋势。
分析表明,大部分的攻击手段着眼于隐私层面,滥用 对多个程序组合串谋攻击造成的隐私泄露 TISSA 没有丝毫办程序权限 和 串 谋 权 限 攻 击 引 起 的 隐 私 泄 露 案 例 越 来 越 多, 法。
Soundcomber〔3〕 就是一个典型的攻击案例。
针对
Android 平台 针对传统研究方法的问题,本文提出一种细粒度权限配置的隐私安全问题,主流的研究方向集中在静态分析和动态控制 〔4〕 和数据动态着色跟踪隔离相结合的隐私保护模型 CrossDroid。
两个方面。
Enck 等人 引入一组静态的权限策略,对违反权限策略的应用拒绝安装,缺点是需要考虑所有可能的情况,不 1
Android 基本概念 〔5〕能有效预防权限提升攻击。
Felt 等人 静态分析应用是否满足程序功能所需的最小权限集并向用户提供安装建议,缺点是 1. 1
Android 架构 〔6〕误报率高。
在动态研究方面,Enck 等人 对隐私数据着色追
Android 是一个开放的移动平台框架,主要包括 Linux 内 收稿日期: 2012-02-05; 修 回 日 期: 2012-03-14 基 金 项 目: 国 家 自 然 科 学 基 金 资 助 项 目 ( 61105069 ) ; 国 家“863 ” 划 资 助 项 目 计( 2007AA01Z448) 作者简介:戴威( 1986-) , 江苏徐州人, 男, 硕士,主要研究方向为程序安全( MG0932002 software. nju. edu. cn) ; 郑滔( 1966-) , 教授, 男, 主要研究方向为程序安全. 第9 期 戴 等: 威, 基于
Android 权限机制的动态隐私保护模型 3479核层、中间件层和应用层,如图 1 所示。
其中 Linux 内核层提 制,但缺乏有效应对串谋攻击的手段。
供设备驱动和底层服务。
中间件层由本地库、
Android 运行时环境和应用框架层组成。
Android 运行时环境包括一个优化的 2 CrossDroid 模型Java 虚 拟 机 Dalvik virtual machine ( DVM ) 和 核 心 Java 库。
总的来说,CrossDroid 隐私保护模型在
Android 权限框架DVM 用于解释执行应用可执行文件。
应用框架层由提供系统 基础上提供更细粒度的控制手段( 用户可以对程序的每个隐服务的系统程序组成,其中 activity manager 负责管理应用的生 私权限项进行配置) ,并利用隐私权限标记对隐私数据动态着命周期。
本文提出的 CrossDroid 提供基于中间件的策略模型。
色跟踪防止程序间消息通信引起的隐私泄露。
Android 应用层包含了
Android 提供的核心应用并支持第三方软件。
Android 应 用 主 要 包 括 activities、services、content provi- 2 .1 CrossDroid 基本架构ders 和 broadcast receivers 四种组件。
CrossDroid 主要包括权限设置模块、隐私数据访问模块、隐 私数据着色模块和 ICC 数据监控模块,如图 3 所示。
1. 2
Android 进程间通信机制
Android 提供多种程序间通信形式。
如图 2 所示,
Android以一种基于 binder 的轻量级进程间通信模型 ICC( inter-compo- 权限设置模块向用户提供对应用程序细粒度的权限设置。
nent communication) 作为组件间通信的主要形式。
Android 同 包括一个权限设置管理软件 privilege setting manager、package样支持标准的 Linux IPC 通信机制。
此外,应用程序之间还可 manager 和 application installer 的权限扩展插槽、提供权限策略以利用 Internet socket 连接实现进程间通信。
CrossDroid 主要 配置存储的 privilege setting content provider。
关注 ICC 通信中的隐私保护机制, Linux IPC 及 socket 通信 对 隐私数据访问模块包括隐私数据源的权限检查扩展插槽,的隐私监控机制将在下一步实现。
具体指在隐私内容的提供者和服务模块添加的扩展槽。
〔7〕 权限设置模块和隐私数据访问模块与 TISSA 的设计类 似,但是在提供隐私权限选项及策略上 CrossDroid 基于 Taint- Droid 的着色标签类型提供更细粒度的对应关系,并提供更加 简单和类别化的策略定制推荐。
〔6〕 隐私数据着色模块基于 TaintDroid 项目。
TaintDroid 在 中间件级别对隐私数据进行着色实现隐私数据监视。
Cross- Droid 基于 TaintDroid 项目的着色类型与权限设置模块的细粒 度权限标签进行对应采取监控策略。
1. 3
Android 安全机制 ICC 数据监控模块主要包括提供应用权限策略配置查询
Android 的核心安全机制主要包括程序沙箱、应用签名和 服务的 privilege setting service 以及
Android 强制访问控制模块权限框架。
Android 的权限框架限制了应用程序对敏感数据 ( MAC) 扩展插槽。
MAC 扩展插槽在程序间通信发生数据交换( 如短信、通讯录等) 、资源( 如电量和日志文件) 及系统接口 向 时被触发, privilege setting service 查询程序之间相异权限是( 如 Internet、 等) 的访问。
程序所需权限列表在安装时必 GPS 否与消息着色类型重叠进而执行相应策略。
须被用户全部赋予,安装完成后不可更改,这种粗粒度的特性 2. 2 CrossDroid 流程导致了潜在的安全缺陷。
步 CrossDroid 细粒度 权 限 设 置 模 块 流 程 如 图 4 所 示, 骤 一方面,赋予程序访问隐私数据权限的负担被转嫁到没有 1) ~ 4) 描述新软件安装时,权限设置模块默认用户赋予其隐安全意识的用户头上,程序对授权隐私数据的使用不再受到控 私相关权限并存储; 步骤 5) ~ 9) 描述用户通过权限设置管理制,
Android 也不会通知用户; 另一方面,
Android 缺乏应对权限 软件对程序的隐私权限项进行配置的过程。
〔8〕提升攻击的有效机制 。
研究最新的攻击手段表明,非授权 图 5 详细描述了 CrossDroid 隐私数据访问模块的处理流应用可以利用其他程序的漏洞间接获得隐私数据; 攻击者还可 步骤 1) ~ 3) 描述
Android 自有的权限检查过程; 步骤 4) ~ 程, 〔3〕以组合多个已感染的或恶意程序形成串谋攻击 ,利用组合 10) 描述请求转发到隐私源组件时,触发权限扩展插槽查询请 〔7〕权限窃取隐私。
TISSA 应用实现了
Android 细粒度的权限机 求者的权限策略,策略禁止则返回给调用者伪造数据; 策略允 3480 计 算 机 应 用 研 究 第 29 卷许则经过 TaintDroid 处理返回着色隐私数据。
组成: privilege setting manager activity 向用户提供已安装软件 的列表; app privilege setting activity 提供配置应用每一项隐私 权限的界面。
设计权限细粒度选项时,综合文献〔 , 7〕 为向用 户提供更好的程序透明性并避免禁止权限而引起程序崩溃,仅 提供给权限项 trusted、bogus 两种选择。
此外权限管理软件提 供了类别化的软件清单分类视图并提供推荐策略配置,实现了 类别化的策略配置挖掘。
Package manager、package installer 的权限插槽负责第三方 应用安装时对程序隐私权限集的默认初始化工作。
定义 1 系统隐私权限集。
对应 TaintDroid 着色类型组合 及
Android 提供的隐私权限列表生成的 CrossDroid 隐私权限配 置集合 P { p1 ,2 , p32 } , p …, 其中 p i 的对应权限部分片段如表 1 所示。
表1 CrossDroid 隐私权限与
Android 权限对应表片段 分类 隐私权限 p i
Android 对应授予权限 q i 地理 ACCESS_COARSE_
android. permission. ACCESS_FINE_LOCATION 位置 LOCATION ACCESS_FINE_
android. permission. ACCESS_COARSE_LOCATION 信息 LOCATION 手机 READ_PHONE_
android. permission. READ_PHONE_STATE 信息 STATE 针对图 5 的处理流程,CrossDroid 程序间 ICC 数据监控模 短信息 READ_SMS
android. permission. READ_SMS块如图 6 所示( 其他三种通信形式处理机制参见下一章实现 通讯录 READ_CONTACTS
android. permission. READ_CONTACTS描述) 。
Activity manager 中 reference monitor 执行步骤 1) ~ 3)的常规权限检查后,触发 CrossDroid 的 MAC 扩展模块查询通 .