CN111859394B - 基于tee的软件行为主动度量方法及系统 - Google Patents

基于tee的软件行为主动度量方法及系统 Download PDF

Info

Publication number
CN111859394B
CN111859394B CN202010704861.3A CN202010704861A CN111859394B CN 111859394 B CN111859394 B CN 111859394B CN 202010704861 A CN202010704861 A CN 202010704861A CN 111859394 B CN111859394 B CN 111859394B
Authority
CN
China
Prior art keywords
behavior
measurement
active
active measurement
tee
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.)
Active
Application number
CN202010704861.3A
Other languages
English (en)
Other versions
CN111859394A (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.)
National University of Defense Technology
Original Assignee
National University of Defense Technology
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 National University of Defense Technology filed Critical National University of Defense Technology
Priority to CN202010704861.3A priority Critical patent/CN111859394B/zh
Publication of CN111859394A publication Critical patent/CN111859394A/zh
Application granted granted Critical
Publication of CN111859394B publication Critical patent/CN111859394B/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/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • G06F9/5016Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明公开了一种基于TEE的软件行为主动度量方法及系统,该方法包括在REE环境下的度量对象运行过程中执行的下述步骤:REE环境下的主动度量代理监控获取度量对象的行为特征,将度量对象的行为特征发送到TEE环境下的主动度量模块;TEE环境下的主动度量模块根据主动度量策略库对度量对象的行为特征进行度量获得对应的主动度量结果,将主动度量结果返回给REE环境下的主动度量代理;REE环境下的主动度量代理收到返回的主动度量结果。本发明比传统度量方法具有更强的软件行为度量能力及更好的运行效率,安全强度方面更优,能够保障软件可信运行,支持对软件实时运行行为发起主动度量,度量能力相比已有方法更强。

Description

