CN112446033A - 软件可信启动方法、装置、电子设备和存储介质 - Google Patents

软件可信启动方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN112446033A
CN112446033A CN202011450304.XA CN202011450304A CN112446033A CN 112446033 A CN112446033 A CN 112446033A CN 202011450304 A CN202011450304 A CN 202011450304A CN 112446033 A CN112446033 A CN 112446033A
Authority
CN
China
Prior art keywords
trusted
program
started
verification
white list
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.)
Pending
Application number
CN202011450304.XA
Other languages
English (en)
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.)
Institute of Information Engineering of CAS
Original Assignee
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 Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN202011450304.XA priority Critical patent/CN112446033A/zh
Publication of CN112446033A publication Critical patent/CN112446033A/zh
Pending legal-status Critical Current

Links

Images

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
    • G06F21/575Secure boot

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本申请实施例提供了一种软件可信启动方法、装置、电子设备和存储介质,该方法应用于电子设备,电子设备包括可信执行环境,可信执行环境包括可信执行内核,电子设备首先通过可信执行内核获取请求启动的待启动程序,然后再通过可信执行内核对待启动程序进行可信启动校验,其中,可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;当可信校验通过后,通过可信执行内核启动待启动程序。上述方法在待启动程序请求启动时,对待启动程序进行多种不同方式的可信启动校验,多种可信启动校验方式可以组成一条可信启动链,确保恶意的应用程序无法启动,从而避免用户的个人隐私或商业秘密被窃取,以保障电子设备的信息安全。

Description

