CN103020531B - Android智能终端运行环境可信控制方法及系统 - Google Patents

Android智能终端运行环境可信控制方法及系统 Download PDF

Info

Publication number
CN103020531B
CN103020531B CN201210521472.2A CN201210521472A CN103020531B CN 103020531 B CN103020531 B CN 103020531B CN 201210521472 A CN201210521472 A CN 201210521472A CN 103020531 B CN103020531 B CN 103020531B
Authority
CN
China
Prior art keywords
android
intelligent terminal
module
terminal
dalvik
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.)
Expired - Fee Related
Application number
CN201210521472.2A
Other languages
English (en)
Other versions
CN103020531A (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.)
Huawei Technologies Co Ltd
Institute of Information Engineering of CAS
Original Assignee
Huawei Technologies Co Ltd
Institute of Information Engineering of CAS
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 Huawei Technologies Co Ltd, Institute of Information Engineering of CAS filed Critical Huawei Technologies Co Ltd
Priority to CN201210521472.2A priority Critical patent/CN103020531B/zh
Publication of CN103020531A publication Critical patent/CN103020531A/zh
Application granted granted Critical
Publication of CN103020531B publication Critical patent/CN103020531B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Abstract

本发明涉及Android智能手机运行环境可信控制方法及系统,Android终端的Android OS安全启动完毕后,Android Dalvik应用将进行可信启动,Android终端实时监测终端所处地理位置是否位于预设定的敏感区域内,Android终端报告Android Dalvik应用完整性信息至监控中心,监控中心依据安全策略管理模块的安全策略依次验证应用完整性信息,并通过Android终端完整性信息收集模块返回验证结果至终端,终端依据验证结果实施相应操作后再次验证应用完整性信息是否安全。本发明对敏感域内的移动终端进行远程控制和应用程序管理,通过切断终端访问能力来防止机密信息的窃取扩散。

Description