基于TEE的软件行为主动度量方法及系统
技术领域
本发明涉及计算机安全技术,具体涉及一种基于TEE的软件行为主动度量方法及系统。
背景技术
近年来,随着计算机设备的计算能力不断增强,承载的应用越来越多,导致面临的安全风险也日益增加,诸如用户信息盗取、篡改、滥用、假冒、植入病毒、蓄意破坏、窃听、欺诈、致瘫等恶意攻击行为的不断发生,给信息安全系统带来了严峻的挑战。一方面,据国家互联网应急中心统计,2019年以来,我国境内感染计算机恶意程序的主机数超过240万台,感染的恶意程序超过4万个,网页仿冒、网站后门、网页篡改等问题依然比较严重。在这些攻击的目标中,应用程序漏洞占56.2%,Web应用漏洞占24.9%,操作系统漏洞占8.3%,网络设备(如路由器、交换机等)漏洞占7.6%,数据库漏洞占1.8%,安全产品(如防火墙、入侵检测系统等)漏洞占1.2%。由此可见,操作系统及其上层应用面临安全的挑战相对而言比较严重,发生的安全事件总和超过了90%。另一方面,随着自主可控技术被提到国家战略层面,底层国产处理器和操作系统是整个信息系统的基石,需要充分发挥软硬件特性,协同设计针对软件行为的主动度量方法,确保软件运行态不被侵犯,从而达到系统安全性整体增强的目的。可信执行环境通过硬件隔离的方法保护数据和应用安全,能有效防御来自外部的安全威胁,常用于移动终端支付等嵌入式领域。
发明内容
本发明要解决的技术问题:针对现有技术的上述问题,提供一种基于TEE的软件行为主动度量方法及系统,本发明比传统度量方法具有更强的软件行为度量能力及更好的运行效率,安全强度方面更优,能够保障软件可信运行,支持对软件实时运行行为发起主动度量,度量能力相比已有方法更强。
为了解决上述技术问题,本发明采用的技术方案为:
一种基于TEE的软件行为主动度量方法,该方法包括在REE环境下的度量对象运行过程中执行的下述步骤:
1)REE环境下的主动度量代理监控获取度量对象的行为特征,将度量对象的行为特征发送到TEE环境下的主动度量模块;
2)TEE环境下的主动度量模块根据主动度量策略库对度量对象的行为特征进行度量获得对应的主动度量结果,将主动度量结果返回给REE环境下的主动度量代理;
3)REE环境下的主动度量代理收到返回的主动度量结果。
可选地,步骤1)中的行为特征包括功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征,所述功能行为的特征是指涉及文件、进程、内核、网络、信号的操作特征,所述执行行为的特征是指关键指令执行顺序,所述路径行为的特征是指输入和输出时候访问的文件所在的路径,所述时间行为的特征是指功能行为的执行时间,所述资源行为的特征是指使用到的包括CPU资源、内存资源、存储资源、网络资源、外设资源在内的系统资源。
可选地,步骤2)中的主动度量策略库包括功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征的正常特征值或者正常特征值的取值范围,且所述正常特征值或者正常特征值的取值范围时通过对度量对象进行运行测试得到的。
可选地,步骤2)中的主动度量结果包括行为安全和行为不安全两种。
可选地,步骤2)中对度量对象的行为特征进行度量的详细步骤包括:将功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征分别与主动度量策略库中对应的正常特征值或者正常特征值的取值范围进行比对,如果功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征全部都与正常特征值或者正常特征值的取值范围相符,则判定主动度量结果为行为安全,否则判定主动度量结果为行为不安全。
可选地,步骤3)之后还包括主动度量代理根据主动度量结果选择性对度量对象进行安全控制的步骤:判断返回的主动度量结果的类型,如果主动度量结果为行为安全,则允许度量对象继续执行;若果主动度量结果为行为不安全,则结束度量对象的运行。
可选地,该方法还包括在REE环境下的度量对象启动过程中执行的下述步骤:
S1)REE环境下的主动度量代理收到度量对象的启动请求信号;
S2)REE环境下的主动度量代理计算度量对象的完整性信息,将度量对象的信息及完整性信息发送到TEE环境下的主动度量模块;
S3)TEE环境下的主动度量模块判断度量对象的完整性信息、主动度量策略库中预先存储的完整性信息是否相同,如果相同则返回允许启动信号给REE环境下的主动度量代理,否则返回禁止启动信号给REE环境下的主动度量代理;
S4)REE环境下的主动度量代理若收到返回的允许启动信号则允许度量对象启动,否则禁止度量对象启动。
可选地,所述资源请求规则与主动度量策略库匹配的判断方式如下:根据度量对象的信息、主动度量策略库中所有的预先存储的完整性信息对应的度量对象进行匹配,如果匹配成功则进一步将匹配项目的完整性信息、主动度量代理发送的完整性信息进行比对,只有两者相同才判定度量对象的完整性信息、主动度量策略库中预先存储的完整性信息相同。
此外,本发明还提供一种基于TEE的软件行为主动度量系统,包括计算机设备,该计算机设备被编程或配置以执行所述基于TEE的软件行为主动度量方法的步骤,或者该计算机设备的存储器中存储有被编程或配置以执行所述基于TEE的软件行为主动度量方法的计算机程序。
此外,本发明还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行所述基于TEE的软件行为主动度量方法的计算机程序。
和现有技术相比,本发明具有下述优点:
1、本发明利用TEE硬件隔离技术实现主动度量模块来进行主动度量,比传统度量方法具有更强的软件行为度量能力及更好的运行效率,安全强度方面更优,能保障软件可信运行,能有效防止系统遭受恶意攻击和杜绝进程的某些恶意行为。
2、本发明REE环境下的主动度量代理监控获取度量对象的行为特征,支持对软件实时运行行为发起主动度量,度量能力相比已有方法更强。
附图说明
图1为本发明实施例方法中的基本流程示意图。
图2为本发明实施例方法的系统结构示意图。
图3为本发明实施例中行为特征的分类示意图。
图4为本发明实施例中构建主动度量策略库的流程示意图。
具体实施方式
如图1和图2所示,本实施例基于TEE的软件行为主动度量方法包括在REE环境下的度量对象运行过程中执行的下述步骤:
1)REE环境下的主动度量代理监控获取度量对象的行为特征,将度量对象的行为特征发送到TEE环境下的主动度量模块;
2)TEE环境下的主动度量模块根据主动度量策略库对度量对象的行为特征进行度量获得对应的主动度量结果,将主动度量结果返回给REE环境下的主动度量代理;
3)REE环境下的主动度量代理收到返回的主动度量结果。
本实施例中,度量对象可以为应用软件、模块、操作系统内核、驱动等可独立运行的软件,可度量范围广泛,有利于多方位提高系统的安全性。度量对象可以根据需要进行指定,例如图2中的通用应用、安全服务目标、常规核态环境中的模块1和模块2均为本实施例中指定的度量对象。如无特别之处,下文中提及的软件是指度量对象。
本实施例方法中的整体架构如图2所示。本专利采用了双操作系统,左边部署称为安全世界(REE环境),安装通用Kylin操作系统,用于部署常规应用;右边部分称为安全世界(TEE环境),安装了OPTEE开源操作系统,用于部署度量框架的核心部分。本实施例中主动度量模块运行在安全世界,启动之前利用TPM模块(可信赖平台模块)对其发起可信度量,确保程序运行前状态时安全的。如图2所示,度量对象位于REE环境下的用户模式下,主动度量代理位于REE环境下的特权模式下。主动度量代理、主动度量模块之间通过TEE环境下的监控器(monitor)实现通信,例如主动度量代理可通过SMC请求将将度量对象的行为特征发送到TEE环境下的主动度量模块。TEE环境下的用户模式下还具有管理模块、审计报告模块、自定义规则库,管理模块、自定义规则库用于通过主动度量模块实现对主动度量策略库的管理,审计报告模块用于记录系统的审计报告。
主动度量模块用于完成核心的度量工作。一方面,按照度量策略对度量目标发起主动度量;另一方面,还可以根据用户请求,实现指定应用或者软件的完整性度量。在整个度量过程中,主要是两种模态下的模块和应用实现主动度量,既内核态和用户态。针对内核态模块,主要是内核映像文件和内核模块,包括各类驱动等,内核映像文件在系统开机的时候装载入内容后,会稳定低驻留在内存中;针对应用态下的应用和软件,根据软件静态和动态运行特征,制定对应的度量策略,并存入自定义规则库,用于后期软件运行时的主动度量。
主动度量代理用于接收应用层度量请求及软件行为事件收集。利用监控器技术及时捕获软件运行时的异常行为和状态,通过SMC信号传入安全世界的主动度量主模块,根据策略库执行主动度量判断;能对用户态软件、特定目标和内核态映像及模块进行可信度量,确保度量对象的完整性。
主动度量策略库用于储存基本度量策略,例如软件完整性判断、共性资源恶意调用等策略。
管理模块用于对度量机制的参数实现可视化配置,包括度量规则管理,度量对象管理以及度量参数的管理等。
审计报告模块用于提供度量日志的保存、浏览以及度量数据的提取功能,审计报告采用trustzone可信存储技术存储,防止被恶意篡改。TrustZone技术是ARM处理器上可信执行环境一种具体实现,目前已被移动嵌入式设备广泛支持。
自定义规则库用于保存用户根据不同的度量目标设置不同的度量策略。自定义规则库中的策略优先级低于主动度量策略库。
为了更加准确的完成软件的行为度量,本实施例采用多个维度收集软件的行为特征。如图3所示,步骤1)中的行为特征包括功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征,对软件行为进行多维度划分,相比已有方法,度量粒度更细,能够有效提高软件行为度量的准确性。其中:
功能行为的特征是指涉及文件、进程、内核、网络、信号的操作特征。软件运行过程中会涉及到核种功能,例如根据现有linux系统主要的系统调用分类,可以分为文件、进程、内核、网络及信号。例如,若某软件包括open、read、write、close系统调用的行为就表示软件对文件进行操作,属于文件类的操作特征。
执行行为的特征是指关键指令执行顺序。 例如通过对某软件的汇编指令分析,发现存在向量加、向量乘及向量异或的指令顺序,则得到该软件的执行行为是向量加指令、向量乘指令及向量异或指令。
路径行为的特征是指输入和输出时候访问的文件所在的路径。例如某软件访问的输入文件存储在/home/ubuntu目录下,可以把该特征作为主动度量库里面的一条规则,如果发现访问数据时独去的路径在其他路径下,表明该软件存在被篡改的可能。同理,可以定义软件的输出路径作为度量规则,及时发现路径行为异常的行为。
时间行为的特征是指功能行为的执行时间。时间行为主要是指软件运行各个功能模块的时间是否在合理的范围。通常,在软件部署到生产环境之前,会对软件进行训练学习,得到软件每个模块的执行时间,然后这些时间作为规则,写入到度量库中,用于正常运行时的主动度量规则。例如,某软件的读取文件的时间应该时30s以内,则可以定义该软件的时间行为为[读文件,30s],如果发现某次读取文件的时间超过30s,则认为异常。在实际系统中,受到其他因素的影响,时间属性度量规则通常更加宽松。
资源行为的特征是指使用到的包括CPU资源、内存资源、存储资源、网络资源、外设资源在内的系统资源。在软件部署到生产环境之前,会通过训练学习得到软件可能使用到的资源,将用到的资源作为一条度量规则写入到主动度量库,用于生产环境中的软件行为度量。例如,某软件测试运行过程中CPU资源占比不超过10%,如果运行过程中超过10%,则可能是该软件中正在发生未知的恶意行为(例如传播病毒等)。
本实施例中,步骤2)中的主动度量策略库包括功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征的正常特征值或者正常特征值的取值范围,且所述正常特征值或者正常特征值的取值范围时通过对度量对象进行运行测试得到的。在生成主动度量策略的过程中,需要在与生产环境相同的系统中,针对不同的度量行为,需要经过大量的分析和测试运行,这样才能获得功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征的正常特征值或者正常特征值的取值范围,并存入主动度量策略库中。
如图4所示,首先对软件(度量对象)的源代码进行结构划分,通过系统调用分析得到详尽的系统调用接口,然后通过系统调用接口所表示的功能进行功能分析,之后通过详尽的功能分析对软件进行软件行为提取,软件行为包括功能行为、执行行为、路径行为、时间行为以及资源行为。考虑到软件在执行过程中会存在不同程序执行路径,通常需要在一段时间内保持程序正常运行并记录所有日志,通过分析所有功能行为相关的运行日志,直到所有功能行为的日志不再增加为止,即可停止软件,根据收集到的系统调用信息,得到软件所有功能行为度量策略。最终,经过大量的分析和测试运行,即可获得包括功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征的正常特征值或者正常特征值的取值范围,利用这些行为特征即可构建软件行为的主动度量策略库。
本实施例中,主动度量策略库中的主动度量策略是由度量检查点、度量检查项、核度量基准值所组成的三元组,其中:度量检查点是指度量行为发生的时机,可以是一个时间点(例如立即度量),也可以是一个时间间隔(如周期性的触发度量行为),也可以是某个系统调用处等;度量检查项是指功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征中的某一个指定检查的项目,例如包括进程或模块的代码区、只读数据区、堆栈区、系统调用的参数向量、系统调用上下文等;核度量基准值是指功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征的正常特征值或者正常特征值的取值范围。主动度量模块可依据主动度量策略在指定的度量检查点上对指定的度量检查项进行度量,并将主动度量结果和主动度量策略内含的度量基准值进行核对,需要说明的是,度量对象所采用的主动度量策略可以根据需要制定,可以为一个或多个。
本实施例中,步骤2)中的主动度量结果包括行为安全和行为不安全两种。
本实施例中,步骤2)中对度量对象的行为特征进行度量的详细步骤包括:将功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征分别与主动度量策略库中对应的正常特征值或者正常特征值的取值范围进行比对,如果功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征全部都与正常特征值或者正常特征值的取值范围相符,则判定主动度量结果为行为安全,否则判定主动度量结果为行为不安全。此外,本实施例中,判定主动度量结果为行为不安全时还包括主动度量模块将异常行为写入审计报告的步骤;
本实施例中,步骤3)之后还包括主动度量代理根据主动度量结果选择性对度量对象进行安全控制的步骤:判断返回的主动度量结果的类型,如果主动度量结果为行为安全,则允许度量对象继续执行;若果主动度量结果为行为不安全,则结束度量对象的运行。
此外,本实施例方法还包括在REE环境下的度量对象启动过程中执行的下述步骤:
S1)REE环境下的主动度量代理收到度量对象的启动请求信号;
S2)REE环境下的主动度量代理计算度量对象的完整性信息,将度量对象的信息及完整性信息发送到TEE环境下的主动度量模块;
S3)TEE环境下的主动度量模块判断度量对象的完整性信息、主动度量策略库中预先存储的完整性信息是否相同,如果相同则返回允许启动信号给REE环境下的主动度量代理,否则返回禁止启动信号给REE环境下的主动度量代理;此外,本实施例中,返回禁止启动信号给REE环境下的主动度量代理时还包括主动度量模块将异常行为写入审计报告的步骤;
S4)REE环境下的主动度量代理若收到返回的允许启动信号则允许度量对象启动,否则禁止度量对象启动。
作为一种可选的实施方式,本实施例中的完整性信息具体是指软件的MD5值,利用软件的MD5值作为软件完整性判断依据。在软件部署到生产环境中之前,部署者首先计算软件的MD5值,最后将MD5值作为度量策略存储主动度量策略库中。
上述步骤S1)~S4)为静态的度量方式,其结合步骤1)~3)的动态度量方式,实现了对度量对象的全方位度量。本实施例中,所述资源请求规则与主动度量策略库匹配的判断方式如下:根据度量对象的信息、主动度量策略库中所有的预先存储的完整性信息对应的度量对象进行匹配,如果匹配成功则进一步将匹配项目的完整性信息、主动度量代理发送的完整性信息进行比对,只有两者相同才判定度量对象的完整性信息、主动度量策略库中预先存储的完整性信息相同。
综上所述,本实施例基于TEE的软件行为主动度量方法在TEE的基础上通过部署可信度量模块,实现常规系统环境的软件行为的可信度量。具体实现上,首先,基于TEE编程规范,利用处理器硬件按隔离特性实现主动度量服务的安全保护,该服务由软件行为策略库、动态度量核心组件及TEE通信接口等部分组成;其次,在软件在生产环境运行之前,通过训练形成软件行为策略,存入策略库,用于后期主动度量;最后,在常规系统环境的内核中部署主动度量代理,通过软件调用系统函数接口以及内存行为状态对软件行为进行主动度量,及时发现入侵或异常行为。本实施例支持动态及静态两种主动度量方法,先比传统度量方法,具有更强的软件行为度量能力及更好的运行效率,是保障软件可信运行有效手段之一。本实施例基于TrustZone技术实现了软件行为主动度量方法。攻击者常用的攻击手段是分析软件执行逻辑,利用技术手段将关键部分代码进行篡改,使软件的完整性遭到破坏。因为,本实施例首先对软件的行为进行学习训练,从软件功能属性、执行属性、路径属性、行为属性及系统属性等多个方面构建软件行为属性库,然后利用TrustZone隔离特性保护主动度量模块及软件行为库不被侵犯,一种更强的安全度量机制。本度量方法并不只用于某一个单一软件,而是作为操作系安全组件之一,用于多个软件的完整性保护,增强系统整体安全性。
此外,作为一种可选的实施方式,步骤2)TEE环境下的主动度量模块还可以选择将度量对象的行为特征输入预先训练好的机器学习分类模型获得对应的主动度量结果,该机器学习分类模型被预先训练建立了度量对象的行为特征、主动度量结果之间的映射关系。
此外,本实施例还提供一种基于TEE的软件行为主动度量系统,包括计算机设备,该计算机设备被编程或配置以执行前述基于TEE的软件行为主动度量方法的步骤,或者该计算机设备的存储器中存储有被编程或配置以执行前述基于TEE的软件行为主动度量方法的计算机程序。此外,本实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有被编程或配置以执行前述基于TEE的软件行为主动度量方法的计算机程序。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (9)

