首页> 中国专利> 一种高安全可信移动终端安全体系架构及安全服务方法

一种高安全可信移动终端安全体系架构及安全服务方法

摘要

本发明涉及一种高安全可信移动终端安全体系架构及安全服务方法,包括硬件、微内核Hyp、主操作系统MOS、极简可信隔离环境STEE和核心控制器CSC。基于虚拟化技术实现新型移动终端安全架构,在虚拟机管理层实现微内核Hyp,使得所有主系统对硬件的访问都要受到微内核Hyp的监控和安全管理;并在微内核Hyp中对主系统内核进行动态安全度量,实时监测内核安全性,当检测到内核受损时,迅速切换到备份系统,保证核心功能不受影响;结合虚拟机的虚拟隔离技术和TrustZone的硬件隔离能力,构建多个极简可信隔离环境STEE,实现不同STEE中运行独立的可信应用TA,从而降低可信隔离环境系统的复杂性,并实现TA的分离。

著录项

  • 公开/公告号CN109086100A

    专利类型发明专利

  • 公开/公告日2018-12-25

    原文格式PDF

  • 申请/专利权人 中国科学院信息工程研究所;

    申请/专利号CN201810830955.8

  • 申请日2018-07-26

  • 分类号G06F9/445(20180101);G06F9/455(20060101);G06F21/51(20130101);G06F21/57(20130101);

  • 代理机构11251 北京科迪生专利代理有限责任公司;

  • 代理人安丽;成金玉

  • 地址 100093 北京市海淀区闵庄路甲89号

  • 入库时间 2023-06-19 07:52:37

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2020-03-31

    授权

    授权

  • 2019-01-18

    实质审查的生效 IPC(主分类):G06F9/445 申请日:20180726

    实质审查的生效

  • 2018-12-25

    公开

    公开

说明书

技术领域

本发明涉及一种高安全可信移动终端安全体系架构及安全服务方法,实现安全核心控制与安全隔离增强服务。

背景技术

随着移动互联网技术的高速发展,移动智能终端设备所涵盖应用已从传统的通信功能延伸到移动办公、移动支付等高安全、高敏感的领域。移动终端需要处理越来越多的商业、部门秘密和个人隐私等敏感信息,如公司商业文件、银行账户服务、个人购物订单等。移动终端作为移动互联网时代最主要的载体,移动终端面临着严峻的安全挑战和安全威胁,例如恶意订购、自动拨打声讯台、自动联网、木马软件和硬件后门等将引起用户经济损失、敏感数据泄露等风险。保障移动终端承载的信息安全,防止移动终端信息泄露是个人和企事业都非常关心的问题。

TEE(Trusted Execution Environment可信执行环境)为移动终端软硬件中的基础信息、敏感数据和关键服务提供了基于硬件的安全。TEE为TA(Trusted Application可信应用)提供了安全执行环境;它同时提供保密性,完整性并对所属TA的资源和数据提供访问权限的控制。根据GP标准,TEE是一个与移动终端主操作系统(可称为Rich OS)并行运行的独立隔离执行环境,为Rich环境提供安全服务。TEE独立于Rich OS和其上的应用,来访问硬件和软件安全资源。在TEE内部,来自不同应用提供商的TA之间是相互独立的,未授权访问的情况下,一个TA不能执行其他TA的资源。然而在现有的安全终端架构中,TEE自身的执行环境系统都十分复杂,使得可信基较为庞大,易受到漏洞攻击;同时TA和TA之间都未真正实现强隔离,TA的数量也未受到限制,如一旦TEE系统本身或某个TA存在安全漏洞,均可能影响到其他TA应用和数据的安全。由于TEE和TA的执行权限高于Rich OS的权限,当TEE和TA受到攻击时,Rich OS也极易被攻破,例如,CVE-2014-9979文件指出使用CAF内核的高通产品中基于TrustZone架构的系统调用未初始化系统变量,这可能会导致对安全内存的攻击;CVE-2016-8763指出华为P9手机TrustZone架构的驱动程序中存在不适当的资源释放漏洞,这将允许攻击者重启系统或者获得权限提升;CVE-2018-5210指出三星移动设备中存在对任意TEE代码执行的栈溢出攻击,并通过暴力破解获得移动设备的解锁信息。

