专利名称:一种基于Android终端的安全访问控制方法
—种基于Android终端的安全访问控制方法技术领域
本发明属于智能手持终端操作系统领域,特别是一种基于Android终端的安全访问控制方法。
背景技术:
访问控制是保证授权用户正常访问所需资源,同时阻止非授权用户访问的安全机制。访问的实施者称为主体,例如用户或用户所发起的进程;被访问对象称为客体,如系统中的各种文件、目录、设备等。
访问控制可以分为自主访问控制和强制访问控制。自主访问控制是指资源的属主可以决定主体对资源的访问权限,强制访问控制是指系统根据安全策略和主体、客体的安全属性来决定是否允许访问。目前Android平台采用Linux缺省自带的自主访问控制机制来实现进程和数据的隔离,但由于自主访问控制机制中仍然存在着特权用户root的概念, 因此这种机制对于非法root权限攻击等威胁将彻底失去安全保护的能力。Linux内核的 LSM安全框架(Linux Security Module)为实现强制访问控制提供了基础设施,如图3所示。目前应用于Linux个人计算机和服务器平台的强制访问控制主要包括SELinux、RSBAC 等项目,NSA开发的SELinux智能手机版本SEAndroid也已经发布。
强制访问控制的安全策略利用安全策略编译工具由文本格式翻译为二进制格式, 之后利用安全策略装入工具将安全策略加载到安全策略数据库中,作为访问控制实施的依据。安全策略按类型分为全局安全策略和模块安全策略。
全局安全策略用于定义严格实施的安全决策以及可信设备列表。手机终端厂商的预装映像通常为只读方式,普通用户不会修改。将预装映像定义为可信设备,预装映像上的应用缺省允许被执行,从而简化大量的配置。同时除了少量可信应用,其它应用均不允许将预装映像改为可读写方式。
模块安全策略用于描述对主体或客体的访问限制。由于应用的行为规律需要长期观察才能确定,很难正向描述一个主体的行为,所以模块安全策略支持主体策略项和客体策略项,主体策略项描述主体可以访问的客体,客体策略项描述客体允许/禁止被哪些主体访问。
SEAndroid的设计出发点为个人计算机上的多用户安全需求,其安全机制繁琐、安全策略配置复杂,难以被普通用户理解和掌握。移动终端是典型的单用户设备,随着新应用的安装,需要动态添加新的安全策略。然而普通用户不是安全专家,自行观察与配置安全策略十分困难。发明内容
本发明的目的在于提供一种基于Android终端的安全访问控制方法。
实现本发明目的的技术方案为一种基于Android终端的安全访问控制方法,该方法基于主服务器和至少一个Android终端的应用平台, 具体包括以下步骤
步骤1、在主服务器端设置安全策略发布器,在Android终端设置安全策略加载器;所述安全策略加载器通过空口协议和HTTP协议与安全策略发布器通信,接收安全策略发布器推送的消息;
步骤2、在Android终端中配置全局安全策略;
步骤3、主服务器发布指令给Android终端,Android终端接收并执行主服务器发布的指令,所述指令类型包括下发应用和回收应用;所述主服务器给Android终端下发应用指令执行步骤具体为
步骤3-1、在主服务器Windows平台终端上,将应用打包成封装包;
步骤3-2、在主服务器的安全策略发布器中添加一条应用推送消息,该条消息包括如下内容待推送的封装包、待推送的Android终端列表,安全策略发布器将依据该条消息中待推送的Android终端列表将封装包推送到相应的Android终端;
步骤3-3、Android终端的安全策略加载器接收并安装推送的封装包;
所述主服务器给Android终端回收应用指令执行步骤具体为
步骤3-a、在主服务器的安全策略发布器中添加一条应用删除信息,该条消息包括如下内容待删除的应用名称、待推送的Android终端列表,安全策略发布器将依据该条消息中待推送的Android终端列表将待删除的应用名称推送到相应的Android终端;
步骤3-b、Android终端的安全策略加载器接收待删除的应用名称,之后执行相应的操作。
本发明与现有技术相比,其显著优点为(I)本发明的方法无需Android终端使用者参与,开机自动加载全局安全策略,保证系统最低限度安全目标;(2)主服务器打包的封装包中的安全策略可以随着软件的安装和卸载完成安全策略的动态下发与回收,无需再进行手动安装和删除;(3)用户感受透明,用户几乎感觉不到安全策略的存在;(4)各种安全保护机制保证安全策略不可绕行,提高了系统的安全性。
图1是基于Android终端的安全访问控制方法系统结构图。
图2是Android应用封装示意图。
图3是Linux强制访问控制框架LSM示意图。
具体实施方式
结合图1,本发明的一种基于Android终端的安全访问控制方法,该方法基于主服务器和至少一个Android终端的应用平台,具体包括以下步骤
步骤1、在主服务器端设置安全策略发布器,在Android终端设置安全策略加载器;所述安全策略加载器通过空口协议和HTTP协议与安全策略发布器通信,接收安全策略发布器推送的消息;
步骤2、在Android`终端中配置全局安全策略,具体为
步骤2-1、在Android终端生成文本格式的全局安全策略;所述全局安全策略包括如下内容安全策略加载器不允许被非法修改,不允许被非法停止执行;安全策略数据库不允许被非法修改;只有安全策略加载器允许访问安全策略数据库,加载/卸载其中的安全策略;
步骤2-2、使用安全策略编译器将安全策略由文本格式编译为二进制格式;使用安全策略编译器将安全策略由文本格式编译为二进制格式具体为
步骤2-2-1、执行安全策略编译器,输入为文本格式的安全策略;
步骤2-2-2、判断安全策略是否包含主体策略或客体策略,如果不包含,则认为是非法文件格式,不产生输出,否则执行下一步;
步骤2-2-3、判断安全策略中是否包含重复的主体策略或客体策略,如果包含则提示出错所在行号,不产生输出,否则执行下一步;
步骤2-2-4、判断安全策略的主体策略或客体策略中是否包含重复的操作项,若包含则提示出错所在行号,不产生输出,否则输出生成后的二进制格式安全策略。
步骤2-3、构建Android终端的预装映像,具体包括以下步骤
步骤2-3-1、修改Android终端的内核,将强制访问控制机制编译到内核中,保证了所有访问操作不可绕行强制访问控制机制;
步骤2-3-2、修改Android终端的启动流程,增加对内核的完整性校验,防止内核被非法篡改;
步骤2-3-3、将步骤2-2生成的二进制格式的安全策略内置到Android终端的安全策略存放路径中;
步骤2-3-4、将安全策略加载器内置到Android终端中,配置安全策略加载器的服务器地址,使之可以与主服务器进行通信;
步骤2-4、使用Android操作系统安装工具将预装映像安装至Android终端。
步骤3、主服务器发布指令给Android终端,Android终端接收并执行主服务器发布的指令,所述指令类型包括下发应用和回收应用;所述主服务器给Android终端下发应用指令执行步骤具体为
步骤3-1、在主服务器Windows平台终端上,将应用打包成封装包,如图2所示;将应用打包成封装包具体包括以下步骤
步骤3-1-1、制定待推送应用的文本格式安全策略,所述文本格式安全策略包括: 待推送应用在Android终端中允许访问/禁止访问的文件和目录列表;
步骤3-1-2、使用安全策略编译器将安全策略由文本格式编译为二进制格式;
步骤3-1-3、生成推送控制脚本,该脚本包括以下内容待推送应用的推送路径、 待推送应用在Android终端安装前后需要执行的操作;
步骤3-1-4、使 用WinZip或WinRar压缩工具将待推送应用、二进制格式的安全策略和推送控制脚本打包为封装包。
步骤3-2、在主服务器的安全策略发布器中添加一条应用推送消息,该条消息包括如下内容待推送的封装包、待推送的Android终端列表,安全策略发布器将依据该条消息中待推送的Android终端列表将封装包推送到相应的Android终端;
步骤3-3、Android终端的安全策略加载器接收并安装推送的封装包;
所述主服务器给Android终端回收应用指令执行步骤具体为
步骤3-a、在主服务器的安全策略发布器中添加一条应用删除信息,该条消息包括如下内容待删除的应用名称、待推送的Android终端列表,安全策略发布器将依据该条消息中待推送的Android终端列表将待删除的应用名称推送到相应的Android终端;
步骤3-b、Android终端的安全策略加载器接收待删除的应用名称,之后执行相应的操作。具体为
步骤3-b-l、安全策略加载器调用Android终端原生的应用安装程序,将应用卸载;
步骤3-b_2、安全策略加载器将已卸载应用的安全策略从安全策略数据库中删除, 该条安全策略即时失效。
下面结合实施例对本发明做进一步详细的描述
实施例1
通过主服务器将单机游戏贪食蛇snake, apk推送给手机号为15002508888的 Android终端,具体的实施方式如下
步骤I,在主服务器Windows平台终端上,将贪食蛇应用打包成贪食蛇应用封装包;
(1-1)设置安全策略。贪食蛇是一个单机游戏,禁止访问短信、联系人、电话等本机隐私数据,禁止访问互联网收发数据,根据上述安全需求确定文本格式的安全策略snake_ policy, xml 如下
权利要求
1.一种基于Android终端的安全访问控制方法,该方法基于主服务器和至少一个 Android终端的应用平台,其特征在于,具体包括以下步骤步骤1、在主服务器端设置安全策略发布器,在Android终端设置安全策略加载器;所述安全策略加载器通过空口协议和HTTP协议与安全策略发布器通信,接收安全策略发布器推送的消息;步骤2、在Android终端中配置全局安全策略;步骤3、主服务器发布指令给Android终端,Android终端接收并执行主服务器发布的指令,所述指令类型包括下发应用和回收应用;所述主服务器给Android终端下发应用指令执行步骤具体为步骤3-1、在主服务器Windows平台终端上,将应用打包成封装包;步骤3-2、在主服务器的安全策略发布器中添加一条应用推送消息,该条消息包括如下内容待推送的封装包、待推送的Android终端列表,安全策略发布器将依据该条消息中待推送的Android终端列表将封装包推送到相应的Android终端;步骤3-3、Android终端的安全策略加载器接收并安装推送的封装包;所述主服务器给Android终端回收应用指令执行步骤具体为步骤3-a、在主服务器的安全策略发布器中添加一条应用删除信息,该条消息包括如下内容待删除的应用名称、待推送的Android终端列表,安全策略发布器将依据该条消息中待推送的Android终端列表将待删除的应用名称推送到相应的Android终端;步骤3-b、Android终端的安全策略加载器接收待删除的应用名称,之后执行相应的操作。
2.根据权利要求1所述的基于Android终端的安全访问控制方法,其特征在于,步骤2 在Android终端中配置全局安全策略具体为步骤2-1、在Android终端生成文本格式的全局安全策略;所述全局安全策略包括如下内容安全策略加载器不允许被非法修改,不允许被非法停止执行;安全策略数据库不允许被非法修改;只有安全策略加载器允许访问安全策略数据库,加载/卸载其中的安全策略;步骤2-2、使用安全策略编译器将安全策略由文本格式编译为二进制格式;步骤2-3、构建Android终端的预装映像,具体包括以下步骤步骤2-3-1、修改Android终端的内核,将强制访问控制机制编译到内核中,保证了所有访问操作不可绕行强制访问控制机制;步骤2-3-2、修改Android终端的启动流程,增加对内核的完整性校验,防止内核被非法篡改;步骤2-3-3、将步骤2-2生成的二进制格式的安全策略内置到Android终端的安全策略存放路径中;步骤2-3-4、将安全策略加载器内置到Android终端中,配置安全策略加载器的服务器地址,使之可以与主服务器进行通信;步骤2-4、使用Android操作系统安装工具将预装映像安装至Android终端。
3.根据权利要求1所述的基于Android终端的安全访问控制方法,其特征在于,步骤 3-1中将应用打包成封装包具体包括以下步骤步骤3-1-1、制定待推送应用的文本格式安全策略,所述文本格式安全策略包括待推送应用在Android终端中允许访问/禁止访问的文件和目录列表;步骤3-1-2、使用安全策略编译器将安全策略由文本格式编译为二进制格式;步骤3-1-3、生成推送控制脚本,该脚本包括以下内容待推送应用的推送路径、待推送应用在Android终端安装前后需要执行的操作;步骤3-1-4、使用WinZip或WinRar压缩工具将待推送应用、二进制格式的安全策略和推送控制脚本打包为封装包。
4.根据权利要求1所述的基于Android终端的安全访问控制方法,其特征在于,步骤 3-b中Android终端的安全策略加载器接收待删除的应用名称,之后执行相应的操作具体为步骤3-b-l、安全策略加载器调用Android终端原生的应用安装程序,将应用卸载; 步骤3-b-2、安全策略加载器将已卸载应用的安全策略从安全策略数据库中删除,该条安全策略即时失效。
5.根据权利要求2所述的基于Android终端的安全访问控制方法,其特征在于,步骤 2-2使用安全策略编译器将安全策略由文本格式编译为二进制格式具体为步骤2-2-1、执行安全策略编译器,输入为文本格式的安全策略;步骤2-2-2、判断安全策略是否包含主体策略或客体策略,如果不包含,则认为是非法文件格式,不产生输出,否则执行下一步;步骤2-2-3、判断安全策略中是否包含重复的主体策略或客体策略,如果包含则提示出错所在行号,不产生输出,否则执行下一步;步骤2-2-4、判断安全策略的主体策略或客体策略中是否包含重复的操作项,若包含则提示出错所在行号,不产生输出,否则输出生成后的二进制格式安全策略。
全文摘要
本发明公开了一种基于Android终端的安全访问控制方法,首先在主服务器端设置安全策略发布器,在Android终端设置安全策略加载器;所述安全策略加载器通过空口协议和HTTP协议与安全策略发布器通信,接收安全策略发布器推送的消息;其次在Android终端中配置全局安全策略;最后主服务器发布指令给Android终端,Android终端接收并执行主服务器发布的指令,该方法无需Android终端使用者参与,开机自动加载全局安全策略,保证系统最低限度安全目标。
文档编号G06F21/44GK103067392SQ20121058563
公开日2013年4月24日 申请日期2012年12月28日 优先权日2012年12月28日
发明者张涛, 王金双, 袁志坚, 赵敏, 陈融, 陈萍, 于晗 申请人:中国人民解放军理工大学