1.一种基于TEE的软件行为主动度量方法,其特征在于,该方法包括在REE环境下的度量对象运行过程中执行的下述步骤:
1)REE环境下的主动度量代理监控获取度量对象的行为特征,将度量对象的行为特征发送到TEE环境下的主动度量模块;所述行为特征包括功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征,所述功能行为的特征是指涉及文件、进程、内核、网络、信号的操作特征,所述执行行为的特征是指关键指令执行顺序,所述路径行为的特征是指输入和输出时候访问的文件所在的路径,所述时间行为的特征是指功能行为的执行时间,所述资源行为的特征是指使用到的包括CPU资源、内存资源、存储资源、网络资源、外设资源在内的系统资源;
2)TEE环境下的主动度量模块根据主动度量策略库对度量对象的行为特征进行度量获得对应的主动度量结果,将主动度量结果返回给REE环境下的主动度量代理;
3)REE环境下的主动度量代理收到返回的主动度量结果。
2.根据权利要求1所述的基于TEE的软件行为主动度量方法,其特征在于,步骤2)中的主动度量策略库包括功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征的正常特征值或者正常特征值的取值范围,且所述正常特征值或者正常特征值的取值范围时通过对度量对象进行运行测试得到的。
3.根据权利要求2所述的基于TEE的软件行为主动度量方法,其特征在于,步骤2)中的主动度量结果包括行为安全和行为不安全两种。
4.根据权利要求3所述的基于TEE的软件行为主动度量方法,其特征在于,步骤2)中对度量对象的行为特征进行度量的详细步骤包括:将功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征分别与主动度量策略库中对应的正常特征值或者正常特征值的取值范围进行比对,如果功能行为、执行行为、路径行为、时间行为、资源行为、系统行为的特征全部都与正常特征值或者正常特征值的取值范围相符,则判定主动度量结果为行为安全,否则判定主动度量结果为行为不安全。
5.根据权利要求2所述的基于TEE的软件行为主动度量方法,其特征在于,步骤3)之后还包括主动度量代理根据主动度量结果选择性对度量对象进行安全控制的步骤:判断返回的主动度量结果的类型,如果主动度量结果为行为安全,则允许度量对象继续执行;若果主动度量结果为行为不安全,则结束度量对象的运行。
6.根据权利要求1所述的基于TEE的软件行为主动度量方法,其特征在于,该方法还包括在REE环境下的度量对象启动过程中执行的下述步骤:
S1)REE环境下的主动度量代理收到度量对象的启动请求信号;
S2)REE环境下的主动度量代理计算度量对象的完整性信息,将度量对象的信息及完整性信息发送到TEE环境下的主动度量模块;
S3)TEE环境下的主动度量模块判断度量对象的完整性信息、主动度量策略库中预先存储的完整性信息是否相同,如果相同则返回允许启动信号给REE环境下的主动度量代理,否则返回禁止启动信号给REE环境下的主动度量代理;
S4)REE环境下的主动度量代理若收到返回的允许启动信号则允许度量对象启动,否则禁止度量对象启动。
7.根据权利要求6所述的基于TEE的软件行为主动度量方法,其特征在于,所述主动度量策略库匹配的判断方式如下:根据度量对象的信息、主动度量策略库中所有的预先存储的完整性信息对应的度量对象进行匹配,如果匹配成功则进一步将匹配项目的完整性信息、主动度量代理发送的完整性信息进行比对,只有两者相同才判定度量对象的完整性信息、主动度量策略库中预先存储的完整性信息相同。
8.一种基于TEE的软件行为主动度量系统,包括计算机设备,其特征在于,该计算机设备被编程或配置以执行权利要求1~7中任意一项所述基于TEE的软件行为主动度量方法的步骤,或者该计算机设备的存储器中存储有被编程或配置以执行权利要求1~7中任意一项所述基于TEE的软件行为主动度量方法的计算机程序。
9.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有被编程或配置以执行权利要求1~7中任意一项所述基于TEE的软件行为主动度量方法的计算机程序。
CN202010704861.3A 2020-07-21 2020-07-21 基于tee的软件行为主动度量方法及系统 Active CN111859394B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010704861.3A CN111859394B (zh) 2020-07-21 2020-07-21 基于tee的软件行为主动度量方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010704861.3A CN111859394B (zh) 2020-07-21 2020-07-21 基于tee的软件行为主动度量方法及系统