在2014年的Proceedings of the 2014ACM SIGSAC Conference on Computerand Communications Security会议上由Azab等人提出了基于TEE的实时内核保护方案,可实现对终端内核数据的实时保护,但并未涉及不同TA的隔离机制。在DSN2015上,Sun等人提出了一种基于硬件的可信隔离环境架构,实现不同TIE与TEE间的隔离,但是该架构需要相应ARM芯片具备DDR存储的数字水印配置功能,应用场景受限于芯片选型。在26th USENIXSecurity Symposium(USENIX Security 2017)中由Hua等人提出的虚拟化TrustZone技术可实现基于虚拟化技术的多客户机隔离环境实现,运行于不同客户机环境下的TA可实现安全隔离,而其TEE仍较大。另外,Hua等人的架构适用于基于ARM结构的服务器应用场景,其架构直接应用于终端上将带来性能的大幅下降,对于用户体验而言是不可接受的。因此,相较于传统的复杂型可信隔离环境,在不失终端性能大幅下降前提下,简化可信基并提升安全代码执行环境的隔离安全性是高安全可信移动终端架构的一种迫切需求。与上述三种方案相比,前两者没采用微内核方案,而后者微内核中未采用相关安全机制,本发明可在TEE非完全可信的条件下,简化TEE的复杂度从而减小TEE的受攻击面,同时利用虚拟化技术实现TA之间的隔离安全增强。

发明内容

本发明技术解决问题:针对移动终端中关键数据、关键代码、关键服务安全防护的问题,提供一种高安全可信移动终端体系架构及安全服务方法,基于虚拟化技术实现新型移动终端安全架构,在虚拟机管理层实现微内核Hyp,使得所有主系统对硬件的访问都要受到微内核Hyp的监控和安全管理;并在微内核Hyp中对主系统内核进行动态安全度量,实时监测内核安全性,当检测到内核受损时,迅速切换到备份系统,保证核心功能不受影响;结合虚拟机的虚拟隔离技术和TrustZone的硬件隔离能力,构建多个极简可信隔离环境STEE,实现不同STEE中运行独立的可信应用TA,从而降低可信隔离环境系统的复杂性,并实现TA的分离。

本发明技术解决方案:一种高安全可信移动终端安全体系架构,所述的架构包括硬件、微内核Hyp、主操作系统MOS、极简可信隔离环境STEE和核心控制器CSC;其中:

所述硬件,提供数据处理与存储功能,为上层应用软件和应用提供物理支持;

所述微内核Hyp,具备内核受损检测、可信恢复、硬件安全监管功能,实现对所有主操作系统MOS、极简可信隔离环境STEE和备系统对硬件访问的监控,微内核实现软件门卫功能,对主操作系统访问硬件和资源的行为进行监管,微内核基于虚拟化技术在虚拟机管理层优化实现;

所述主操作系统MOS,部署于微内核Hyp之上的虚拟机控制域或虚拟机中,支持普通应用运行,当移动应用程序需要处理关键敏感数据或调用关键代码时,主操作系统的控制指令将被微内核中的CSC调用程序捕获,并进入到SWS模块,若通过SWS模块的执行环境切换合法性监测校验则换至极简可信执行环境STEE,在STEE中运行可信应用TA,以安全隔离的方式处理关键敏感数据,运行关键代码,执行完成后通过中断保护返回至主操作系统中程序执行位置,当主操作系统内核受到攻击时,具有及时关闭主操作系统,启用备用系统,并修复主操作系统的功能;

所述可信隔离环境STEE,部署于运行轻量级嵌入式操作系统(轻量级嵌入式操作系统,STEE运行的轻量级嵌入式操作系统可由具体应用自行选择,并不唯一,如MiniOS等,而所谓轻量级,是指代码量小功能简单的嵌入式操作系统)的客户虚拟机中,实现多个STEE按需创建功能;实现STEE与MOS以及不同STEE之间相互隔离功能,以及极简可信隔离环境TEE的受攻击面、提升安全代码运行环境安全性的功能;STEE内运行极简操作系统,以减少攻击面,在用户对安全性要求可以降低的前提条件下,也可运行复杂操作系统,实现单一移动终端上的多级多域系统隔离;所述极简操作系统是指经过精心剪裁的轻量级操作系统,包括MiniOS;所述复杂操作系统是Linux或Android的完备系统;