Android智能终端运行环境可信控制方法及系统
技术领域
本发明涉及对Android智能终端中运行的应用程序进行可信控制,特别涉及基于地理位置的Android智能终端运行环境可信控制方法,属于信息安全技术领域。
背景技术
随着现有的移动Android智能终端的普及,人们对Android智能终端的依赖性快速增强,基于终端的应用日益多样化同时也更加难以掌控。对于某些特定的安全敏感区域,区域内的发生的会议、通话、周围环境等信息的机密性需要得到充分的保证,而移动Android智能终端中恶意应用的存在可能使这些机密信息随时随地迅速遭到窃取、传播。为解决这类问题、一个有效的途径是对移动Android智能终端上运行的应用进行远程监控和管理,及时的掌握移动Android智能终端运行的应用程序,并阻止不安全应用的执行。然而,该类方案面临的一个重要的挑战是如何防止恶意软件对上述监控管理行为进行旁路、欺骗及篡改。
发明内容
本发明的目的是提供一种有效的途径对移动Android智能终端上运行的应用进行远程监控,及时的掌握移动Android智能终端运行的应用程序,并能够有效地阻止不安全应用的执行。
为了达到上述目的,本发明提出一种基于地理位置的Android智能终端运行环境可信控制方法及系统。本发明包括的基于地理位置的Android智能终端运行环境可信控制系统架构可以划分为两个子系统,分别为监控中心子系统和Android终端运行状态度量与报告子系统。
本发明Android智能终端运行环境可信控制方法,其步骤为:
1)对Android智能终端采用Android OS安全启动,所述Android OS安全启动过程触发状态度量服务;
2)所述状态度量服务对该Android智能终端上的Android初始化代码进行度量并验证,完成Android OS安全启动;
3)所述Android OS安全启动完成后,在所述Android智能终端中启动Android dalvik应用;
4)若所述Android智能终端存在于设定敏感区域内,则发送所述Android dalvik应用完整性信息到监控中心进行安全信息验证;
5)所述监控中心根据安全策略验证所述Android dalvik应用完整性信息,并返回验证结果到所述Android智能终端;
6)所述Android智能终端在设定的时间周期内再次发送所述Android dalvik完整性信息到监控中心验证,所述监控中心切断未通过验证的Android智能终端网络信号,对通过验证的Android智能终端保持可信连接;
7)当所述Android智能终端离开敏感区域,结束可信控制。
发送所述Android dalvik应用完整性信息到监控中心进行安全信息验证的方法如下:
2-1)若初次检测在敏感区域内,终端向监控中心发送用户名,同时终端存储用户输入的服务器预分配口令于内存中;
2-2)所述监控中心返回随机数至终端,该终端若持续未接收到监控中心数据则锁定终端操作;
2-3)度量值上传模块对随机数及用户预分配口令进行Sha-1运算,生成Android dalvik应用完整性信息的加密密钥;
2-4)终端通过度量值上传模块主动报告加密后的Android dalvik应用完整性信息至监控中心进行验证。
所述监控中心根据安全策略验证所述Android dalvik应用完整性信息的方法如下:
3-1)Android终端完整性信息收集模块收集终端Android dalvik应用完整性信息,同时把安全策略管理模块中包含不安全dalvik应用的度量值存入黑名单中并进行实时更新;
3-2)Android终端完整性信息收集模块使用用户名对应的随机数及用户口令生成解密密钥;
3-3)Android终端完整性信息收集模块对Android dalvik应用完整性信息进行解密;
3-4)使用Android终端完整性验证模块依次验证Android dalvik应用完整性信息中的完整性度量值流是否符合安全策略;
3-5)所述Android终端完整性验证模块记录PID-Unsecure不安全应用进程ID并发送不安全应用进程名及ID至Android终端完整性信息收集模块;
3-6)所述Android终端完整性信息收集模块将返回不安全应用进程ID及对应的进程名至终端的度量值上传模块。
在设定的时间周期内再次发送所述Android dalvik完整性信息到监控中心验证的方法如下:
4-1)度量值上传模块直接关闭由监控中心返回的不安全应用进程ID的对应进程;
4-2)用户确认后,度量值上传模块再次上传所述Android dalvik应用完整性信息至监控中心;
4-3)所述Android终端完整性验证模块再次验证收到的Android dalvik应用完整性信息中的完整性度量值流是否符合安全策略,同时验证新上传的Android dalvik应用完整性信息中是否包含PID-Unsecure;
4-4)若不符合安全策略或新上传的Android dalvik应用完整性信息中包含PID-Unsecure则发送切断终端网络信号指令至网络连接控制模块;
4-5)所述网络连接控制模块切断终端对其安全域内网络服务的访问能力。
判断所述Android智能终端存在于设定敏感区域内的方法如下:
5-1)在所述终端地理位置监控模块中设置敏感的GPS区域位置范围;
5-2)该终端实时判断目前地理位置是否位于敏感域范围内;
5-3)若所述终端位于敏感区域则向监控中心发送验证信息。
所述Android OS安全启动方法如下:
6-1)采用所述终端的OTP存储引导程序,引导程序度量Android Linux内核并根据存储于内存中的度量值进行验证;
6-2)若验证通过Android内核正常启动,使用所述Android内核态的完整性度量模块度量Android初始化代码;
6-3)初始完整性验证模块验证输入的Android初始化代码度量值并输出验证结果;
6-4)将验证结果返回至完整性度量模块,该模块根据验证结果确定Android操作系统初始化决策。
对所述Android初始化代码进行度量内容包括:度量的Android OS内核模块和Android初始化配置文件;度量守护进程和度量Dalvik虚拟机初始化进程;度量应用层的状态报告服务。
对所述Android初始化代码进行验证内容包括:验证Android OS内核模块的度量值并返回验证结果;验证Android初始化配置文件度量值并返回验证结果;验证守护进程的度量值并返回结果;验证dalvik虚拟机初始化进程的度量值并返回验证结果;验证应用层的状态报告服务的度量值并返回验证结果。
所述度量应用层的状态报告服务的流程是:
9-1)操作系统Android OS启动完成后自启动状态报告服务;并通过MMAP映射状态报告服务Apk包中的.dex文件至dalvik虚拟机内存空间;
9-2)所述操作系统调用内核态的完整性度量模块对内存中的.dex文件进行度量生成度量值。
本发明还提出一种Android智能终端运行环境可信控制系统,包括监控中心子系统和Android终端运行状态度量与报告子系统,其特征在于,
所述监控中心子系统包括:
Android终端完整性信息收集模块,用于收集Android终端发送的Android dalvik应用完整性信息,同时返回不安全应用程序ID及对应进程名至Android终端;
Android终端完整性验证模块,对输入Android dalvik应用完整性信息进行验证和记录不安全进程ID,
还用于发送不安全应用进程ID、进程名至Android终端完整性信息终端模块及对再次输入的完整性信息进行验证;
安全策略管理模块,将包含不安全dalvik应用的度量值存入黑名单中,并更新黑名单中的dalvik应用度量值;
网络连接控制模块,用于控制基站/热点与终端之间的信号连接,切断终端运行不安全dalvik应用与热点/基站间的通信连接;
所述Android终端运行状态度量与报告子系统分为Android终端状态报告服务系统和Android终端状态度量服务系统;
所述Android终端状态报告服务系统包括:
终端地理位置监控模块,验证终端位置是否位于敏感区域内,若位于敏感域内则通过度量值上传模块,将生成的Android dalvik应用完整性信息发送到监控中心子系统进行验证;
度量值上传模块,将由内核完整性度量模块度量生成的Android终端完整性度量值及对应的Android dalvik应用进程名和当前正在运行进程ID发送至监控中心的完整性信息收集模块;
所述Android终端状态度量服务系统包括:
安全引导模块,保证Android智能终端启动时装载的Linux内核文件可信;
内核层的完整性度量模块,负责对Android智能终端中装载的内核模块、可执行代码和Android dalvik应用进行度量;
初始完整性验证模块,负责保证智能终端在启动过程中,Android初始化代码包括装载的Android OS内核模块、Android初始化配置文件、守护进程、dalvik虚拟机初始化进程、应用层状态报告服务均属于可信状态,从而形成完整的终端启动信任链。
本发明的有益效果:
本发明使用的Android dalvik应用的完整性度量值来准确的标识应用,通过报告Androiddalvik应用的完整性度量值至监控中心进行验证的方式使进入到敏感域内的移动Android智能终端上运行的应用程序得到了有效的远程控制和管理,及时的掌握移动Android智能终端运行的应用程序,并通过切断智能终端对其安全域内网络服务的访问能力来防止机密信息的窃取扩散,保证了敏感区域内敏感信息的机密性。
附图说明
图1是本发明基于地理位置的Android智能终端运行环境可信控制方法系统示意图;
图2是本发明基于地理位置的Android智能终端运行环境可信控制方法流程示意图;
图3是本发Android智能终端运行环境可信控制方法一实施例中安全启动方法示意图;
图4是本发Android智能终端运行环境可信控制方法一实施例中Android dalvik不安全应用远程控制方法示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,可以理解的是,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示是本发明基于地理位置的Android智能终端运行环境可信控制方法系统示意图,监控中心子系统包括了Android终端完整性信息收集模块、Android终端完整性验证模块、安全策略管理模块及网络连接控制模块。监控中心主要提供对敏感域地理范围内的Android智能终端的完整性度量值(具体可参见Reiner Sailer,Xiaolan Zhang,TrentJaeger,Leendert Van Doorn,Design and Implementation of a TCG-Based IntegrityMeasurement Architecture Thomas J.Watson Research Center.Yorktown Heights,NY10598)进程验证,必要时切断终端对其安全域内网络服务的访问能力,及时的防止安全敏感信息的窃取或扩散。所述的敏感域地理范围在这个环境内的很多会议音频,图片,等都是保密的,所以我们就会远程监控这个区域内的用户的手机摄像头或收音机等是否开启,开启的话则要求强制关闭,防止用户拍摄机密的照片带出保密区域外。
Android终端运行状态度量与报告子系统则包含了状态度量服务和状态报告服务。状态度量服务由处于智能终端一次性编程区OTP(One Time Programmable)的安全引导模块、处于内核层的完整性度量模块和初始完整性验证模块共同组成。安全引导模块保证Android智能终端启动时装载的Linux内核文件可信。完整性度量模块负责对Android智能终端中装载的内核模块、可执行代码和Android的dalvik应用进行度量。最开始的完整性度量是基于linux的,本发明中把完整性度量搬移到了Android操作系统上,从而可以度量一些Android的应用,因为Android应用的运行首先都会复制Zygote进程创建一个dalvik虚拟机,故称为Android dalvik应用,dalvik应用的度量值和传统度量值长度是一样的,都是32位hash值。
初始完整性验证模块负责保证智能终端在启动过程中,所有Android初始化代码包括装载的Android OS内核模块、Android初始化配置文件、守护进程、dalvik虚拟机初始化进程、应用层状态报告服务均属于可信状态。位于应用层的状态报告服务包含了终端地理位置监控模块和度量值上传模块。终端地理位置监控模块会实时监控终端的地理位置,验证终端位置是否位于敏感区域内,基站与手机之间的通信是不需要控制和保证可信的,只是在发现终端有不安全应用在执行时最后需要切断基站与终端的信号连接,防止把机密信息发送出去。
若位于敏感域内则通过度量值上传模块,将生成的Android Dalvik应用完整性信息发送到监控中心子系统进行验证。
下面对在该体系架构中,基于地理位置的Android智能终端运行环境可信控制方法进行说明,包括如下步骤:
Android终端运行状态度量与报告子系统是在用户端Android智能终端上的运用,监控中心子系统在服务器上,在进行可信控制时,手机Android终端先打开应用程序(可信或不可信),即对输入的Android dalvik应用可信进行判断;然后监控系统根据可信与否,关闭或者对应用程序保持监控,监控系统会对信息进行重新的安全验证(由内核中的系统定时进行验证)。本发明中Android dalvik应用的完整性度量涉及到内核中的完整性度量模块。只需要在内核中嵌入我们的完整性度量模块,就可以实现对Android应用度量。由于Android应用启动时会把代码导入到dalvik虚拟机,而虚拟机会将代码使用MMAP函数映射到内存区域,我们的完整度量模块通过复写linux的安全增强框架就能截获MMAP的映射活动,从而可以对内存区域的dalvik应用代码做度量,这里的度量其实就是对代码做sha-1运算。
本系统中的不安全应用不一定就是病毒或者恶意软件,有些如摄像机,录音机这样的应用对本系统来讲也是不安全的,因为这些应用会在敏感区域偷拍机密信息。
子监控系统:
Android终端完整性信息收集模块,收集Android终端发送的Android dalvik应用完整性信息,返回不安全应用程序ID及对应进程名至Android终端。
Android终端完整性验证模块,1)输入Android dalvik应用完整性信息进行验证,2)记录不安全进程ID,3)发送不安全应用进程ID、进程名至Android终端完整性信息手机模块;4)对再次输入的完整性信息进行验证;
安全策略管理模块,将包含不安全dalvik应用的度量值存入黑名单中,及时更新黑名单中的dalvik应用度量值。
网络连接控制模块,用来控制基站/热点与终端之间的信号连接,一旦发现终端运行着不安全dalvik应用则切断热点/基站与终端之间的通信连接。
Android终端状态报告服务:
终端地理位置监控模块,会实时监控终端的地理位置,验证终端位置是否位于敏感区域内,若位于敏感域内则通过度量值上传模块,将生成的Android dalvik应用完整性信息发送到监控中心子系统进行验证。
度量值上传模块,将由内核完整性度量模块度量生成的Android终端完整性度量值及对应的Android dalvik应用进程名和当前正在运行进程ID发送至监控中心的完整性信息收集模块。
Android终端状态度量服务:
安全引导模块,保证Android智能终端启动时装载的Linux内核文件可信;
内核层的完整性度量模块,负责对Android智能终端中装载的内核模块、可执行代码和Android dalvik应用进行度量;
初始完整性验证模块,负责保证智能终端在启动过程中,所有Android初始化代码包括装载的Android OS内核模块、Android初始化配置文件、守护进程、dalvik虚拟机初始化进程、应用层状态报告服务均属于可信状态,从而形成完整的终端启动信任链。
如图2所示是本发明基于地理位置的Android智能终端运行环境可信控制方法流程示意图,基于上述系统,本发明提出了基于地理位置的Android智能终端运行环境控制方法如下:
1)通过位于智能终端OTP中的安全引导模块安全启动Android OS,在Android OS安全启动过程中会启用状态度量服务。状态度量服务将对Android的初始化代码进行度量并验证。所述状态度量服务相当于在内核中添加了一些安全模块,手机出厂时就内嵌于linux内核当中的,也就是说手机启动时状态度量服务就会启动,同时,状态报告服务也会启动,状态度量服务我们已经可以实现。
2)Android OS安全启动完毕后,Android dalvik应用将进行可信启动,Android终端实时监测终端所处地理位置是否位于预设定的敏感区域内。
3)Android终端报告Android dalvik应用完整性信息至监控中心,监控中心依据安全策略管理模块的安全策略依次验证Android dalvik应用完整性信息,并通过Android终端完整性信息收集模块返回验证结果至终端。终端依据验证结果实施相应操作后再次验证Androiddalvik应用完整性信息是否安全。
如图3是本发Android智能终端运行环境可信控制方法一实施例中安全启动方法示意图。
其所述安全启动的流程是:
A、采用OTP存储引导程序,该区域作为系统的度量信任根的存储区域;
B、引导程序度量Android Linux内核,根据存储于内存中的度量值进行验证
C、验证通过,Android内核正常启动;
D、使用内核态的完整性度量模块度量Android初始化代码;
E、使用初始完整性验证模块验证输入的Android初始化代码度量值并输出验证结果;
F、将验证结果返回至完整性度量模块,该模块根据验证结果确定系统初始化决策。
其所述的度量Android初始化代码,在开机就会完成是嵌入到Android linux内核中,具体的流程是:
A、度量的Android OS内核模块;
B、度量Android初始化配置文件;
C、度量守护进程;
D、度量dalvik虚拟机初始化进程;
E、度量应用层的状态报告服务。
其所述度量应用层的状态报告服务的流程是:
a、操作系统启动完成后,自启动状态报告服务;
b、操作系统通过MMAP映射状态报告服务Apk包中的.dex文件至dalvik虚拟机内存空间;
c、操作系统调用内核态的完整性度量模块对内存中的.dex文件进行度量。
d、操作系统生成度量值。
其所述验证输入的Android初始化代码度量值流程是:
a、验证Android OS内核模块的度量值并返回验证结果;
b、验证Android初始化配置文件度量值并返回验证结果;
c、验证守护进程的度量值并返回结果;
d、验证dalvik虚拟机初始化进程的度量值并返回验证结果;
e、验证应用层的状态报告服务的度量值并返回验证结果;
其所述验证结果特征是:分为验证通过、验证不通过、初始完整性验证通过三种。
其所述系统初始化决策的特征是:分为继续执行Android初始化代码度量、禁止系统启动两种。
其所述实时监测终端所处地理位置是否位于预设定的敏感区域内流程在于:
A、在终端地理位置监控模块中设置敏感的GPS区域位置范围;
B、终端实时判断目前地理位置是否位于敏感域范围内;
C、位于敏感区域则向监控中心发送挑战信息。
其所述可信启动的流程是:
A、智能终端上的内核中操作系统通过MMAP映射Android Apk包中的.dex文件至dalvik虚拟机内存空间;
B、内核态完整性度量模块对内存中的.dex文件进行度量。
C、生成度量值。
其所述报告Android dalvik完整性信息的流程是:
A、若初次检测在敏感区域内,终端向监控中心发送用户名,同时终端存储用户输入的服务器预分配口令于内存中;
B、监控中心返回随机数至终端;
C、终端若持续未接收到监控中心数据则锁定终端操作;
D、度量值上传模块对随机数及用户预分配口令进行Sha-1运算,生成Android dalvik应用完整性信息的加密密钥;
E、客户端通过度量值上传模块主动报告加密后的Android dalvik应用完整性信息至监控中心进行验证;
F、报告内容包括Android dalvik应用完整性度量值、Android dalvik应用进程名及当前正在运行进程ID三种属性。
其所述验证Android dalvik应用完整性信息的流程是:
A、及时更新安全策略管理模块中的安全策略;
B、Android终端完整性信息收集模块收集终端Android dalvik应用完整性信息;
C、Android终端完整性信息收集模块使用用户名对应的随机数及用户口令生成解密密钥;
D、Android终端完整性信息收集模块对Android dalvik应用完整性信息进行解密;
E、使用Android终端完整性验证模块依次验证Android dalvik应用完整性信息中的完整性度量值流是否符合安全策略;
F、Android终端完整性验证模块记录不安全应用进程ID(PID-Unsecure);
G、Android终端完整性验证模块发送不安全应用进程名及ID至Android终端完整性信息收集模块;
H、Android终端完整性信息收集模块将返回不安全应用进程ID及对应的进程名至终端的度量值上传模块;
其所述再次验证Android dalvik应用完整性信息是否安全的流程是:
A、度量值上传模块直接关闭由监控中心返回的不安全应用进程ID的对应进程;
B、用户确认后,度量值上传模块再次上传Android dalvik应用完整性信息至监控中心;
C、Android终端完整性验证模块再次验证收到的Android dalvik应用完整性信息中的完整性度量值流是否符合安全策略,同时验证新上传的Android dalvik应用完整性信息中是否包含PID-Unsecure;
D、若不符合安全策略或新上传的Android dalvik应用完整性信息中包含PID-Unsecure则发送切断终端网络信号指令至网络连接控制模块;
E、网络连接控制模块切断终端对其安全域内网络服务的访问能力;
其所述切断终端对其安全域内网络服务的访问能力的特征是:屏蔽敏感域内的其他干扰信号。
本发明的方法是由终端平台上的Android完整性度量子系统和监控中心子系统架构组成。本方法采用信任链的构建传递来防止恶意软件对本系统进行旁路、欺骗及篡改。终端中的安全引导模块保证Android智能终端启动时装载的Linux内核文件可信,它构成了终端安全启动的信任根。在智能终端在启动过程中,初始完整性验证模块会验证所有装载的Android初始化配置文件、Android操作系统内核模块、dalvik虚拟机初始化进程、应用层状态报告服务所生成的度量值,保证操作系统以及本方法中的应用层服务安全启动。在系统安全启动后,系统将进入可信启动状态,完成对系统运行过程中所有被运行应用的度量。位于应用层的状态报告服务的终端地理位置监控模块会实时对终端的地理位置进程监控,验证终端位置是否位于安全敏感区域内,若位于敏感域内则通过度量值上传模块,将生成的Android dalvik应用完整性信息发送到监控中心子系统进行验证。
如图4所示是本发Android智能终端运行环境可信控制方法一实施例中Android dalvik不安全应用远程控制方法示意图。
本发明的基于地理位置的Android智能终端运行环境可信控制方法包括如下步骤:
1)通过位于智能终端OTP中的安全引导模块安全启动Android OS,在Android OS安全启动过程中会启用状态度量服务。状态度量服务将对Android的初始化代码进行度量并验证。
A、安全引导Android Linux内核,加载内核中的完整性度量模块;
B、Android操作系统内核模块调用完整性度量模块生成度量值并输出;
C、将输出的Android操作系统内核模块度量值输入初始完整性验证模块中进行验证;
D、返回验证结果给完整性度量模块;
E、完整性度量模块根据返回的验证结果不同选择相应的系统初始化决策;
a)验证通过:系统继续执行Android操作系统内核;
b)验证不通过:禁止系统启动;
c)初始完整性验证成功:继续执行状态报告服务。
F、验证通过后继续执行Android操作系统内核,启动Android初始化配置文件;
G、Android初始化配置文件调用完整性度量模块生成度量值并输出;
H、将输出度量值输入初始完整性验证模块中进行验证并返回验证结果给完整性度量模块;
I、验证结果通过则继续执行Android初始化配置,并调用守护进程及dalvik虚拟机初始化模块;
J、守护进程及dalvik虚拟机初始化进程调用完整性度量模块生成度量值,并将度量值输入初始完整性验证模块进行验证,返回验证结果给完整性度量模块;
K、验证通过则继续执行守护进程及dalvik虚拟机初始化进程,并最终启动应用层状态报告服务;
L、应用层状态报告服务启动并调用完整性度量模块生成度量值,具体的度量流程是:
a)操作系统通过MMAP映射状态报告服务Apk包中的.dex文件至dalvik虚拟机内存空间;
b)操作系统调用完整性度量模块对内存中的.dex文件进行度量;
c)生成度量值。
M、将输出度量值输入初始完整性验证模块中进行验证,并返回验证结果给完整性度量模块;
N、初始完整性验证成功,继续启动应用层状态报告服务;
O、Android系统安全启动完毕。
2)Android OS安全启动完毕后,Android dalvik应用将进行可信启动,终端实时监测终端所处地理位置是否位于预设定的敏感区域内。
A、在终端地理位置监控模块中设置敏感的GPS区域位置范围;
B、终端实时判断目前地理位置是否位于敏感域范围内;
C、地理位置监控模块检测到终端位于敏感区域;
D、若初次检测在敏感区域内,终端向监控中心发送用户名,同时终端存储用户输入的服务器预分配口令于内存中;
E、监控中心返回随机数至终端;
F、终端若持续未接收到监控中心数据则锁定终端操作;
G、终端对用户预设定口令及随机数做Sha-1运算生成加密密钥;
H、启动的Android dalvik应用通过MMAP映射其Apk包中的.dex文件至dalvik虚拟机内存空间;
I、内核层完整性度量模块对内存中的.dex文件进行度量。
J、获取Android dalvik应用完整性信息:包括:
a)Android dalvik应用完整性度量值;
b)Android dalvik应用进程名;
c)当前正在运行进程ID。
K、使用内存中的加密密钥对Android dalvik应用完整性信息进行加密。
3)终端报告Android dalvik应用完整性信息至监控中心,监控中心依据安全策略管理模块的安全策略依次验证Android dalvik应用完整性信息,并通过Android终端完整性信息收集模块返回提示操作至终端。终端操作完成后再次验证Android dalvik应用完整性信息是否安全。
A、Android终端完整性信息收集模块存储收集到的终端Android dalvik应用完整性信息;
B、使用用户名对应的用户口令及随机数做运算生成解密密钥;
C、解密Android dalvik应用完整性信息;
D、将Android dalvik应用完整性度量值发送到Android终端完整性验证模块,根据安全策略管理模块中的安全策略对度量值进行验证;
E、记录不安全应用进程ID(PIDs-Unsecure);
F、发送不安全应用进程ID、进程名至Android终端完整性信息收集模块;
G、Android终端完整性信息收集模块将返回不安全应用进程ID及对应的进程名至终端的度量值上传模块;
H、度量值上传模块直接关闭由监控中心返回的不安全应用进程;
I、用户确认后度量值上传模块再次上传Android dalvik应用完整性信息至监控中心进行验证;
J、Android终端完整性验证模块再次验证收到的Android dalvik应用完整性信息中的完整性度量值流是否符合安全策略,同时验证新上传的Android dalvik应用完整性信息中是否包含PID-Unsecure;
K、若不符合安全策略或新上传的Android dalvik应用完整性信息中包含PID-Unsecure则发送切断终端网络信号指令至网络连接控制模块;
L、网络连接控制模块切断终端对其安全域内网络服务的访问能力。