Publications (2)

Publication Number Publication Date
CN111859394A CN111859394A (zh) 2020-10-30
CN111859394B true CN111859394B (zh) 2023-09-29

Family

ID=73000817

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010704861.3A Active CN111859394B (zh) 2020-07-21 2020-07-21 基于tee的软件行为主动度量方法及系统

Country Status (1)

Country Link
CN (1) CN111859394B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112329005A (zh) * 2020-11-06 2021-02-05 中国电子信息产业集团有限公司 操作系统启动的引导度量方法、装置、电子设备和介质
CN112434306B (zh) * 2020-12-11 2024-04-16 中国科学院信息工程研究所 可信度量方法,装置,系统,电子设备及存储介质
CN114201761B (zh) * 2022-02-17 2022-06-28 支付宝(杭州)信息技术有限公司 在可信计算系统中增强度量代理安全性
CN114462051A (zh) * 2022-04-12 2022-05-10 中电云数智科技有限公司 一种基于可信计算环境的可信计算系统及方法
CN115037482A (zh) * 2022-06-10 2022-09-09 维沃移动通信有限公司 欺诈行为检测方法、装置、电子设备及可读存储介质
CN117892359A (zh) * 2022-10-09 2024-04-16 华为技术有限公司 完整性度量方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110348252A (zh) * 2018-04-02 2019-10-18 华为技术有限公司 基于信任区的操作系统和方法
CN110673526A (zh) * 2019-09-29 2020-01-10 山东工商学院 物联网网络安全装置、系统及控制方法
WO2020088323A1 (zh) * 2018-11-01 2020-05-07 华为技术有限公司 一种能力开放方法及装置
CN111400723A (zh) * 2020-04-01 2020-07-10 中国人民解放军国防科技大学 基于tee扩展的操作系统内核强制访问控制方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110348252A (zh) * 2018-04-02 2019-10-18 华为技术有限公司 基于信任区的操作系统和方法
WO2020088323A1 (zh) * 2018-11-01 2020-05-07 华为技术有限公司 一种能力开放方法及装置
CN110673526A (zh) * 2019-09-29 2020-01-10 山东工商学院 物联网网络安全装置、系统及控制方法
CN111400723A (zh) * 2020-04-01 2020-07-10 中国人民解放军国防科技大学 基于tee扩展的操作系统内核强制访问控制方法及系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
智慧公安移动终端解决方案;邓奕松;《信息技术与标准化》;第53-57页 *