所述核心控制器CSC,执行于TEE中,CSC包括安全内存隔离模块SMI、安全世界切换模块SWS、I/O资源隔离模块IOI;所述SMI通过启动时的控制域地址划分、内存地址读写权限访问控制和STEE的内存按需加密,实现内存隔离安全增强功能,SMI监管STEE和MOS的内存访问行为及实现内存执行区域隔离,SMI包括内存区域划分、内存页表访问控制和STEE内存加密方法;所述SWS通过对执行环境切换的硬件中断或切换指令所指向跳转的特权等级合法性检验,若为合法性切换则保护现场地址并执行I/O隔离操作,在切换目标环境的任务完成后返回至原程序执行位置;所述IOI实现I/O安全隔离,在SWS每次切换之前,首先禁止所有的I/O外设中断响应,并根据跳转的STEE的安全需求细粒度开启并维护一个最小中断向量表,避免非授权的I/O中断影响正在执行的STEE中代码执行。

本发明的一种高安全可信移动终端安全体系架构的安全服务方法,包括可信启动、微内核安全监管、可信隔离和可信切换四种功能,实现步骤如下:

(1)终端上电后首先加载固件初始化代码,包括对基本I/O的初始化设置;

(2)加载可信执行环境TEE,初始化所述TEE中的安全外设驱动程序;

(3)初始化代码中将调用CSC的代码,并依次完成所述CSC中的SMI、SWS和IOI的初始化配置,其中SMI代码将初始化STEE的固定内存分区,并禁止STEE的动态分配功能,SWS代码将初始化特权等级向量,IOI代码将为SMI分配的STEE初始化一个最小外设中断向量表;

(4)CSC初始化完成后,加载微内核;

(5)加载微内核中的初始化内核受损检测,通过内核完整性检测后完成可信启动,然后加载内核受损动态监测服务;

(6)加载可信恢复、硬件安全监管功能;

(7)加载MOS和备用系统的镜像,引导主操作系统的Bootloader程序,并初始化非特权外设驱动程序;

(8)挂载STEE,完成STEE中安全服务的初始化;

(9)随着MOS和STEE的挂机运行,微内核安全监管、可信隔离和可信切换服务将同步挂起;

(10)微内核安全监管服务将动态监测内核受损情况,微内核对主操作系统的内核运行情况进行动态度量,当检测到内核受损需要恢复时,可信启动代码将会首先关闭当前运行的主操作系统和STEE,并切换到备用系统引导程序;

(11)可信隔离服务将捕获对STEE的内存访问请求,调用SMI中的内存加密机制实现对转换地址的加密和解密;

(12)可信切换服务捕获世界切换的外部中断或内部切换指令请求,通过SMC陷入到SWS模块中实现跳转特权等级合法性检查,并将合法切换发生时的指令、地址、数据信息压入保护堆栈,待被切换的世界中任务执行完成后恢复并继续等待并响应相应的请求。

所述的可信启动服务是在终端上电到主操作系统运行过程中,通过对内核完整性校验建立的静态可信验证过程,当完整性校验通过后,依次按照启动流程加载可信启动代码,并对加载完成后的主操作系统状态进行判断,保证启动的代码程序是可信赖的、未受篡改的,用于在开机启动阶段构建安全可信的系统运行状态,具有开机启动阶段构建安全可信的主操作系统运行状态功能。

所述微内核安全监管服务是在微内核中实现对所有MOS和STEE对硬件资源访问行为的监管,当I/O访问请求发生时,需先经过微内核安全监管服务依据安全策略对所有的请求指令内容进行检查、访问控制和安全审计;同时,微内核对主操作系统的内核运行情况进行动态度量,当检测到内核受损需要恢复时,可信启动代码将会首先关闭当前运行的主操作系统和STEE,并切换到备用系统;通过指令硬编码方式,确保CSC的隔离增强监管服务在STEE环境切换、内存访问将从微内核陷入到TEE中执行,且世界切换过程不能被绕过。