软件可信启动方法、装置、电子设备和存储介质
技术领域
本申请涉及应用安全技术领域,具体地,涉及一种软件可信启动方法、装置、电子设备和存储介质。
背景技术
随着移动互联网技术的快速发展,移动智能终端设备的应用程序已从传统的通信功能延伸到移动办公、移动支付等高安全、高敏感的应用领域。移动终端需要处理越来越多的商业秘密和个人隐私等敏感信息,如公司的商业文件、银行账户服务、个人购物订单等。
目前,移动终端上可安装的应用程序的数量和种类越来越多,若用户下载并安装了一些恶意的应用程序(即不可信应用程序),在启动恶意的应用程序后,可能会导致移动终端面临着严峻的安全挑战和安全威胁,例如恶意订购、自动联网、木马软件和硬件后门等引起用户经济损失、敏感数据泄露的风险。
因此,如何保障移动终端的信息安全,防止恶意的应用程序窃取用户隐私是目前需要解决的技术问题。
发明内容
本申请实施例中提供了一种软件可信启动方法、装置、电子设备和存储介质,用于保障移动终端的信息安全,防止恶意的应用程序窃取用户隐私。
根据本申请实施例的第一个方面,提供了一种软件可信启动方法,应用于电子设备,所述电子设备包括可信执行环境,所述可信执行环境包括可信执行内核,所述方法包括:
通过所述可信执行内核获取请求启动的待启动程序;
对所述待启动程序进行可信启动校验,其中,所述可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;
当可信启动校验通过后,通过所述可信执行内核启动所述待启动程序。
在一种可选的实施方式中,对所述待启动程序进行可信白名单校验,包括:
通过所述可信执行内核对所述待启动程序进行可信白名单校验。
在一种可选的实施方式中,通过所述可信执行内核对所述待启动程序进行可信白名单过滤,包括:
获取预设的可信白名单,其中,所述可信白名单存储在所述可信执行环境的可信存储区域;
判断所述待启动程序是否存在于所述可信白名单中;
若存在,则判定可信白名单校验通过;
若不存在,则判定可信白名单校验未通过。
在一种可选的实施方式中,判断所述待启动程序是否存在于所述可信白名单中,包括:
获取待启动程序及所述待启动程序配置文件的特征值;其中,所述特征值是采用加密算法对所述待启动程序及所述待启动程序配置文件计算得到的;
当所述待启动程序及所述待启动程序配置文件的特征值与白名单中存储的特征值一致时,判定所述待启动程序存在于所述可信白名单中,否则,判定所述待启动程序不存在于所述可信白名单中。
在一种可选的实施方式中,可信执行环境还包括可信服务程序,若可信白名单过滤未通过,所述方法还包括:
将所述待启动程序的路径发送至所述可信服务程序;
通过所述可信服务程序对所述待启动程序的路径进行签名验证。
在一种可选的实施方式中,所述对所述待启动程序进行完整性校验,包括:
对存在于所述可信白名单中的待启动程序请求的操作进行静态度量,获得度量校验码,其中,所述操作包括请求执行或修改;
判断所述度量校验码与预设的完整性校验码是否相同,其中,所述预设的完整性校验码存储于所述可信执行环境的可信存储区域中;
若相同,则判定完整性校验通过;
若不相同,则判定完整性校验不通过。
在一种可选的实施方式中,所述对所述待启动程序进行权限校验,包括:
获取存在于所述可信白名单中的待启动程序请求的启动权限;
判断所述待启动程序预分配的权限是否包括所述待启动程序请求的启动权限;
若不包括,则判定权限校验不通过;
若包括,则判定权限校验通过。
根据本申请实施例的第二个方面,提供了一种软件可信启动装置,应用于电子设备,所述电子设备包括可信执行环境,所述可信执行环境包括可信执行内核,所述装置包括:
获取模块,用于通过所述可信执行内核获取请求启动的待启动程序;
校验模块,用于对所述待启动程序进行可信校验,其中,所述可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;
执行模块,用于当可信校验通过后,通过所述可信执行内核启动所述待启动程序。
在一种可选的实施方式中,所述校验模块具体用于:
通过所述可信执行内核对所述待启动程序进行可信白名单过滤。
在一种可选的实施方式中,所述校验模块具体还用于:
对存在于所述可信白名单中的所述待启动程序请求的操作进行静态度量,获得度量校验码,其中,所述操作包括请求执行或修改;
判断所述度量校验码与预设的完整性校验码是否相同,其中,所述预设的完整性校验码存储于所述可信执行环境的可信存储区域中;
若相同,则判定完整性校验通过;
若不相同,则判定完整性校验不通过。
在一种可选的实施方式中,所述校验模块具体还用于:
获取存在于所述可信白名单中的待启动程序请求的启动权限;
判断所述待启动程序预分配的权限是否包括所述待启动程序请求的启动权限;
若不包括,则判定权限校验不通过;
若包括,则判定权限校验通过。
根据本申请实施例的第三个方面,提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储器之间通过所述总线通信,所述机器可读指令被所述处理器执行时执行上述的软件可信启动方法。
根据本申请实施例的第四个方面,提供了一种存储介质,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的软件可信启动方法。
本申请实施例提供了一种软件可信启动方法、装置、电子设备和存储介质,该方法应用于电子设备,电子设备包括可信执行环境,可信执行环境包括可信执行内核,电子设备首先通过可信执行内核获取请求启动的待启动程序,然后再通过可信执行内核对待启动程序进行可信启动校验,其中,可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;当可信校验通过后,通过可信执行内核启动待启动程序。上述方法在待启动程序请求启动时,对待启动程序进行多种不同方式的可信启动校验,多种可信启动校验方式可以组成一条可信启动链,确保恶意的应用程序无法启动,从而避免用户的个人隐私或商业秘密被窃取,以保障电子设备的信息安全。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的电子设备的的示意图;
图2为本申请实施例提供的软件可信启动方法的流程图之一;
图3为本申请实施例提供的通过静态度量技术对待启动程序的完整性进行校验的步骤的流程图;
图4为本申请实施例提供的对待启动程序进行权限校验的步骤的流程图;
图5为本申请实施例提供的软件可信启动方法的流程图之二;
图6为本申请实施例提供的软件可信启动装置的功能模块图。
图标:10-电子设备;11-处理器;12-存储器;13-总线;110-软件可信启动装置;1101-获取模块;1102-判断模块;1103-校验模块;1104-执行模块。
具体实施方式
在实现本申请的过程中,发明人发现,随着移动互联网技术的快速发展,移动智能终端设备的应用程序已从传统的通信功能延伸到移动办公、移动支付等高安全、高敏感的应用领域。移动终端需要处理越来越多的商业秘密和个人隐私等敏感信息,如公司的商业文件、银行账户服务、个人购物订单等。
目前,移动终端上可安装的应用程序的数量和种类越来越多,若用户下载并安装了一些恶意的应用程序,在启动恶意的应用程序后,可能会导致移动终端面临着严峻的安全挑战和安全威胁,例如恶意订购、自动联网、木马软件和硬件后门等引起用户经济损失、敏感数据泄露的风险。
另外,移动终端一般一直处于开机和联网状态,如果安装了不可信的应用程序,在相当长的一段时间内,用户根本意识不到问题已经出现,仍然继续启动并使用不可信的应用程序,可能会造成用户的重要数据丢失,甚至可能导致用户的财产安全受到威胁。
若能在启动应用程序时,对应用程序的可信度进行校验,判断请求启动的应用程序是否为恶意的程序,就能从源头上避免窃密行为的发生,对于保护个人隐私信息及财产安全具有重要的意义。
针对上述问题,本申请实施例提供了一种软件可信启动方法、装置、电子设备和存储介质,该方法应用于电子设备,电子设备包括可信执行环境,可信执行环境包括可信执行内核,电子设备首先通过可信执行内核获取请求启动的待启动程序,然后再通过可信执行内核对待启动程序进行可信启动校验,其中,可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;当可信校验通过后,通过可信执行内核启动待启动程序。上述方法在待启动程序请求启动时,对待启动程序进行多种不同方式的可信启动校验,多种可信启动校验方式可以组成一条可信启动链,确保恶意的应用程序无法启动,从而避免用户的个人隐私或商业秘密被窃取,以保障电子设备的信息安全。
本申请实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言Java和直译式脚本语言JavaScript等。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参照图1,图1为本申请实施例提供的电子设备的10的示意图。在图1中,电子设备10包括处理器11、存储器12和总线13,存储器12存储有处理器11可执行的机器可读指令,当电子设备10运行时,处理器11与存储器12之间通过总线13通信,所述机器可读指令被处理器11执行时实现本申请实施例提供的软件可信启动方法,以保障移动终端的信息安全,防止恶意的应用程序窃取用户隐私。
首先,需要介绍的是,电子设备10的REE(Rich Execution Environment,通用的操作系统)中运行环境比较复杂,装载有大量的应用,包括娱乐、新闻、游戏、视频等,这给恶意的应用程序带来了可趁之机,使得恶意程序能够通过REE系统的安全漏洞窃取用户资料或者攻击隧道的安全屏障,带来安全隐患。
而TEE(Trusted execution environment,可信执行环境)是一种新的应用于电子设备10的可信任的执行环境,主要应用于安全智能设备、安全支付等领域,在此可信执行环境下可以运行涉及敏感资料的应用或程序。可信执行环境TEE是一个独立的运行环境,与REE完全隔离,可信执行环境的优势在于可以将不安全部件的运行与安全部件的运行分离在不同的物理运行环境中进行处理,保护用户的隐私。
下面结合附图对本申请实施例提供的软件可信启动方法进行说明。
请参照图2,图2为本申请实施例提供的软件可信启动方法的流程图之一。在本实施例中,软件可信启动方法应用于电子设备10,电子设备10包括可信执行环境TEE(Trustedexecution environment),可信执行环境包括可信执行内核。该方法包括以下步骤:
步骤S101,通过可信执行内核获取请求启动的待启动程序。
步骤S102,通过可信执行内核对待启动程序进行可信校验。其中,可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验。
步骤S103,当可信校验通过后,通过可信执行内核启动待启动程序。
在上述步骤中,当用户需要启动电子设备10上的某一个待启动程序时,电子设备10首先通过可信执行内核获取请求启动的待启动程序(例如打开应用程序),并对待启动的待启动程序进行可信启动校验,只有在可信校验通过之后,才能通过可信执行内核启动该待启动程序。
上述方法在待启动程序请求启动时,需要对待启动程序进行多种不同方式的可信启动校验,多种可信启动校验方式可以单独使用,也可以组成一条可信启动链,确保恶意的应用程序无法启动,从而避免用户的个人隐私或商业秘密被窃取,以保障电子设备10的信息安全。
进一步地,在本实施例中,通过可信执行内核对待启动程序进行可信校验,包括:
对所述待启动程序进行可信白名单校验;对待启动程序进行权限校验和/或通过静态度量技术对待启动程序的完整性进行校验。
进一步地,在本实施例中,对待启动程序进行可信白名单校验的步骤包括:通过可信执行内核对待启动程序进行可信白名单校验。
具体地,请参照图3,图3为本申请实施例提供的可信白名单校验的步骤的流程图。在本实施例中,可信白名单校验的具体过程包括:
步骤S201,获取预设的可信白名单。其中,可信白名单存储在可信执行环境的可信存储区域;
步骤S202,判断待启动程序是否存在于可信白名单中。
具体地,步骤S202具体包括:获取待启动程序及待启动程序配置文件的特征值;其中,特征值是采用加密算法对待启动程序及所述待启动程序配置文件计算得到的;当待启动程序及待启动程序配置文件的特征值与可信白名单中存储的特征值一致时,判定待启动程序存在于可信白名单中,否则,判定待启动程序不存在于可信白名单中。
步骤S203,若存在,则判定可信白名单校验通过。
步骤S204,若不存在,则判定可信白名单校验未通过。
在上述步骤中,可信白名单中包括有通过可信执行环境的TCM可信模块提供的加密算法计算出的待启动程序的特征值(即摘要信息),可信白名单存储在可信执行环境的可信存储区域中,在待启动程序启动时通过比对计算出的待启动程序的摘要信息与白名单中存储的摘要信息来判定待启动程序是否位于可信白名单中,从而决定是否运行待启动程序。具体过程为:在电子设备10的操作系统(例如android系统)初始化时,通过可信服务程序扫描整个操作系统的可执行文件、脚本文件、应用程序文件或配置文件等,生成操作系统的目标摘要信息,该摘要即为待启动程序可信的依据之一。可信服务程序再将目标摘要信息存储在数据库中,以备系统重启后可以再次使用。
在可信白名单校验时,首先通过加密算法计算出待启动程序的特征值后,将待启动程序的特征值与可信白名单中预存的特征值(即初始化时生成的摘要信息)进行判断比对。若比对结果一致,则认为待启动程序存在于可信白名单中,反之则不存在。
当待启动程序存在于可信白名单中时,则判定可信白名单校验通过,反之则校验不通过。
进一步地,若待启动程序的白名单校验未通过时,还可以将待启动程序的启动路径发送给可信执行环境TEE的可信服务程序,通过可信服务程序对待启动程序的路径进行签名验证。若签名验证通过,则允许启动待启动程序。
随后可以对待启动程序进行权限校验或者通过静态度量技术对待启动程序的完整性进行校验,权限校验或者完整性校验通过时,则可以启动待启动程序。
当然,在本实施例的另一种实施方式中,还可以对待启动程序进行权限校验的同时通过静态度量技术对待启动程序的完整性进行校验,只有当权限校验和完整性校验同时通过,才可以启动待启动程序,从而进一步提升可信校验的准确度。
可选地,请参照图4,图4为本申请实施例提供的通过静态度量技术对所述待启动程序的完整性进行校验的步骤的流程图。在本实施例中,通过静态度量技术对所述待启动程序的完整性进行校验包括以下子步骤:
子步骤S301,对存在于可信白名单中的待启动程序请求的操作进行静态度量,获得度量校验码。
子步骤S302,判断所述度量校验码与预设的完整性校验码是否相同。
其中,预设的完整性校验码存储于可信执行环境的可信存储区域中。
子步骤S303,若相同,则判定完整性校验通过。
子步骤S304,若不相同,则判定完整性校验不通过。
在上述子步骤中,待启动程序请求的操作可以是请求执行或修改。例如,待启动程序请求的操作可以是请求启动电子设备10上的某一个APP或者请求对电子设备10上的某一个重要信息进行修改。
在本实施例中,静态度量技术构建一个从操作系统引导至上层应用的信任链,实现系统运行过程中可执行程序的完整性检验,从而可以防范恶意代码的攻击,提升电子设备10的安全性。主要包括对电子设备10的系统中所有装载的可执行文件代码进行控制,以及在程序文件被修改时,对修改操作的合法性进行校验。具体过程为:首先对待启动程序请求的操作进行静态度量,获得该待启动程序的度量校验码,然后需要获取可信执行环境TEE的可信存储区域中存储的完整性校验码,并判断度量校验码和完整性校验码是否相同,如果相同,则可以判定为完整性校验通过,此时可以运行待启动程序,反之则不通过,拒绝运行待启动程序。另外,可信执行内核在拒绝运行可执行程序之后,还可以将拒绝运行的信息或指令发送至可信执行环境的审计模块进行记录。
可选地,请参照图5,图5为本申请实施例提供的对待启动程序进行权限校验的步骤的流程图。在本实施例中,对待启动程序进行权限校验的步骤包括:
子步骤S401,获取存在于可信白名单中的待启动程序请求的启动权限。
子步骤S402,判断待启动程序预分配的权限是否包括待启动程序请求的启动权限。
子步骤S403,若不包括,则判定权限校验不通过。
子步骤S404,若包括,则判定权限校验通过。
在上述子步骤中,应用程序通常事先被分配了一些访问权限,例如文件访问权限、进程访问权限、硬件访问权限等,权限校验即是对待启动程序在启动时请求的启动权限进行校验,根据校验结果判断待启动程序是否可以运行。具体过程为:
首先获取待启动程序请求的启动权限,然后判断待启动程序预先分配的访问权限中是否包括请求的启动权限,若包括,则判定权限校验通过,可以运行待启动程序,反之则权限校验不通过,拒绝运行待启动程序,从而可以杜绝恶意获取权限的行为发生。
例如,若待启动程序请求的启动权限为文件访问权限和进程访问权要,而待启动程序预分配的访问权限包括文件访问权限和硬件访问权限,此时,待启动程序请求的启动权限中的硬件访问权限并不在待启动程序预分配的访问权限中,因此,判定权限校验不通过。
若待启动程序请求的启动权限为进程访问权限,而待启动程序预分配的访问权限包括文件访问权限、进程访问权限、硬件访问权限,此时,待启动程序预分配的启动权限包括了待启动程序请求的启动权限,因此,判定权限校验通过。
综上所述,本申请实施例提供了一种软件可信启动方法,该方法应用于电子设备,电子设备包括可信执行环境,可信执行环境包括可信执行内核,电子设备首先通过可信执行内核获取请求启动的待启动程序,然后再通过可信执行内核对待启动程序进行可信启动校验,其中,可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;当可信校验通过后,通过可信执行内核启动待启动程序。上述方法在待启动程序请求启动时,对待启动程序进行多种不同方式的可信启动校验,多种可信启动校验方式可以组成一条可信启动链,确保恶意的应用程序无法启动,从而避免用户的个人隐私或商业秘密被窃取,以保障电子设备的信息安全,满足了用户对移动商务、政务应用中的信息的高安全性的需求。另外,通过TCM加密模块提供的加密算法,还可以降低可信执行环境在可信启动软件或待启动程序时的性能开销,保证用户的使用体验。
请参照图6,图6为本申请实施例提供的软件可信启动装置110的功能模块图,在本实施例中,软件可信启动装置110包括:
获取模块1101,用于通过所述可信执行内核获取请求启动的待启动程序;
校验模块1102,用于通过所述可信执行内核对所述待启动程序进行可信校验;其中,可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;
执行模块1103,用于当可信校验通过后,通过所述可信执行内核启动所述待启动程序。
可选地,在本实施例中,校验模块1102具体用于:
通过所述可信执行内核对所述待启动程序进行可信白名单过滤。
可选地,在本实施例中,所述校验模块1102具体还用于:
对存在于所述可信白名单中的所述待启动程序请求的操作进行静态度量,获得度量校验码,其中,所述操作包括请求执行或修改;
判断所述度量校验码与预设的完整性校验码是否相同,其中,所述预设的完整性校验码存储于所述可信执行环境的可信存储区域中;
若相同,则判定完整性校验通过;
若不相同,则判定完整性校验不通过。
可选地,在本实施例中,所述校验模块1102具体还用于:
获取存在于所述可信白名单中的待启动程序请求的启动权限;
判断所述待启动程序预分配的权限是否包括所述待启动程序请求的启动权限;
若不包括,则判定权限校验不通过;
若包括,则判定权限校验通过。
本申请实施例还提供了一种存储介质,存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述的软件可信启动方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (13)

