CN111177703B - 操作系统数据完整性的确定方法及装置 - Google Patents
操作系统数据完整性的确定方法及装置 Download PDFInfo
- Publication number
- CN111177703B CN111177703B CN201911419831.1A CN201911419831A CN111177703B CN 111177703 B CN111177703 B CN 111177703B CN 201911419831 A CN201911419831 A CN 201911419831A CN 111177703 B CN111177703 B CN 111177703B
- Authority
- CN
- China
- Prior art keywords
- operating system
- data
- access
- complete
- determining
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
Abstract
本发明提供了一种操作系统数据完整性的确定方法及装置,其中的方法包括在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;根据所述访问数据确定所述操作系统的内核数据是否完整,通过确定操作系统的内核数据是否完整以确定操作系统是否安全,因此,可以解决相关技术中,操作系统运行后却无法确保安全性问题,达到保障操作系统安全性的效果。
Description
技术领域
本发明涉及通信领域,具体而言,涉及一种操作系统数据完整性的确定方法及装置。
背景技术
相关技术中操作系统完整性验证只是在启动加载内核之前对内核数据进行完整性校验,确保运行之前内核数据是没有被篡改过的,内核运行后却无法确保安全性。
发明内容
本发明实施例提供了一种操作系统数据完整性的确定方法及装置,以至少解决相关技术中内核运行后操作系统的安全性无法保障的问题。
根据本发明的一个实施例,提供了一种操作系统数据完整性的确定方法,包括:在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;根据所述访问数据确定所述操作系统的内核数据是否完整。
可选地,根据所述访问数据确定所述操作系统的内核数据是否完整,包括:根据所述访问数据确定所述操作系统的所述内核数据的可信度;根据所述可信度确定所述内核数据是否完整,其中,在所述内核数据可信的情况下,确定所述内核数据完整。
可选地,根据所述访问数据确定所述操作系统的所述内核数据的可信度,包括:
根据所述访问数据确定所述操作系统的状态;
根据预设的状态转换规则确定所述操作系统的状态是否为安全状态,其中,在所述操作系统的状态符合所述状态转换规则的情况下,确定所述操作系统的状态为安全状态,在确定所述操作系统的状态为安全状态的情况下,确定所述内核数据可信。
可选地,所述操作系统的状态包括以下至少之一:
访问信息、访问权限、访问安全级,其中,所述访问信息用于指示访问主体、访问客体、访问属性中的一种或多种。
可选地,所述操作系统的状态还包括访问客体的层次结构。
可选地,所述方法还包括:校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整。
可选地,校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整,包括:通过对比执行过的子过程所对应的映像文件与所述子过程的代码文件校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整。
可选地,校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整,还包括:在校验确定第一子过程的数据完整的情况下,运行第二子过程的代码文件,其中,所述第一子过程和所述第二子过程均属于所述启动过程,所述第一子过程早于所述第二子过程。
可选地,监测所述操作系统的访问情况,得到访问数据,包括:建立内存分页;扫描所述内存分页,截取访问请求作为所述访问数据。
根据本发明的另一个实施例,提供了一种操作系统数据完整性的确定装置,包括:
监测模块,用于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;
确定模块,用于根据所述访问数据确定所述操作系统的内核数据是否完整。
根据本发明的又一个实施例,还提供了一种计算机可读的存储介质,所述计算机可读的存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明实施例,由于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;根据所述访问数据确定所述操作系统的内核数据是否完整,通过确定操作系统的内核数据是否完整以确定操作系统是否安全,因此,可以解决相关技术中,操作系统运行后却无法确保安全性问题,达到保障操作系统安全性的效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种操作系统数据完整性的确定方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的操作系统数据完整性的确定方法的流程图;
图3是根据本发明实施例的操作系统数据完整性的确定装置的结构框图;
图4是根据本发明可选实施方式的操作系统完整性监测方法的流程示意图;
图5是根据本发明可选实施方式的操作系统启动阶段数据完整性校验的流程示意图;
图6是根据本发明可选实施方式的数字签名机制的流程示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在移动终端、计算机终端、智能家居终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种操作系统数据完整性的确定方法的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的操作系统数据完整性的确定方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述终端的操作系统数据完整性的确定方法,图2是根据本发明实施例的操作系统数据完整性的确定方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;
步骤S204,根据所述访问数据确定所述操作系统的内核数据是否完整。
通过上述步骤,由于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;根据所述访问数据确定所述操作系统的内核数据是否完整,通过确定操作系统的内核数据是否完整以确定操作系统是否安全,因此,可以解决相关技术中,操作系统运行后却无法确保安全性问题,达到保障操作系统安全性的效果。
需要说明的是,示例性地,监测操作系统的访问情况可以是监测操作系统的访问请求,例如访问内核数据的访问请求,将监测到的这些访问请求作为访问数据。
可选地,根据所述访问数据确定所述操作系统的内核数据是否完整,包括:根据所述访问数据确定所述操作系统的所述内核数据的可信度;根据所述可信度确定所述内核数据是否完整,其中,在所述内核数据可信的情况下,确定所述内核数据完整。
可选地,根据所述访问数据确定所述操作系统的所述内核数据的可信度,包括:根据所述访问数据确定所述操作系统的状态;根据预设的状态转换规则确定所述操作系统的状态是否为安全状态,其中,在所述操作系统的状态符合所述状态转换规则的情况下,确定所述操作系统的状态为安全状态,在确定所述操作系统的状态为安全状态的情况下,确定所述内核数据可信。
需要说明的是,操作系统的状态可以包括多种能够表征操作系统在被访问的情况下所产生的变化的信息,例如,可选地,所述操作系统的状态包括以下至少之一:访问信息、访问权限、访问安全级,其中,所述访问信息用于指示访问主体、访问客体、访问属性中的一种或多种。
可选地,所述操作系统的状态还包括访问客体的层次结构。需要说明的是,访问客体的层次结构可以用于进一步验证访问安全级。
可选地,所述方法还包括:校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整。例如,可以按照启动过程的子过程的执行顺序依次校验。
可选地,校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整,包括:通过对比执行过的子过程所对应的映像文件与所述子过程的代码文件校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整。
可选地,校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整,还包括:在校验确定第一子过程的数据完整的情况下,运行第二子过程的代码文件,其中,所述第一子过程和所述第二子过程均属于所述启动过程,所述第一子过程早于所述第二子过程。需要说明的是,可选地,在较早执行的启动子过程校验无误的情况下,允许后续的启动子过程继续执行。
可选地,监测所述操作系统的访问情况,得到访问数据,包括:建立内存分页;扫描所述内存分页,截取访问请求作为所述访问数据。
在本实施例中还提供了一种操作系统数据完整性的确定装置,该装置使用上述任一项中所述的方法,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本发明实施例的操作系统数据完整性的确定装置的结构框图,如图3所示,该装置包括:
监测模块31,用于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;
确定模块33,用于根据所述访问数据确定所述操作系统的内核数据是否完整。
通过上述模块,由于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;根据所述访问数据确定所述操作系统的内核数据是否完整,通过确定操作系统的内核数据是否完整以确定操作系统是否安全,因此,可以解决相关技术中,操作系统运行后却无法确保安全性问题,达到保障操作系统安全性的效果。
可选地,上述的确定模块,包括:第一确定子模块,用于根据该访问数据确定该操作系统的该内核数据的可信度;第二确定子模块,用于根据该可信度确定该内核数据是否完整,其中,在该内核数据可信的情况下,确定该内核数据完整。
可选地,第一确定子模块,包括:
第一确定单元,用于根据该访问数据确定该操作系统的状态;
第二确定单元,用于根据预设的状态转换规则确定该操作系统的状态是否为安全状态,其中,在该操作系统的状态符合该状态转换规则的情况下,确定该操作系统的状态为安全状态,在确定该操作系统的状态为安全状态的情况下,确定该内核数据可信。
可选地,该操作系统的状态包括以下至少之一:访问信息、访问权限、访问安全级,其中,该访问信息用于指示访问主体、访问客体、访问属性中的一种或多种。
可选地,该操作系统的状态还包括访问客体的层次结构。
可选地,该装置还包括:校验模块,用于校验该操作系统的启动过程中的部分或全部子过程的数据是否完整。
可选地,校验该操作系统的启动过程中的部分或全部子过程的数据是否完整,包括:通过对比执行过的子过程所对应的映像文件与该子过程的代码文件校验该操作系统的启动过程中的部分或全部子过程的数据是否完整。
可选地,校验该操作系统的启动过程中的部分或全部子过程的数据是否完整,还包括:在校验确定第一子过程的数据完整的情况下,运行第二子过程的代码文件,其中,该第一子过程和该第二子过程均属于该启动过程,该第一子过程早于该第二子过程。
可选地,上述的监测模块,包括:建立子模块,用于建立内存分页;截取子模块,用于扫描该内存分页,截取访问请求作为该访问数据。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
可选实施方式
在本实施方式中,所提供的操作系统数据完整性检测方法,主要提供两个阶段的检测方案,一种是在操作系统启动阶段数据完整性校验,操作系统的启动过程为系统上电-BootLoader启动-OS启动,可看作是链式结构,在启动链上增加安全机制构成可信链来保证安全可信启动。本实施例中可以构建一个可信根,沿着这条信任链,一级度量认证一级,一级信任一级,先度量,再验证,最后跳转,只有经过上级验证过的代码才允许其运行,使整个机载平台的系统资源安全可信。另一种是,操作系统运行阶段数据完整性校验:操作系统启动后,CPU的主核即进入运行时监控状态,可以启用Intel处理器提供的扩展页表EPT机制和VM-functions机制,并建立用于支持目标系统进行内存访问的分页结构,同时加载数据完整性监测程序,并设置截取事件的内核钩子,定时扫描目标系统相关内存页,获取操作系统接收到的只读访问、只写访问、执行访问、读写访问等处理请求,并将该些数据输入预设的完整性校验模型,对操作系统内核数据的可信度进行计算,进而根据计算得到的可信度值,确定操作系统内核的数据完整性。并在监测到内核数据完整性遭到破坏,则数据完整性监测程序将立即停止所有CPU的从核运行,并在输入输出接口输出相关告警信息。
图4是根据本发明可选实施方式的操作系统完整性监测方法的流程示意图,如图4所示,主要包括下述步骤:
步骤1,操作系统启动阶段数据完整性校验;
步骤2,启用处理器扩展页表EPT机制,并建立用于支持内存访问的分页结构;
步骤3,操作系统加载数据完整性监测程序,定时扫描目标系统相关内存页;
步骤4,数据完整性监测程序通过完整性校验模型,确定操作系统内核数据完整性。
其中的步骤1,操作系统启动阶段数据完整性校验的过程,具体可以是:
图5是根据本发明可选实施方式的操作系统启动阶段数据完整性校验的流程示意图,如图5所示,系统的启动过程为系统上电—BootLoader启动-OS启动,可看作是链式结构,在启动链上增加安全机制构成可信链来保证安全可信启动。核心思想是构建一个可信根,沿着这条信任链,一级度量认证一级,一级信任一级,先度量,再验证,最后跳转,只有经过上级验证过的代码才允许其运行,使整个操作系统资源安全可信。
其中,示例性地,图6是根据本发明可选实施方式的数字签名机制的流程示意图,完整性验证功能的技术支撑为数字签名机制图6所示,操作系统启动阶段数据完整性校验主要包括下述步骤:
子步骤101:生成公钥密码算法的私钥/公钥对;
子步骤102:选择哈希算法,计算代码文件的哈希值;
子步骤103:用私钥对生成的哈希值进行加密操作,形成了数字签名;
子步骤104:验证时只有匹配的公钥才能正常解密得到哈希值,保证了代码文件来源合法;
子步骤105:计算映像文件的哈希值与通过执行子步骤104得到的哈希值进行比对,判断将要执行的文件是否完整。
上述实施例中的步骤2具体可以是:当通过执行步骤1操作系统启动阶段校验通过后,操作系统即可正常启动,在操作系统启动后,CPU的主核即进入运行时监控状态,启用Intel处理器提供的扩展页表EPT机制和VM-functions机制,并建立用于支持系统进行内存访问的分页结构;
启用扩展页表EPT机制和VM functions机制,启用VM functions的目的是为了可以在操作系统中直接执行EPT切换操作。按照操作系统物理地址的大小设置全部的GEPT表项,页面大小设为4KB,初始化全部GEPT表项的READ、WRITE、EXECUTION,保证操作系统的客户物理地址与机器物理地址之间的恒等映射,并将GEPT页表基地址guest_eptp存放到虚拟机控制块VMCS的EPTP字段。
上述实施例中的步骤3具体可以是:操作系统加载数据完整性监测程序,并设置截取事件的内核钩子,定时扫描目标系统相关内存页;操作系统将数据完整性监测程序自身所在物理内存区域从GEPT页表项中删去,以禁止外部组件访问据完整性监测程序自身内容,以完成数据完整性监测程序的初始化加载。
数据完整性监测程序初始化完成之后,操作系统可以通过超级调用HYPERCALL_SET,在GEPT和SEPT中设置内核钩子,跳转代码,RAX寄存器传递参数HYPERCALL_SET,RBX寄存器传递参数起始地址start,RCX寄存器传递参数结束地址end,RDX寄存器传递参数组件类型(内核钩子,跳转代码,IPS代码,IPS数据)。数据完整性监测程序可以通过设置的内核钩子,通过扫描相关内存页获取操作系统接收到的读、写、执行等访问请求。
上述实施例中的步骤4具体可以是:数据完整性监测程序将通过执行步骤3获取到的该些数据输入预设的完整性校验模型,对操作系统内核数据的可信度进行计算,进而根据计算得到的可信度值,确定操作系统内核的数据完整性。
在本实施方式中,操作系统的状态v∈V,由一个有序四元组(b,M,f,H)表示,其中:
b表示访问集,当前访问集表示在特定状态下,哪些主体以何种访问属性访问哪些客体,S表示主体集,O表示客体集,A={r,w,e,a}是访问属性集,在实际操作系统中,访问属性集可以由执行、读、写、追加写组成,分别对应于A中的四个参数,e表示执行、r表示读、a表示追加写、w表示写。
b存储在活动进程描述符段中的SDW中,在活动段表中可找到活动进程。例如查找到的即表示主体Si当前以x模式访问客体Oj,在实际的系统中,该信息分别包含在DSBR,临时指针寄存器(Temporary pointerregister,TPR)和SDW中,描述符段包含进程的相关信息,以及进程当前访问客体的相关信息。
可选地,在系统中的客体组成一棵树状结构,H表示当前的层次结构,层次结构H与系统中树结构对应,由文件系统目录表示。文件系统表示的客体还可以是文件、特殊文件、管道和目录,它们的安全级等于其创建进程的安全级,并且根据树形结构的特性,目录的安全级等于或高于其父目录的安全级。例如,Oj∈H(O)表示在此树形结构中,Oj为叶子结点,O为父节点。
完整性校验模型定义了11个状态转换规则:R1-R11,描述了主体和客体的基本访问规则,包括只读访问、只写访问、执行访问、读写访问、主体释放对客体访问属性、授予另一个主体对客体访问属性、撤销另一主体对客体访问属性、创建一客体(保持兼容性)、删除一组客体、改变主体当前安全级和改变客体的安全级,并进行了形式化定义和证明。
规则ρ为函数ρ:R×V→D×V。
其中,R为请求集,V为状态集,D为判定集,判定集D={yes,no,error,?},该函数表示给定一个请求R和一个状态V,由规则ρ决定操作系统产生的响应D和下一个状态V。
如果操作∑(R,D,W,z0)系统是一个安全系统,对每一个时刻t∈T,(xt,yt,zt,zt-1)∈W,操作系统的每一个状态(z0,z1,……,zn)均为安全状态,其中z0表示操作系统的初始状态。
当数据完整性监测程序通过执行步骤4确定操作系统内核数据完整性遭到破坏,则数据完整性监测程序将立即停止所有CPU的从核运行,并在输入输出接口输出相关告警信息。
通过上述所述的方式,在操作系统启动后,CPU的主核即进入运行时监控状态,启用Intel处理器提供的扩展页表EPT机制和VM-functions机制,并建立用于支持目标系统进行内存访问的分页结构,同时加载数据完整性监测程序,并设置截取事件的内核钩子,定时扫描目标系统相关内存页,获取操作系统接收到的只读访问、只写访问、执行访问、读写访问等处理请求,并将该些数据输入预设的完整性校验模型,对操作系统内核数据的可信度进行计算,进而根据计算得到的可信度值,确定操作系统内核的数据完整性。。
本方案中所提供的操作系统数据完整性检测方法,主要提供两个阶段的检测方案,1、在操作系统启动阶段数据完整性校验,操作系统的启动过程为系统上电-BootLoader启动-OS启动,可看作是链式结构,在启动链上增加安全机制构成可信链来保证安全可信启动。核心思想是构建一个可信根,沿着这条信任链,一级度量认证一级,一级信任一级,先度量,再验证,最后跳转,只有经过上级验证过的代码才允许其运行,使整个机载平台的系统资源安全可信。2、操作系统运行阶段数据完整性校验:操作系统启动后,CPU的主核即进入运行时监控状态,启用Intel处理器提供的扩展页表EPT机制和VM-functions机制,并建立用于支持目标系统进行内存访问的分页结构,同时加载数据完整性监测程序,并设置截取事件的内核钩子,定时扫描目标系统相关内存页,获取操作系统接收到的只读访问、只写访问、执行访问、读写访问等处理请求,并将该些数据输入预设的完整性校验模型,对操作系统内核数据的可信度进行计算,进而根据计算得到的可信度值,确定操作系统内核的数据完整性。并在监测到内核数据完整性遭到破坏,则数据完整性监测程序将立即停止所有CPU的从核运行,并在输入输出接口输出相关告警信息。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
本发明的实施例还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述计算机可读的存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;
S2,根据所述访问数据确定所述操作系统的内核数据是否完整。
通过上述步骤,由于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;根据所述访问数据确定所述操作系统的内核数据是否完整,通过确定操作系统的内核数据是否完整以确定操作系统是否安全,因此,可以解决相关技术中,操作系统运行后却无法确保安全性问题,达到保障操作系统安全性的效果。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;
S2,根据所述访问数据确定所述操作系统的内核数据是否完整。
通过上述步骤,由于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;根据所述访问数据确定所述操作系统的内核数据是否完整,通过确定操作系统的内核数据是否完整以确定操作系统是否安全,因此,可以解决相关技术中,操作系统运行后却无法确保安全性问题,达到保障操作系统安全性的效果。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种操作系统数据完整性的确定方法,其特征在于,包括:
在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;
根据所述访问数据确定所述操作系统的内核数据是否完整;
其中,根据所述访问数据确定所述操作系统的内核数据是否完整,包括:根据所述访问数据确定所述操作系统的所述内核数据的可信度;根据所述可信度确定所述内核数据是否完整,其中,在所述内核数据可信的情况下,确定所述内核数据完整;
其中,监测所述操作系统的访问情况,得到访问数据,包括:建立内存分页;扫描所述内存分页,截取访问请求作为所述访问数据。
2.根据权利要求1所述的方法,其特征在于,根据所述访问数据确定所述操作系统的所述内核数据的可信度,包括:
根据所述访问数据确定所述操作系统的状态;
根据预设的状态转换规则确定所述操作系统的状态是否为安全状态,其中,在所述操作系统的状态符合所述状态转换规则的情况下,确定所述操作系统的状态为安全状态,在确定所述操作系统的状态为安全状态的情况下,确定所述内核数据可信。
3.根据权利要求2所述的方法,其特征在于,所述操作系统的状态包括以下至少之一:
访问信息、访问权限、访问安全级,其中,所述访问信息用于指示访问主体、访问客体、访问属性中的一种或多种。
4.根据权利要求3所述的方法,其特征在于,所述操作系统的状态还包括访问客体的层次结构。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整。
6.根据权利要求5所述的方法,其特征在于,校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整,包括:
通过对比执行过的子过程所对应的映像文件与所述子过程的代码文件校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整。
7.根据权利要求5所述的方法,其特征在于,校验所述操作系统的启动过程中的部分或全部子过程的数据是否完整,还包括:
在校验确定第一子过程的数据完整的情况下,运行第二子过程的代码文件,其中,所述第一子过程和所述第二子过程均属于所述启动过程,所述第一子过程早于所述第二子过程。
8.一种操作系统数据完整性的确定装置,使用权利要求1至7任一项中所述的方法,其特征在于,包括:
监测模块,用于在操作系统启动后,监测所述操作系统的访问情况,得到访问数据;
确定模块,用于根据所述访问数据确定所述操作系统的内核数据是否完整;其中,所述确定模块,包括:第一确定子模块,用于根据该访问数据确定该操作系统的该内核数据的可信度;第二确定子模块,用于根据该可信度确定该内核数据是否完整,其中,在该内核数据可信的情况下,确定该内核数据完整;
其中,所述监测模块,包括:建立子模块,用于建立内存分页;截取子模块,用于扫描该内存分页,截取访问请求作为该访问数据。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行所述权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至7任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911419831.1A CN111177703B (zh) | 2019-12-31 | 2019-12-31 | 操作系统数据完整性的确定方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911419831.1A CN111177703B (zh) | 2019-12-31 | 2019-12-31 | 操作系统数据完整性的确定方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111177703A CN111177703A (zh) | 2020-05-19 |
CN111177703B true CN111177703B (zh) | 2023-03-31 |
Family
ID=70656040
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911419831.1A Active CN111177703B (zh) | 2019-12-31 | 2019-12-31 | 操作系统数据完整性的确定方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111177703B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116601629A (zh) * | 2021-01-25 | 2023-08-15 | 华为技术有限公司 | 一种终端芯片及其度量方法 |
CN113792304B (zh) * | 2021-08-12 | 2023-11-17 | 青岛海尔科技有限公司 | 数据库访问系统及方法 |
WO2023112170A1 (ja) * | 2021-12-14 | 2023-06-22 | 日本電信電話株式会社 | ログ出力装置、ログ出力方法およびログ出力プログラム |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1702590A (zh) * | 2004-12-02 | 2005-11-30 | 联想(北京)有限公司 | 一种建立计算机中可信任运行环境的方法 |
CN109766688A (zh) * | 2018-12-06 | 2019-05-17 | 中国科学院软件研究所 | 一种基于Merkle树的Linux程序运行时验证与管控方法和系统 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101727545A (zh) * | 2008-10-10 | 2010-06-09 | 中国科学院研究生院 | 一种安全操作系统强制访问控制机制的实施方法 |
CN102332070A (zh) * | 2011-09-30 | 2012-01-25 | 中国人民解放军海军计算技术研究所 | 一种可信计算平台的信任链传递方法 |
US9628279B2 (en) * | 2014-09-30 | 2017-04-18 | Microsoft Technology Licensing, Llc | Protecting application secrets from operating system attacks |
CN104809401B (zh) * | 2015-05-08 | 2017-12-19 | 南京大学 | 一种操作系统内核完整性保护方法 |
-
2019
- 2019-12-31 CN CN201911419831.1A patent/CN111177703B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1702590A (zh) * | 2004-12-02 | 2005-11-30 | 联想(北京)有限公司 | 一种建立计算机中可信任运行环境的方法 |
CN109766688A (zh) * | 2018-12-06 | 2019-05-17 | 中国科学院软件研究所 | 一种基于Merkle树的Linux程序运行时验证与管控方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
CN111177703A (zh) | 2020-05-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10735472B2 (en) | Container authorization policies for network trust | |
US10073966B2 (en) | Operating system-independent integrity verification | |
CN111177703B (zh) | 操作系统数据完整性的确定方法及装置 | |
US9342696B2 (en) | Attesting use of an interactive component during a boot process | |
CN104081713B (zh) | 云计算环境中的服务器和客户机的远程信任认证和地理位置 | |
US8843650B2 (en) | Trusted network booting system and method | |
CN101276389B (zh) | 单个物理可信平台模块内的多个逻辑可信平台模块的分离 | |
US20240154818A1 (en) | Software release verification | |
CN111159691B (zh) | 一种应用程序动态可信验证方法及系统 | |
KR20200052957A (ko) | 보안 제어 방법 및 컴퓨터 시스템 | |
US11281768B1 (en) | Firmware security vulnerability verification service | |
US10379894B1 (en) | Lineage-based trust for virtual machine images | |
EP3384423B1 (en) | Device with multiple roots of trust | |
US11102002B2 (en) | Trust domain isolation management in secured execution environments | |
CN111630513A (zh) | 认证所存储代码和代码更新的真实性 | |
US10999314B2 (en) | Software release tracking and logging | |
US20180373516A1 (en) | Techniques for distributing code to components of a computing system | |
CN107924440B (zh) | 用于管理容器的方法、系统和计算机可读介质 | |
US20120190338A1 (en) | Method for changing an operating mode of a mobile device | |
CN111158771B (zh) | 处理方法、装置及计算机设备 | |
CN114124524A (zh) | 一种云平台权限设置方法、装置、终端设备及存储介质 | |
CN113515779A (zh) | 文件的完整性校验方法、装置、设备及存储介质 | |
CN112311716A (zh) | 一种基于openstack的数据访问控制方法、装置及服务器 | |
CN116561772B (zh) | 可信静态度量值计算方法、装置、存储介质及处理器 | |
CN116961993A (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 |