所述可信隔离服务包括SMI初始化过程对STEE内存区域的划分并禁止新的STEE启动,实现MOS与STEE、STEE与STEE直接的内存隔离;IOI初始化过程对客户虚拟机间的I/O访问权限划分,每个客户虚拟机内的STEE仅能访问其被分配的I/O;主操作系统和STEE挂载运行过程不同世界的切换请求需经过SWS的安全切换监控,唯有满足特权等级跳转合法性检查的切换才可被响应。

所述可信切换服务是主操作系统MOS、可信隔离环境STEE相互切换的过程将被SWS安全监控;主操作系统启动后,终端运行主操作系统MOS,如果主操作系统MOS需要调用可信应用TA,MOS中的系统程序会发出中断指令或内部请求指令,通过劫持世界切换引起的硬件中断或切换陷入指令,SWS将检查执行环境中发出的世界切换请求,世界切换过程不可被绕过,而不满足安全特权等级跳转规则的请求将被过滤;微内核进行响应后,当切换请求合法时,SWS通过保护现场地址,修改特权等级跳转至执行域,待执行任务完成后立即恢复特权等级并返回执行当前保护的指令地址,主操作系统进程跳转到STEE,运行TA,TA运行完成后,STEE发出中断指令跳回到主操作系统MOS,具有主操作系统MOS、可信隔离环境STEE相互切换的过程将被SWS安全监控的功能。

本技术与现有技术相比,具有以下优点:

(1)本发明STEE两两相互隔离特性保障每一段安全代码TA的执行,不会受到复杂主系统和其他TA代码中的安全风险影响,极小化攻击面,较之传统的复杂型可信隔离环境而言,简化可信计算基,提升了安全代码运行环境的安全性。

(2)本发明中的微内核架构,所有主系统MOS、极简可信隔离环境STEE和备系统对硬件和资源的访问都必须经过微内核,因此将安全监管策略和服务部署在微内核中,具有不可绕过的软件门卫能力。

(3)本发明中的内核受损检测与可信恢复能力,支持内核受损实时监测和受损后的及时关闭与恢复,可在系统受到攻击时做出快速响应,并使得核心功能不受损。

(4)本发明同时可以设置多个STEE环境,执行互相隔离的安全程序、代码或者系统。

(5)本发明中可信隔离环境STEE与MOS以及STEE与STEE之间相互隔离,具有双重隔离保障:一方面基于虚拟机隔离技术实现客户虚拟机基础隔离,另一方面基于位于TEE中的高特权等级CSC安全控制能力实现内存地址、I/O访问等深度隔离。

综上所述,本发明相比较于传统的移动终端架构,不仅提高了可信服务的安全性,同时也提升了架构的可扩展性和可移植性。

附图说明

图1是本发明整体的结构示意图;

图2是可信隔离示意图;

图3是可信启动流程图;

图4是SMI工作流程图;

图5是SWS的构成图;

图6是微内核监管服务工作流程图。

具体实施方式

为使本发明的目的、优点以及技术方案更加清楚明白,以下通过具体实施描述对本发明进一步详细说明。

为方便说明,先介绍一些本发明中将用到的部分缩写标记。

CSC Core Security Control核心安全控制器

Hyp Hypervisor 微内核

MOS Main Operation System主操作系统

REE Rich Execution Environment 普通执行环境

STEESimplified Trusted Execution Environment 极简可信隔离环境

SMI Security Memory Isolation安全内存隔离

SWS Secured World Switching安全世界切换

SMC Secure Monitor Call安全监控调用

SoC System on Chip 芯片片上系统

TATrusted Application可信应用

TEE Trusted Execution Environment可信执行环境

本发明主要是构建一个通用的高可信移动终端安全隔离架构,本架构中微内核作为软件门卫,对所有上层系统的硬件访问行为进行监管,同时STEE和TA可基于虚拟化技术按需创建,主操作系统和其他可信应用TA不能直接访问任意指定可信应用TA,从而有效地保证数据安全性和隔离性。基于此,本发明高可信移动终端安全隔离架构具有可信服务安全性高、安全架构可扩展性好等优势。