Claims (9)

1.一种Android智能终端运行环境可信控制方法,其步骤为:
1)对Android智能终端采用Android OS安全启动,所述Android OS安全启动过程触发状态度量服务;
2)所述状态度量服务对该Android智能终端上的Android初始化代码进行度量并验证,完成Android OS安全启动;
3)所述Android OS安全启动完成后,在所述Android智能终端中启动Android dalvik应用;
4)若所述Android智能终端存在于设定敏感区域内,则发送所述Android dalvik应用完整性信息到监控中心进行安全信息验证,验证方法如下:
a)若初次检测在敏感区域内,Android智能终端向监控中心发送用户名,同时Android智能终端存储用户输入的服务器预分配口令于内存中;
b)所述监控中心返回随机数至Android智能终端,该Android智能终端若持续未接收到监控中心数据则锁定终端操作;
c)度量值上传模块对随机数及用户预分配口令进行Sha-1运算,生成Android dalvik应用完整性信息的加密密钥;
d)Android智能终端通过度量值上传模块主动报告加密后的Android dalvik应用完整性信息至监控中心进行验证;
5)所述监控中心根据安全策略验证所述Android dalvik应用完整性信息,并返回验证结果到所述Android智能终端;
6)所述Android智能终端在设定的时间周期内再次发送所述Android dalvik完整性信息到监控中心验证,所述监控中心切断未通过验证的Android智能终端网络信号,对通过验证的Android智能终端保持可信连接;
7)当所述Android智能终端离开敏感区域,结束可信控制。
2.如权利要求1所述的Android智能终端运行环境可信控制方法,其特征在于,所述监控中心根据安全策略验证所述Android dalvik应用完整性信息的方法如下:
2-1)Android智能终端完整性信息收集模块收集终端Android dalvik应用完整性信息,同时把安全策略管理模块中包含不安全dalvik应用的度量值存入黑名单中并进行实时更新;
2-2)Android智能终端完整性信息收集模块使用用户名对应的随机数及用户口令生成解密密钥;
2-3)Android智能终端完整性信息收集模块对Android dalvik应用完整性信息进行解密;
2-4)使用Android智能终端完整性验证模块依次验证Android dalvik应用完整性信息中的完整性度量值流是否符合安全策略;
2-5)所述Android智能终端完整性验证模块记录PID-Unsecure不安全应用进程ID并发送不安全应用进程名及ID至Android智能终端完整性信息收集模块;
2-6)所述Android智能终端完整性信息收集模块将返回不安全应用进程ID及对应的进程名至终端的度量值上传模块。
3.如权利要求1所述的Android智能终端运行环境可信控制方法,其特征在于,在设定的时间周期内再次发送所述Android dalvik完整性信息到监控中心验证的方法如下:
3-1)度量值上传模块直接关闭由监控中心返回的不安全应用进程ID的对应进程;
3-2)用户确认后,度量值上传模块再次上传所述Android dalvik应用完整性信息至监控中心;
3-3)所述Android智能终端完整性验证模块再次验证收到的Android dalvik应用完整性信息中的完整性度量值流是否符合安全策略,同时验证新上传的Android dalvik应用完整性信息中是否包含PID-Unsecure;
3-4)若不符合安全策略或新上传的Android dalvik应用完整性信息中包含PID-Unsecure则发送切断终端网络信号指令至网络连接控制模块;
3-5)所述网络连接控制模块切断终端对其安全域内网络服务的访问能力。
4.如权利要求1所述的Android智能终端运行环境可信控制方法,其特征在于,判断所述Android智能终端存在于设定敏感区域内的方法如下:
4-1)在所述Android智能终端地理位置监控模块中设置敏感的GPS区域位置范围;
4-2)该Android智能终端实时判断目前地理位置是否位于敏感域范围内;
4-3)若所述Android智能终端位于敏感区域则向监控中心发送验证信息。
5.如权利要求1所述的Android智能终端运行环境可信控制方法,其特征在于,所述AndroidOS安全启动方法如下:
5-1)采用所述Android智能终端的OTP存储引导程序,引导程序度量Android Linux内核并根据存储于内存中的度量值进行验证;
5-2)若验证通过Android内核正常启动,使用所述Android内核态的完整性度量模块度量Android初始化代码;
5-3)初始完整性验证模块验证输入的Android初始化代码度量值并输出验证结果;
5-4)将验证结果返回至完整性度量模块,该模块根据验证结果确定Android操作系统初始化决策。
6.如权利要求1所述的Android智能终端运行环境可信控制方法,其特征在于,
对所述Android初始化代码进行度量内容包括:度量的Android OS内核模块和Android初始化配置文件;度量守护进程和度量Dalvik虚拟机初始化进程;度量应用层的状态报告服务。
7.如权利要求1所述的Android智能终端运行环境可信控制方法,其特征在于,
对所述Android初始化代码进行验证内容包括:验证Android OS内核模块的度量值并返回验证结果;验证Android初始化配置文件度量值并返回验证结果;验证守护进程的度量值并返回结果;验证dalvik虚拟机初始化进程的度量值并返回验证结果;验证应用层的状态报告服务的度量值并返回验证结果。
8.如权利要求7所述的Android智能终端运行环境可信控制方法,其特征在于,
所述度量应用层的状态报告服务的流程是:
8-1)操作系统Android OS启动完成后自启动状态报告服务;并通过MMAP映射状态报告服务Apk包中的.dex文件至dalvik虚拟机内存空间;
8-2)所述操作系统调用内核态的完整性度量模块对内存中的.dex文件进行度量生成度量值。
9.一种Android智能终端运行环境可信控制系统,包括监控中心子系统和Android智能终端运行状态度量与报告子系统,其特征在于,
所述监控中心子系统包括:
Android智能终端完整性信息收集模块,用于收集Android智能终端发送的Android dalvik应用完整性信息,同时返回不安全应用程序ID及对应进程名至Android智能终端;
Android智能终端完整性验证模块,对输入Android dalvik应用完整性信息进行验证和记录不安全进程ID,
还用于发送不安全应用进程ID、进程名至Android智能终端完整性信息终端模块及对再次输入的完整性信息进行验证;
安全策略管理模块,将包含不安全dalvik应用的度量值存入黑名单中,并更新黑名单中的dalvik应用度量值;
网络连接控制模块,用于控制基站/热点与终端之间的信号连接,切断终端运行不安全dalvik应用与热点/基站间的通信连接;
所述Android智能终端运行状态度量与报告子系统分为Android智能终端状态报告服务系统和Android智能终端状态度量服务系统;
所述Android智能终端状态报告服务系统包括:
终端地理位置监控模块,验证终端位置是否位于敏感区域内,若位于敏感域内则通过度量值上传模块,将生成的Android dalvik应用完整性信息发送到监控中心子系统进行验证;
度量值上传模块,将由内核完整性度量模块度量生成的Android智能终端完整性度量值及对应的Android dalvik应用进程名和当前正在运行进程ID发送至监控中心的完整性信息收集模块;
所述Android智能终端状态度量服务系统包括:
安全引导模块,保证Android智能终端启动时装载的Linux内核文件可信;
内核层的完整性度量模块,负责对Android智能终端中装载的内核模块、可执行代码和Android dalvik应用进行度量;
初始完整性验证模块,负责保证智能终端在启动过程中,Android初始化代码包括装载的Android OS内核模块、Android初始化配置文件、守护进程、dalvik虚拟机初始化进程、应用层状态报告服务均属于可信状态,从而形成完整的终端启动信任链。
CN201210521472.2A 2012-12-06 2012-12-06 Android智能终端运行环境可信控制方法及系统 Expired - Fee Related CN103020531B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210521472.2A CN103020531B (zh) 2012-12-06 2012-12-06 Android智能终端运行环境可信控制方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210521472.2A CN103020531B (zh) 2012-12-06 2012-12-06 Android智能终端运行环境可信控制方法及系统