1.一种软件可信启动方法,其特征在于,应用于电子设备,所述电子设备包括可信执行环境,所述可信执行环境包括可信执行内核,所述方法包括:
通过所述可信执行内核获取请求启动的待启动程序;
对所述待启动程序进行可信启动校验,其中,所述可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;
当可信启动校验通过后,通过所述可信执行内核启动所述待启动程序。
2.根据权利要求1所述的方法,其特征在于,对所述待启动程序进行可信白名单校验,包括:
通过所述可信执行内核对所述待启动程序进行可信白名单校验。
3.根据权利要求2所述的方法,其特征在于,通过所述可信执行内核对所述待启动程序进行可信白名单过滤,包括:
获取预设的可信白名单,其中,所述可信白名单存储在所述可信执行环境的可信存储区域;
判断所述待启动程序是否存在于所述可信白名单中;
若存在,则判定可信白名单校验通过;
若不存在,则判定可信白名单校验未通过。
4.根据权利要求3所述的方法,其特征在于,判断所述待启动程序是否存在于所述可信白名单中,包括:
获取待启动程序及所述待启动程序配置文件的特征值;其中,所述特征值是采用加密算法对所述待启动程序及所述待启动程序配置文件计算得到的;
当所述待启动程序及所述待启动程序配置文件的特征值与所述可信白名单中存储的特征值一致时,判定所述待启动程序存在于所述可信白名单中,否则,判定所述待启动程序不存在于所述可信白名单中。
5.根据权利要求3所述的方法,其特征在于,可信执行环境还包括可信服务程序,若可信白名单过滤未通过,所述方法还包括:
将所述待启动程序的路径发送至所述可信服务程序;
通过所述可信服务程序对所述待启动程序的路径进行签名验证。
6.根据权利要求1所述的方法,其特征在于,所述对所述待启动程序进行完整性校验,包括:
对存在于所述可信白名单中的待启动程序请求的操作进行静态度量,获得度量校验码,其中,所述操作包括请求执行或修改;
判断所述度量校验码与预设的完整性校验码是否相同,其中,所述预设的完整性校验码存储于所述可信执行环境的可信存储区域中;
若相同,则判定完整性校验通过;
若不相同,则判定完整性校验不通过。
7.根据权利要求1所述的方法,其特征在于,所述对所述待启动程序进行权限校验,包括:
获取存在于所述可信白名单中的待启动程序请求的启动权限;
判断所述待启动程序预分配的权限是否包括所述待启动程序请求的启动权限;
若不包括,则判定权限校验不通过;
若包括,则判定权限校验通过。
8.一种软件可信启动装置,其特征在于,应用于电子设备,所述电子设备包括可信执行环境,所述可信执行环境包括可信执行内核,所述装置包括:
获取模块,用于通过所述可信执行内核获取请求启动的待启动程序;
校验模块,用于对所述待启动程序进行可信校验,其中,所述可信启动校验包括可信白名单校验,以及完整性校验和/或权限校验;
执行模块,用于当可信校验通过后,通过所述可信执行内核启动所述待启动程序。
9.根据权利要求8所述的装置,其特征在于,所述校验模块具体用于:
通过所述可信执行内核对所述待启动程序进行可信白名单过滤。
10.根据权利要求8所述的装置,其特征在于,所述校验模块具体还用于:
对存在于所述可信白名单中的所述待启动程序请求的操作进行静态度量,获得度量校验码,其中,所述操作包括请求执行或修改;
判断所述度量校验码与预设的完整性校验码是否相同,其中,所述预设的完整性校验码存储于所述可信执行环境的可信存储区域中;
若相同,则判定完整性校验通过;
若不相同,则判定完整性校验不通过。
11.根据权利要求8所述的装置,其特征在于,所述校验模块具体还用于:
获取存在于所述可信白名单中的待启动程序请求的启动权限;
判断所述待启动程序预分配的权限是否包括所述待启动程序请求的启动权限;
若不包括,则判定权限校验不通过;
若包括,则判定权限校验通过。
12.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当所述电子设备运行时,所述处理器与所述存储器之间通过所述总线通信,所述机器可读指令被所述处理器执行时执行如权利要求1-7任一项所述的方法。
13.一种存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行如权利要求1-7任一项所述的方法。
CN202011450304.XA 2020-12-11 2020-12-11 软件可信启动方法、装置、电子设备和存储介质 Pending CN112446033A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011450304.XA CN112446033A (zh) 2020-12-11 2020-12-11 软件可信启动方法、装置、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011450304.XA CN112446033A (zh) 2020-12-11 2020-12-11 软件可信启动方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN112446033A true CN112446033A (zh) 2021-03-05