高可信安全移动终端安全隔离体系架构,由硬件、微内核Hyp、主操作系统MOS、极简可信隔离环境STEE和核心控制器CSC五个部分组成。其中硬件包括SoC芯片、外设等硬件设备;微内核Hyp为主系统MOS和极简可信隔离环境STEE提供最为基础的硬件驱动、内存访问、环境切换与安全监管等能力;主操作系统为面向用户的应用程序提供支持服务;极简可信隔离环境STEE中执行独立安全应用TA,MOS和STEE之间基于虚拟机架构相互隔离;核心控制器CSC依托TrustZone的硬件安全特性,向MOS和STEE提供隔离增强服务。各部分具体描述如下:

1)硬件:包括但不限于SoC芯片、外设、密卡等硬件,其中SoC芯片应支持虚拟化。

2)微内核Hyp:微内核扮演软件门卫的角色,所有主系统MOS、极简可信隔离环境STEE和备系统对硬件和资源的访问都要受到微内核的监控。微内核具备内核受损检测、可信恢复、及硬件资源访问安全监管等能力。

3)主操作系统MOS:主操作系统部署于Hyp之上的虚拟机控制域或虚拟机中,其操作系统不限(可以是Android、Linux等移动终端操作系统)。主操作系统应支持移动应用程序运行,当移动应用程序需要处理关键敏感数据或调用关键代码时,主操作系统将控制权移交给极简可信执行环境STEE,在STEE中运行TA,以安全隔离的方式处理关键敏感数据,运行关键代码。

4)可信隔离环境STEE:每一个STEE部署于客户虚拟机中。多个STEE可以按需创建,以保护不同安全代码TA的执行。STEE与MOS以及STEE与STEE之间相互隔离,具有双重隔离机制:一方面基于虚拟机隔离技术实现客户虚拟机基础隔离,另一方面基于CSC控制能力实现客户虚拟机内存地址等深度隔离。STEE内推荐运行极简操作系统,以减少攻击面,在用户对安全性要求可以降低的前提条件下,也可运行复杂操作系统,实现单一移动终端上的多级多域系统隔离。

5)核心安全控制器模块CSC:运行在受TrustZone硬件隔离能力防护的独立可信执行环境中,包括但不限于安全内存隔离模块SMI、安全世界切换SWS模块、I/O资源隔离模块IOI。

SMI内存隔离模块监管STEE和MOS的内存访问行为,采用内存区域划分,内存页表访问控制,STEE内存加密等方法,保证主系统MOS和其他STEE无法访问特定STEE中的代码和数据。I/O设备隔离模块IOI保护STEE免受恶意设备发出的外部中断干扰。SWS负责监控MOS、STEE之间的切换,通过实施安全策略,并依据程序执行环境安全级别的绑定与识别判断,确保切换操作的安全性和准确性。

本发明中所述高安全可信移动终端体系架构所提供的安全服务方法包括但不限于可信启动、微内核安全监管、可信隔离和可信切换等。

(1)可信启动是指移动终端设备在开机到系统全部启动完成的过程中建立的静态可信验证过程,能够保证启动的各部件是可信赖的、未受篡改的,用于在开机启动阶段构建安全可信的系统运行状态。

(2)微内核安全监管是指在微内核中实现对所有上层系统访问硬件资源行为的监管,如为安全存储和数据加密提供密卡调用监管服务,以及主系统内核的动态度量,并在主系统内核受到攻击时,及时关闭主系统,启用备用系统,并修复主系统。

(3)可信隔离是指STEE与MOS以及不同STEE之间的相互隔离。一方面基于虚拟机隔离技术实现客户虚拟机之间的基础隔离,另一方面基于CSC控制能力实现客户虚拟机之间内存地址、I/O访问等深度隔离。

(4)可信切换是指主操作系统MOS、可信隔离环境STEE相互切换的过程将被SWS安全监控。系统启动后,移动终端运行主操作系统MOS,如果MOS需要调用可信应用TA,系统程序会发出中断指令,微内核进行响应后,在CSC的管控下,系统进程跳转到STEE,运行TA,TA运行完成后,STEE发出中断指令跳回到主操作系统MOS。

