CN106446723A - 安卓移动终端数据隔离方法 - Google Patents

安卓移动终端数据隔离方法 Download PDF

Info

Publication number
CN106446723A
CN106446723A CN201610835131.0A CN201610835131A CN106446723A CN 106446723 A CN106446723 A CN 106446723A CN 201610835131 A CN201610835131 A CN 201610835131A CN 106446723 A CN106446723 A CN 106446723A
Authority
CN
China
Prior art keywords
user
user data
account
file
data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610835131.0A
Other languages
English (en)
Other versions
CN106446723B (zh
Inventor
罗俊海
刘佐婷
吴琦
付亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
University of Electronic Science and Technology of China
Original Assignee
University of Electronic Science and Technology of China
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by University of Electronic Science and Technology of China filed Critical University of Electronic Science and Technology of China
Priority to CN201610835131.0A priority Critical patent/CN106446723B/zh
Publication of CN106446723A publication Critical patent/CN106446723A/zh
Application granted granted Critical
Publication of CN106446723B publication Critical patent/CN106446723B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data

Abstract

本发明公开了一种安卓移动终端数据隔离方法,属于Android系统信息安全技术领域。本发明通过重制Android移动终端的数据存储结构,使原系统单一化存储结构转为多元化,在保障用户数据环境隔离的同时,避开对Android移动终端框架核心特性的改动。不同于传统的仅有一个用户数据分区以及对应的外置存储区的数据结构,修改后的Android系统框架接管了原有的掌管用户数据挂载、移除的服务,在多用户与数据隔离技术下,系统将拥有无限多个用户数据分区,并相互不可见。

Description

安卓移动终端数据隔离方法
技术领域
本发明涉及Android系统信息安全技术领域,特别涉及一种Android移动终端数据隔离方法。
背景技术
Android系统具有较为完善的功能接口和强大的网络互联能力,是目前主流的移动终端操作系统。相比传统移动终端,Android移动终端拥有更高性能的处理器、更大的存储空间、和更强大的移动网络数据传输能力。借助Android移动终端开展大量业务的同时,也要处理更多的个人隐私数据,因此信息安全问题变得极为迫切。Android的安全机制主要是由安全技术来保障,现有的安全技术主要包括传统访问控制、基于权限的安全模式、隔离和应用程序签名等。
传统访问控制包括自主访问控制和强制访问控制。自主访问控制机制具有传递性,是一种比较宽松的访问控制。访问权限可以在主体中自由地传递,这会导致资源拥有者失去对资源的控制,带来严重的安全隐患。强制访问控制是一种更为严格的访问控制策略,抵抗攻击能力较强。但传统访问控制的一个问题是用户与访问权限一一对应的,当用户发生变动或增加大量用户时,要进行大量的授权工作,因此传统访问控制的灵活性和便捷性较差,无法适用于数据库的大数据量要求。
基于权限的安全模式声明的权限在程序安装时获取,若用户不同意授权,则程序无法成功安装,并且权限一旦获取就无法更改。虽然权限机制阻止了程序的某些非授权行为,但基于权限机制的应用权限分类方式太过粗糙,权限控制粒度不够细致,该问题会导致应用程序申请超过本身所需的权限,存在很大的信息安全隐患。
隔离能够实现不同应用程序和进程之间的彼此隔离,一般情况下,应用程序没有权限访问系统资源或其它应用程序的资源。Android隔离系统能够保证应用程序只访问其允许的系统资源,但同时赋予了应用程序请求进入移动终端其它子系统权限的权利,所以恶意应用程序在受到隔离系统限制的同时,仍能够执行很多种类的攻击,包括资源攻击、数据丢失攻击等。
应用程序签名机制主要检测APK包(Android安装包)的完整性和发布机构的唯一性,在应用程序安装或更新时发挥其作用。该机制根据每个包的唯一性签名文件,仅针对将文件解压后进行篡改的行为,在一定程度上保护了系统安全。现有安全机制下的Android系统通常仅有一个用户数据区以及对应的外置存储区的数据结构,不能有效地保障用户信息安全。
发明内容
本发明的目的在于克服现有技术的不足,通过修改安卓移动终端的系统核心存储结构,诱导系统访问所指定位置,以达到多用户数据共存与数据隔离的效果。
本发明的目的是通过以下技术方案来实现的:通过对Android移动终端的存储框架的修改,重定义用户数据存储方式,诱导系统文件索引服务,诱导系统和用户应用仅访问指定的存储位置。
当前,在Android移动终端的框架下数据存储区主要有两大类:
(1)系统用户数据分区:用于存放用户和系统应用存活的必要数据(如:电话,短信,部分IM(即时通讯)软件的聊天记录,以及一些必要的用户服务数据)。用户没有权限直接访问本存储区的数据,仅能通过应用程序来间接访问,且本区数据不在各应用程序之间共享。
(2)用户扩展储存区(SD卡):用于存放用户应用运行所产生的、且需要和其他应用共享的数据(如:图片、视频、音乐等等),在多数系统中,这块数据存储区赋予了用户的使用权,具备配套的文件管理应用。
本发明为每个用户配置一个用户数据分区,以实现用户设置隔离、用户应用程序隔离、用户应用程序数据区隔离、和用户账号切换。在每个用户数据分区还可以实现用户扩展存储空间隔离。其中用户扩展存储空间隔离为在数据隔离基础上实现的扩展需求。
用户设置隔离:包括用户默认APN隔离和APN列表隔离(网络隔离)和其他用户设置(时区、语言、电源策略等)隔离。不同用户账户具备不同的用户设置内容,安全系统的用户设置隔离范围包含时区、语言、电源策略等可自定义的系统用户设置。安全系统通过隔离不同用户的网络设置(APN)来达到网络隔离的效果。
用户应用程序隔离:不同用户账户具备不同的应用程序安装空间,用户账户不能看到和使用其他账户的应用,各账户系统消息不共享,应用间不能互相访问或被其他账户的系统消息唤醒。
用户应用程序数据区隔离:不同用户账户具备不同的应用程序数据存储区,各用户安装的应用相互之间不能共享数据。
因而,本发明的安卓移动终端数据隔离方法包括下列步骤:
为每个用户账号创建一个私有的用户数据分区,用于存放用户的关键文件,所述关键文件包括应用软件、应用数据和系统用户设置;
并为每个用户账户配置N个私有的虚拟扩展存储区(SD卡),其中N≥1,虚拟扩展存储区用于存放用户的应用软件在运行时产生的且需要和其他应用软件共享的运行数据;
在启用用户时,基于选定的目标用户账户,将目标用户账户的关键文件从用户数据分区搬移到安卓移动终端的系统用户数据分区,使得目标用户账户的用户数据分区被系统访问;在切换用户时,基于切换的目标用户账户,将切换前的用户账户的关键文件从系统用户数据分区搬移到该用户账号的用户数据分区;并将目标用户账户的关键文件从用户数据分区搬移到安卓移动终端的系统用户数据分区,然后重启系统,使得目标用户账户的用户数据分区被系统访问。
在实现不同用户账户的用户数据(应用软件、应用数据和系统用户设置等用户数据)的数据隔离的同时,为了提高系统访问速度,可以通过为系统用户数据分区建立虚拟用户数据分区,并通过镜像文件以软连接的方式实现系统访问,即:
通过修改系统启动配置文件(如init.rc文件),将安卓移动终端的系统用户数据分区挂载到一个指定目录,并在该指定目录下建立虚拟用户数据分区。将系统用户数据分区文件搬移至指定目录下的虚拟用户数据分区,同时在系统用户数据分区中建立镜像文件与指定目录中文件一一对应。当系统访问系统用户数据分区的内部文件时,将被镜像文件以软连接的方式指向指定目录中的对应文件,使得位于系统用户数据分区的用户数据被系统访问,通过该方法可以提高访问速度。
进一步的,切换用户处理可以替换为:在切换用户时,基于切换的目标用户账户重启系统完成账户切换。
本发明的有益效果是,通过数据隔离改变Android系统仅有一个用户数据分区以及对应的外置存储区的数据结构的传统架构,在现有Linux安全的基础上,提出数据隔离实现用户分区,并在用户分区实现扩展存储空间隔离,对Linux安全较为薄弱的部分进行了增强,安全性更高,可广泛应用于安全等级较高的环境中。
附图说明
图1为本发明的Android移动终端数据隔离的系统架构图;
图2为新用户创建的示意流程图;
图3为用户切换的示意流程图;
图4为用户删除的示意流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合实施方式和附图,对本发明作进一步地详细描述。
本发明通过重制Android移动终端的数据存储结构,使原系统单一化存储结构转为多元化,在保障用户数据环境隔离的同时,避开对Android移动终端框架核心特性的改动。不同于传统的仅有一个用户数据分区以及对应的外置存储区的数据结构,修改后的Android系统框架接管了原有的掌管用户数据挂载、移除的服务,在多用户与数据隔离技术下,系统将拥有无限多个用户数据分区,并相互不可见。如图1描述的系统框架所示,将Android系统分为Linux系统内核和Android框架,其中Android框架包括系统用户数据分区和其它系统分区。本发明利用系统核心层框架修改技术手段和系统应用层框架修改技术手段实现用户数据区隔离。
首先,系统在指定文件目录下构建对应用户账户的用户数据分区,图1中所示的用户1数据分区~用户n数据分区,用于存放各用户账户的用户数据,如安装的应用软件、应用数据和系统用户设置(网络设置、时区、语言、电源策略等等)等关键文件;
启用用户时,将目标用户数据分区的关键文件搬移到系统用户数据分区,使其被系统访问。为了提高访问速度,将Android移动终端的系统用户数据分区挂载到一个指定目录,并在该目录建立虚拟用户数据分区,同时将系统用户数据分区的文件搬移至指定目录下的虚拟用户数据分区,同时在系统用户数据分区中建立镜像文件与指定目录中的文件一一对应。当系统访问系统用户数据分区内部文件时,将被镜像文件以软连接的方式指向指定目录中的对应文件,使得位于系统用户数据分区的用户数据被系统访问。
切换用户时替换系统用户数据分区中的关键文件。即将系统用户数据分区中当前用户账户的用户数据搬移至对应用户数据分区,将目标用户账户的关键文件从其用户数据分区搬移到系统用户数据分区,重启系统,使目标用户生效。
进一步地,对于用户扩展存储区的数据隔离,本发明针对Android系统的不同版本做了不同设计。
针对Android 2.3.X,对SD卡做真实的分区隔离,修改SD挂载配置文件,以多分区选择挂载的方式实现外置存储卡隔离手段。系统vold服务管理着SD卡设备热插拔任务,当服务检测到SD卡插入时,将配置文件中将挂载指定分区作为用户的外置存储位置。
针对Android 4.0及以上版本系统,使用fuse用户空间文件系统实施虚拟SD卡;fuse用户空间文件系统(Filesystem in Userspace),是Linux系统中用于挂载某些网络空间(如SSH)到本地文件系统的模块。本具体实施方式中使用它将一个指定的文件目录,挂载为用户的虚拟SD卡。
本发明结合Android底层数据结构在应用层提供APP入口,为系统开辟了一条快捷的多用户通道。使用者在自身权限范围内可随意的创建用户、删除用户或切换用户,其具体处理如图2~图4所示:
创建用户,用于具备权限的用户账户新建用户账户:基于用户填写的新用户注册信息,为该新用户构建数据分区结构,即在指定路径下设置一个私有的用户数据分区,用于存放安装的应用软件、应用数据和系统用户设置(网络设置、时区、语言、电源策略等等)等关键文件,并为该新用户关联或新建一个SD卡存储分区,最后将系统的基础支撑数据拷贝至该新用户的用户数据分区,完成新用户创建。
用户切换,在整个用户切换过程工作量较大,需要将当前用户账户的用户数据切换出去,使当前系统指向的数据分区变为缺失,搬移目标用户账户的用户数据填补缺失,实现用户数据的替换,在此同时替换用户的关联SD卡。替换完成重启系统核心使目标用户账户生效。
删除用户,用于具备权限的用户账户对所选择的目标用户账户进行删除:分析目标用户账户的用户数据分区结果,即获取目标用户账户的用户数据、SD卡信息,并删除对应的用户数据区目录与对应的SD卡目录,同时删除系统保留的对应注册信息,即可删除指定用户。
以上所述,仅为本发明的具体实施方式,本说明书中所公开的任一特征,除非特别叙述,均可被其他等效或具有类似目的的替代特征加以替换;所公开的所有特征、或所有方法或过程中的步骤,除了互相排斥的特征和/或步骤以外,均可以任何方式组合。

Claims (4)

1.安卓移动终端数据隔离方法,其特征在于,包括下列步骤:
为每个用户账户创建一个私有的用户数据分区,用于存放用户的关键文件,所述关键文件包括应用软件、应用数据和系统用户设置;
并为每个用户账户配置N个私有的虚拟扩展存储区,其中N≥1,虚拟扩展存储区用于存放用户的应用软件在运行时产生的且需要和其他应用软件共享的运行数据;
在启用用户时,基于选定的目标用户账户,将目标用户账户的关键文件从用户数据分区搬移到安卓移动终端的系统用户数据分区,使得目标用户账户的用户数据分区被系统访问;
在切换用户时,基于切换的目标用户账户,将切换前的用户账户的关键文件从系统用户数据分区搬移到对应用户账户的用户数据分区;并将目标用户账户的关键文件从用户数据分区搬移到安卓移动终端的系统用户数据分区,然后重启系统,使得目标用户账户的用户数据分区被系统访问。
2.如权利要求1所述的方法,其特征在于,还包括下列步骤:
修改系统启动配置文件,将安卓移动终端的系统用户数据分区挂载到一个指定目录,并在所述指定目录下建立虚拟用户数据分区;
将系统用户数据分区的文件搬移至所述虚拟用户数据分区,同时在系统用户数据分区中建立与指定目录中文件一一对应的镜像文件。
3.如权利要求1或2所述的方法,其特征在于,在切换用户时,直接基于切换的目标用户账户重启系统,使得目标用户账户的用户数据分区被系统访问。
4.如权利要求1或2所述的方法,其特征在于,在安卓系统的应用层设置用户管理APP入口,包括创建用户、切换用户、删除用户。
CN201610835131.0A 2016-09-21 2016-09-21 安卓移动终端数据隔离方法 Active CN106446723B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610835131.0A CN106446723B (zh) 2016-09-21 2016-09-21 安卓移动终端数据隔离方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610835131.0A CN106446723B (zh) 2016-09-21 2016-09-21 安卓移动终端数据隔离方法

Publications (2)

Publication Number Publication Date
CN106446723A true CN106446723A (zh) 2017-02-22
CN106446723B CN106446723B (zh) 2019-04-05

Family

ID=58166512

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610835131.0A Active CN106446723B (zh) 2016-09-21 2016-09-21 安卓移动终端数据隔离方法

Country Status (1)

Country Link
CN (1) CN106446723B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844309A (zh) * 2017-10-18 2018-03-27 北京奇艺世纪科技有限公司 一种系统数据处理方法及装置
CN109710317A (zh) * 2018-11-16 2019-05-03 华为技术有限公司 系统启动方法、装置、电子设备及存储介质
CN112115492A (zh) * 2020-08-21 2020-12-22 麒麟软件有限公司 一种基于Linux操作系统的用户数据加密隔离方法及系统
CN113448873A (zh) * 2021-07-22 2021-09-28 湖北亿咖通科技有限公司 软件测试方法、设备、存储介质及程序产品
CN113835857A (zh) * 2021-09-18 2021-12-24 青岛海信移动通信技术股份有限公司 一种外置存储设备的挂载方法、装置、设备及介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2911087A1 (en) * 2013-12-20 2015-08-26 Huawei Technologies Co., Ltd. Method, device and apparatus for storing and reading data
CN105631293A (zh) * 2015-12-29 2016-06-01 宇龙计算机通信科技(深圳)有限公司 数据访问方法、数据访问系统和终端
CN105678183A (zh) * 2015-12-30 2016-06-15 青岛海信移动通信技术股份有限公司 一种智能终端的用户数据管理方法及装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2911087A1 (en) * 2013-12-20 2015-08-26 Huawei Technologies Co., Ltd. Method, device and apparatus for storing and reading data
CN105631293A (zh) * 2015-12-29 2016-06-01 宇龙计算机通信科技(深圳)有限公司 数据访问方法、数据访问系统和终端
CN105678183A (zh) * 2015-12-30 2016-06-15 青岛海信移动通信技术股份有限公司 一种智能终端的用户数据管理方法及装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郝先林等: "基于TrustZone技术的TEE安全方案的研究", 《 北京电子科技学院学报》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844309A (zh) * 2017-10-18 2018-03-27 北京奇艺世纪科技有限公司 一种系统数据处理方法及装置
CN109710317A (zh) * 2018-11-16 2019-05-03 华为技术有限公司 系统启动方法、装置、电子设备及存储介质
CN109710317B (zh) * 2018-11-16 2020-07-07 华为技术有限公司 系统启动方法、装置、电子设备及存储介质
CN112115492A (zh) * 2020-08-21 2020-12-22 麒麟软件有限公司 一种基于Linux操作系统的用户数据加密隔离方法及系统
CN113448873A (zh) * 2021-07-22 2021-09-28 湖北亿咖通科技有限公司 软件测试方法、设备、存储介质及程序产品
CN113835857A (zh) * 2021-09-18 2021-12-24 青岛海信移动通信技术股份有限公司 一种外置存储设备的挂载方法、装置、设备及介质
CN113835857B (zh) * 2021-09-18 2024-04-02 青岛海信移动通信技术有限公司 一种外置存储设备的挂载方法、装置、设备及介质

Also Published As

Publication number Publication date
CN106446723B (zh) 2019-04-05

Similar Documents

Publication Publication Date Title
CN106446723A (zh) 安卓移动终端数据隔离方法
US10176020B2 (en) Dynamic management of computing platform resources
WO2017133203A1 (zh) 一种执行环境的虚拟化、虚拟执行环境的访问方法及装置
US9215225B2 (en) Mobile device locking with context
US20140115158A1 (en) Managing application execution and data access on a device
CN109756915B (zh) 一种无线网络管理方法及系统
US10768941B2 (en) Operating system management
EP2838243B1 (en) Capability aggregation and exposure method and system
KR20060089658A (ko) 애플리케이션 실행의 보안 관리 프로세스
CN103679007A (zh) 一种管理应用程序权限的方法、装置及移动设备
US11082735B2 (en) Time offset data request handling
CN109413080B (zh) 一种跨域动态权限控制方法及系统
US10223170B2 (en) Dynamic management of computing platform resources
CN110427248A (zh) 一种基于容器的轻量级用户环境构建方法、系统及介质
CN109784090A (zh) 一种基于云消息服务实现多租户控制的方法及系统
US11126460B2 (en) Limiting folder and link sharing
KR20170063842A (ko) 제3자 데이터 공유를 위한 프라이버시 보호
CN106776013B (zh) 多系统的资源调度方法及装置
US10243874B2 (en) Dynamic management of computing platform resources
CA2830880C (en) Managing permission settings applied to applications
EP2725511B1 (en) Managing application execution and data access on a device
CN111985906A (zh) 一种远程办公系统、方法、装置及存储介质
CN110881039B (zh) 一种云安全管理系统
CN107438067A (zh) 一种基于mesos容器云平台的多租户构建方法及系统
CN102567041A (zh) 一种可实现动态桌面的计算机装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant