CRePE:实现安卓细粒度上下文安全策略执行
1. 移动安全现状与CRePE的提出
在移动设备安全领域,此前提出了基于合约安全概念或系统调用插入的解决方案,但这些都无法让用户定义运行时的细粒度上下文相关安全策略。在手机之外的领域,虽对细粒度策略执行有研究,但因会带来过高开销,无法应用于智能手机。
已有工作中,如Saint是一个针对安卓的安装和运行时应用管理系统,它侧重于应用策略;而CRePE的目标是执行用户(或其他方)定义的细粒度上下文相关策略。同时,研究人员对基于上下文的访问控制表现出兴趣,不过不同研究中“上下文”的含义有所不同。
2. 安卓系统概述
安卓是由开放手持设备联盟(OHA)开发的基于Linux的移动平台。其应用大多用Java编写,编译成自定义字节码(DEX),由Dalvik虚拟机(DVM)运行。每个安卓应用在自己的地址空间和单独的DVM中执行。
安卓应用通过预定义组件开发,包括代表用户界面的Activity、执行后台进程的Service、用于应用间通信的Broadcast Receiver以及存储和共享应用数据的Content Provider。应用组件通过消息(Intents)进行通信,安卓的组件间通信(ICC)类似于Unix系统的进程间通信(IPC)。
在安全方面,安卓结合了两个层面的执行机制:
- Linux系统层面 :安卓是多进程系统,每个应用在自己的进程和地址空间中运行。每个应用包安装后会被分配一个唯一的Linux用户ID,防止其他应用干预其操作,除非有明确声明的所需权限。
- 应用框架层面 :通过
超级会员免费看
订阅专栏 解锁全文
46

被折叠的 条评论
为什么被折叠?