图1示出了高可信移动终端安全隔离架构的整体框架图,主要包括以下五个部分的内容。硬件芯片提供对虚拟化技术的支持能力;基于虚拟化技术的微内核实现软件门卫功能,对所有上层系统的硬件访问行为进行监管,并通过内核受损监测模块实现对内核执行区域的完整性度量,形成内核本身的安全监测能力,并通过CSC强制调用能力实现与对安全核心控制模块的安全访问;所述CSC中的SMI、IOI和SWS功能模块,形成安全内存分配隔离、IO设备隔离和安全世界切换的控制能力;所述的主操作系统MOS指Android、Linux等移动终端操作系统;所述可信隔离环境集成了TA应用极简安全代码并执行于轻量级的操作系统(如MiniOS等);CSC运行于硬件隔离机制防护的安全环境中,如基于TrustZone技术实现的硬件独立安全内存中。

如图2所示,基于高可信移动终端安全隔离架构的实施提供的可信启动方法包括:移动终端通电启动后,会依次层层验证和加载硬件内的固件代码、核心控制器代码、微内核代码、主操作系统、STEE代码安全执行环境,确保所有代码完整性未受篡改后,启动链完成,否则将中止启动。

如图3所示,可信隔离是指可信隔离环境STEE与主操作系统MOS以及不同STEE之间相互隔离,具有双重隔离机制:一方面基于虚拟机隔离技术实现客户虚拟机基础隔离,另一方面基于CSC控制能力实现客户虚拟机内存地址等深度隔离。

如图4所示,在移动终端启动流程中,CSC中的SMI模块的内存隔离方案在终端上电后初始分配MOS和STEE的内存隔离空间,所述的方案中各执行环境的物理地址均放置于转换表内,转换表内的映射关系访问控制权限修改为只读方式,以保证对Hyp转换表访问的安全性。对STEE中的内存访问按需加密,确保STEE中代码执行的内存保护。

如图5所示,安全世界切换控制模块SWS实施对MOS、STEE和TEE间切换的监控和调度,通过实施安全策略,确保切换操作的安全性和准确性。通过劫持安全世界切换引起的硬件中断或切换陷入指令,SWS将检查每个客户机发出的世界转换请求,该过程不可被绕过,而不满足安全特权等级跳转规则的请求将被过滤。当切换请求合法时,SWS通过保护现场地址,修改特权等级跳转至执行域,待执行任务完成后立即恢复特权等级并返回执行当前保护的指令地址。SWS模块加强STEE切换的安全性能,为了实现复杂的管理,SWS确保每个交换将首先跳转到SWS本身。

所述I/O隔离模块IOI实施对外设接口的安全隔离,SWS模块在每次切换之前,首先禁止所有的外设中断响应,并根据跳转的STEE的安全需求细粒度开启并维护一个最小中断向量表,避免非授权的外设中断影响正在执行的STEE中代码执行。

如图6所示,所述微内核的安全监管服务,包括但不限于三方面能力。1)硬件资源访问监管:所有来自主系统和STEE的硬件资源访问请求,包括外设请求、输入输出请求、密卡调用请求等,均要通过由微内核代为申请并返回请求结果,微内核的硬件资源访问监管模块可依据安全策略对所有的请求指令内容进行检查、访问控制和安全审计;2)内核受损可信恢复:微内核对主系统的内核运行情况进行动态度量,当检测到内核受损需要恢复时,可信恢复控制模块将会首先关闭当前运行的主操作系统和STEE,并切换到后备系统。后备系统启动后代替原来的主系统,仅提供简单核心应用功能(如电话、短信等),并以下载漏洞修复补丁等方式来对主系统进行修复工作。修复工作完成后,可信恢复控制模块再次启动主系统;3)CSC可信陷入:通过指令硬编码等方式,确保CSC的隔离增强监管服务在STEE环境切换、内存访问等时刻会从微内核陷入到TEE中执行。

提供以上实例仅仅是为了描述本发明的目的,并非要限制本发明的范围。本发明的范围由所附权利要求限定。凡在本发明的精神和原理之内,所做出的任何等同替换、修改、改进等,均应包含在本发明的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号