Family

ID=74740119

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011450304.XA Pending CN112446033A (zh) 2020-12-11 2020-12-11 软件可信启动方法、装置、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN112446033A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115640567A (zh) * 2022-09-28 2023-01-24 北京瑞莱智慧科技有限公司 Tee完整性认证方法、装置、系统及存储介质
CN115658183A (zh) * 2022-12-26 2023-01-31 北京紫光芯能科技有限公司 用于控制mcu的方法及装置、电子设备、存储介质
CN116578968A (zh) * 2023-04-24 2023-08-11 国网冀北电力有限公司信息通信分公司 对电力控制系统中应用程序提供安全防护的方法及装置
CN117610047A (zh) * 2023-11-29 2024-02-27 长扬科技(北京)股份有限公司 一种工控终端的安全防护方法及装置
CN117610025A (zh) * 2024-01-19 2024-02-27 国网信息通信产业集团有限公司 一种基于电力智能终端的嵌入式操作系统安全引导方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102332070A (zh) * 2011-09-30 2012-01-25 中国人民解放军海军计算技术研究所 一种可信计算平台的信任链传递方法
KR20170067003A (ko) * 2015-12-07 2017-06-15 (주)케이스마텍 트러스티드 실행 환경 기반의 어플리케이션 프로그램 보호 방법 및 시스템
CN108197468A (zh) * 2018-01-25 2018-06-22 郑州云海信息技术有限公司 一种移动存储介质的内网攻击智能防护系统
CN110096881A (zh) * 2019-05-07 2019-08-06 百度在线网络技术(北京)有限公司 恶意调用防护方法、装置、设备及计算机可读介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102332070A (zh) * 2011-09-30 2012-01-25 中国人民解放军海军计算技术研究所 一种可信计算平台的信任链传递方法
KR20170067003A (ko) * 2015-12-07 2017-06-15 (주)케이스마텍 트러스티드 실행 환경 기반의 어플리케이션 프로그램 보호 방법 및 시스템
CN108197468A (zh) * 2018-01-25 2018-06-22 郑州云海信息技术有限公司 一种移动存储介质的内网攻击智能防护系统
CN110096881A (zh) * 2019-05-07 2019-08-06 百度在线网络技术(北京)有限公司 恶意调用防护方法、装置、设备及计算机可读介质

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115640567A (zh) * 2022-09-28 2023-01-24 北京瑞莱智慧科技有限公司 Tee完整性认证方法、装置、系统及存储介质
CN115640567B (zh) * 2022-09-28 2024-02-27 北京瑞莱智慧科技有限公司 Tee完整性认证方法、装置、系统及存储介质
CN115658183A (zh) * 2022-12-26 2023-01-31 北京紫光芯能科技有限公司 用于控制mcu的方法及装置、电子设备、存储介质
CN115658183B (zh) * 2022-12-26 2023-03-31 北京紫光芯能科技有限公司 用于控制mcu的方法及装置、电子设备、存储介质
CN116578968A (zh) * 2023-04-24 2023-08-11 国网冀北电力有限公司信息通信分公司 对电力控制系统中应用程序提供安全防护的方法及装置
CN117610047A (zh) * 2023-11-29 2024-02-27 长扬科技(北京)股份有限公司 一种工控终端的安全防护方法及装置
CN117610047B (zh) * 2023-11-29 2024-05-31 长扬科技(北京)股份有限公司 一种工控终端的安全防护方法及装置
CN117610025A (zh) * 2024-01-19 2024-02-27 国网信息通信产业集团有限公司 一种基于电力智能终端的嵌入式操作系统安全引导方法
CN117610025B (zh) * 2024-01-19 2024-04-05 国网信息通信产业集团有限公司 一种基于电力智能终端的嵌入式操作系统安全引导方法