Publications (2)

Publication Number Publication Date
CN103020531A CN103020531A (zh) 2013-04-03
CN103020531B true CN103020531B (zh) 2015-05-27

Family

ID=47969126

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210521472.2A Expired - Fee Related CN103020531B (zh) 2012-12-06 2012-12-06 Android智能终端运行环境可信控制方法及系统

Country Status (1)

Country Link
CN (1) CN103020531B (zh)

Families Citing this family (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2987002A4 (en) * 2013-04-19 2016-12-28 Intel Corp PROCESS FOR SAFE TRANSFER OF LOCATION APPLICATIONS AND LOCATION PROVIDERS
CN104346572B (zh) * 2013-07-25 2017-11-14 中国科学院信息工程研究所 一种通用的外置式智能终端安全运行环境构建方法
CN103560902A (zh) * 2013-10-10 2014-02-05 中兴通讯股份有限公司 服务器、智能终端及其远程管理方法
CN106134230A (zh) * 2013-11-21 2016-11-16 哥莱菲特软件公司 用于移动信息设备上的远程内容和配置控制的管理域
CN103685499A (zh) * 2013-12-06 2014-03-26 深圳酷派技术有限公司 终端、服务器、应用程序管理系统和方法
CN103648090A (zh) * 2013-12-12 2014-03-19 北京利云技术开发公司 一种实现智能移动终端安全可信的方法和系统
CN103646214B (zh) * 2013-12-18 2016-08-31 国家电网公司 一种在配电终端中建立可信环境的方法
CN104750458A (zh) * 2013-12-26 2015-07-01 三亚中兴软件有限责任公司 终端应用的控制、监控处理方法及装置
CN104951316B (zh) 2014-03-25 2018-09-21 华为技术有限公司 一种内核可信启动方法和装置
CN103942864B (zh) * 2014-04-15 2017-01-25 苏州佳世达电通有限公司 一种数据安全管制系统及其实现方法
CN105278969A (zh) * 2014-06-16 2016-01-27 腾讯科技(深圳)有限公司 一种应用程序的代码验证方法及系统
JP5816723B1 (ja) 2014-07-10 2015-11-18 Dmg森精機株式会社 機械装置およびその制御方法、遠隔操作装置および主操作装置
CN104166557A (zh) * 2014-08-29 2014-11-26 北京网秦天下科技有限公司 应用程序的运行方法和装置
CN105656860A (zh) * 2014-11-20 2016-06-08 中兴通讯股份有限公司 Android系统的安全管控方法、装置及其系统
CN104683336B (zh) * 2015-02-12 2018-11-13 中国科学院信息工程研究所 一种基于安全域的安卓隐私数据保护方法及系统
CN104866772A (zh) * 2015-05-07 2015-08-26 中国科学院信息工程研究所 一种基于物理环境感知的计算机访问控制方法及系统
CN104794395A (zh) * 2015-05-13 2015-07-22 上海瓶钵信息科技有限公司 基于体系结构特性的轻量级多系统安全管理架构
CN107295156A (zh) * 2016-04-05 2017-10-24 中兴通讯股份有限公司 一种终端、设备服务器、网络消息处理方法及系统
CN106611111A (zh) * 2016-12-12 2017-05-03 珠海市魅族科技有限公司 一种终端设备使用控制方法及装置
CN107579966B (zh) * 2017-08-28 2020-12-08 新华三技术有限公司 远程访问内网的控制方法、装置、系统和终端设备
CN108287997B (zh) * 2018-01-10 2020-07-31 武汉斗鱼网络科技有限公司 目标应用程序的宿主环境识别方法、装置、介质及设备
CN109684829B (zh) * 2018-12-04 2020-12-04 中国科学院数据与通信保护研究教育中心 一种虚拟化环境中服务调用监控方法和系统
CN111611605B (zh) * 2020-05-19 2023-11-03 黄石闻泰通讯有限公司 增强现实设备的控制方法、装置、设备及存储介质
CN111831609B (zh) * 2020-06-18 2024-01-02 中国科学院数据与通信保护研究教育中心 虚拟化环境中二进制度量值统一管理和分发的方法和系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458743A (zh) * 2007-12-12 2009-06-17 中国长城计算机深圳股份有限公司 一种保护计算机系统安全的方法
CN101504705A (zh) * 2009-03-17 2009-08-12 武汉大学 可信平台模块及其计算机启动控制方法
CN102056169A (zh) * 2009-11-05 2011-05-11 中兴通讯股份有限公司 一种防止非法终端接入的方法、终端及系统
CN102136044A (zh) * 2010-07-14 2011-07-27 华为技术有限公司 安全启动方法、装置及计算机系统
CN102457938A (zh) * 2010-10-18 2012-05-16 中兴通讯股份有限公司 终端接入限制的方法及系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101458743A (zh) * 2007-12-12 2009-06-17 中国长城计算机深圳股份有限公司 一种保护计算机系统安全的方法
CN101504705A (zh) * 2009-03-17 2009-08-12 武汉大学 可信平台模块及其计算机启动控制方法
CN102056169A (zh) * 2009-11-05 2011-05-11 中兴通讯股份有限公司 一种防止非法终端接入的方法、终端及系统
CN102136044A (zh) * 2010-07-14 2011-07-27 华为技术有限公司 安全启动方法、装置及计算机系统
CN102457938A (zh) * 2010-10-18 2012-05-16 中兴通讯股份有限公司 终端接入限制的方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Enabling Remote Attestation for the Android Platform;Mohammad Nauman1 et al.;《Trust and Trustworthy computing》;20101231;第6101卷;摘要,第4-6页,附图1 *

Also Published As

Publication number Publication date
CN103020531A (zh) 2013-04-03

Similar Documents

Publication Publication Date Title
CN103020531B (zh) Android智能终端运行环境可信控制方法及系统
CN102624699B (zh) 一种保护数据的方法和系统
US10778444B2 (en) Devices and methods for application attestation
US11432150B2 (en) Method and apparatus for authenticating network access of terminal
US9396325B2 (en) Provisioning an app on a device and implementing a keystore
CN202795383U (zh) 一种保护数据的设备和系统
CN103843303B (zh) 虚拟机的管理控制方法及装置、系统
EP2278514B1 (en) System and method for providing secure virtual machines
KR101778960B1 (ko) 모바일 단말의 보안 감시 시스템 및 이를 이용한 모바일 단말의 보안 감시 방법
CN105447406A (zh) 一种用于访问存储空间的方法与装置
CN109088848A (zh) 一种智能网联汽车信息安全保护方法
CN108429719A (zh) 密钥保护方法及装置
CN106411830A (zh) 防止访问数据被篡改的方法及移动终端
CN103619014B (zh) 防止应用数据泄露的方法和系统
CN113726726B (zh) 一种基于边缘计算的电力物联网可信免疫体系及度量方法
CN104063788A (zh) 一种移动平台可信支付系统及方法
CN106055936A (zh) 可执行程序数据包加密/解密方法及装置
CN104104650B (zh) 数据文件访问方法及终端设备
CN114584331A (zh) 一种配电物联网边缘物联代理网络安全防护方法及系统
CN105430649B (zh) Wifi接入方法及设备
CN104955043B (zh) 一种智能终端安全防护系统
Alcaraz et al. OCPP in the spotlight: threats and countermeasures for electric vehicle charging infrastructures 4.0
CN112491545B (zh) 一种可信的混合云管理平台、接入方法及系统
CN102968588A (zh) 智能终端系统
CN115879087A (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
C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen

Patentee after: Huawei Technologies Co., Ltd.

Patentee after: Institute of Information Engineering, Gas

Address before: 100093 Beijing city Haidian District minzhuang Road No. 89

Patentee before: Institute of Information Engineering, Gas

Patentee before: Huawei Technologies Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150527

Termination date: 20171206

CF01 Termination of patent right due to non-payment of annual fee