Also Published As

Publication number Publication date
CN111859394A (zh) 2020-10-30

Similar Documents

Publication Publication Date Title
CN111859394B (zh) 基于tee的软件行为主动度量方法及系统
KR102307534B1 (ko) 다수 소프트웨어 개체들에 걸쳐서 악성 행동을 트래킹하기 위한 시스템들 및 방법들
Kil et al. Remote attestation to dynamic system properties: Towards providing complete system integrity evidence
CA2990343C (en) Computer security systems and methods using asynchronous introspection exceptions
RU2522019C1 (ru) Система и способ обнаружения угроз в коде, исполняемом виртуальной машиной
KR100791290B1 (ko) 디바이스 간에 악성 어플리케이션의 행위 정보를 사용하는장치 및 방법
US9223964B2 (en) Detecting JAVA sandbox escaping attacks based on JAVA bytecode instrumentation and JAVA method hooking
US10839077B2 (en) Detecting malicious software
US10733296B2 (en) Software security
McIntosh et al. Applying staged event-driven access control to combat ransomware
Dai et al. Behavior-based malware detection on mobile phone
Xiao et al. Kernel data attack is a realistic security threat
Yamauchi et al. Additional kernel observer: privilege escalation attack prevention mechanism focusing on system call privilege changes
Li et al. A VMM-based system call interposition framework for program monitoring
Wang et al. Using ontologies to perform threat analysis and develop defensive strategies for mobile security
KR100745640B1 (ko) 커널 메모리를 보호하는 방법 및 그 장치
WO2020040983A1 (en) Active testing of access control policy
Isohara et al. Lsm-based secure system monitoring using kernel protection schemes
Grace et al. Behaviour analysis of inter-app communication using a lightweight monitoring app for malware detection
CN117370701A (zh) 浏览器风险检测方法、装置、计算机设备和存储介质
Reeves Autoscopy Jr.: Intrusion detection for embedded control systems
Shi et al. Vanguard: A cache-level sensitive file integrity monitoring system in virtual machine environment
Dong et al. Kims: kernel integrity measuring system based on trustzone
Chevalier et al. Survivor: a fine-grained intrusion response and recovery approach for commodity operating systems
CN115292708A (zh) 基于字节码的执行权限分析方法及装置

Legal Events

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