Similar Documents

Publication Publication Date Title
US11514159B2 (en) Method and system for preventing and detecting security threats
US10333967B2 (en) Method and system for dynamic platform security in a device operating system
CN112446033A (zh) 软件可信启动方法、装置、电子设备和存储介质
US8024790B2 (en) Portable secured computing environment for performing online confidential transactions in untrusted computers
RU2413295C2 (ru) Система и способ для защищенной начальной загрузки операционной системы с использованием проверки состояния
CN112445537B (zh) 操作系统可信启动方法、装置、移动终端和存储介质
JP4975127B2 (ja) 取り外し可能な媒体に格納された実行可能なコードにタンパーエビデント性を提供する装置
US20230041769A1 (en) Management system for disk encryption
KR102201218B1 (ko) 모바일 단말의 보안 엔진의 접근 제어 시스템 및 방법
Nowfeek et al. A Review of Android operating system security issues
Aron et al. Overview of security on mobile devices
US20220366070A1 (en) Securing Sensitive Data Executed By Program Scripts In A Computing Device
Ferreira et al. Vulnerabilities Classification for Safe Development on Android
Song et al. Android Data-Clone Attack via Operating System Customization
Verma A security analysis of smartphones
KR20140112242A (ko) 사용자 인증 시스템 및 그 방법, 그리고 이에 적용되는 장치

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