System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术属于可信计算,特别涉及一种可信度量方法、装置、设备及存储介质。
技术介绍
1、sylixos作为一款优秀的嵌入式实时操作系统,具备高效性,实时性等特点。sylixos内核模块作为内核地址空间的重要组成部分,在很大程度上决定了内核的功能性和安全性。
2、目前,为了保证操作系统的内核代码不被攻击者恶意修改,通过给内核模块添加签名,并在内核模块加载时检查签名的合法性,可以确保加载的内核模块是没有被修改过的;或者,通过设置内存保护机制,限制任意内存区域不能同时为可写和可执行状态,来防止攻击者在运行时注入并执行恶意代码。
3、这些保护方法可以在一定程度上保护内核不受代码注入的攻击,但是它们大均只能保证内核在加载之前不被攻击或者篡改,无法保证内核模块整个运行阶段内存的安全性。
技术实现思路
1、本专利技术实施例提供一种可信度量方法、装置、设备及存储介质,解决了现有技术中无法保证sylixos系统内核整个运行阶段的内存安全性。
2、第一方面,本专利技术的实施例提供一种可信度量方法,应用于sylixos操作系统,包括:
3、在内核模块加载的过程中,根据获取到的所述内核模块文件数据,对所述内核模块进行静态可信度量;
4、在确定所述内核模块静态可信之后,将所述内核模块加载到内存中;
5、每隔预设时间,根据获取到的所述内核模块的符号表、代码段数据对所述内核模块进行动态可信度量。
6、进一步地,所述根据获取到的所
7、根据所述内核模块文件数据,计算所述文件数据的哈希值和/或签名值;
8、将所述文件数据的哈希值和/或签名值与静态基准值进行比对;
9、在所述哈希值和/或签名值与所述静态基准值一致的情况下,确定所述内核模块静态可信;否则,确定所述内核模块静态不可信。
10、进一步地,所述方法还包括:
11、在所述内核模块加载之前,获取所述内核模块的基准文件数据;
12、将根据所述基准文件数据进行计算得到基准哈希值和/或基准签名值作为所述静态基准值。
13、进一步地,在确定所述内核模块静态可信之后,将所述内核模块加载到内存中,包括:
14、通过目标函数读取所述内核模块的文件;
15、根据所述内核模块的文件确定所述文件的节区头部表、程序数据段、代码段以及符号表;
16、根据所述节区头部表、程序数据段、代码段以及符号表,在所述内核中构建所述内核模块的符号表和模块节点。
17、进一步地,每隔预设时间,根据获取到的所述内核模块的符号表、代码段数据对所述内核模块进行动态可信度量,包括:
18、每隔预设时间获取所述符号表,对所述符号表中每个符号对应的内存地址信息进行哈希计算,得到所述内核模块的符号度量值;
19、每隔预设时间获取对根据所述内核模块的内存地址、代码段偏移以及代码段长度获得的代码段数据进行哈希计算,得到所述内核模块的代码度量值;
20、将所述符号度量值与符号基准值进行对比,并且将所述代码度量值与代码基准值进行对比;
21、在所述符号度量值与所述符号基准值一致,且所述代码度量值与所述代码基准值一致的情况下,确定所述内核模块动态可信,否则,确定所述内核模块动态不可信。
22、进一步地,所述方法还包括:
23、在所述内核模块的加载过程中,根据所述内核模块中每个基准符号的加载顺序,对每个所述基准符号对应的地址信息进行哈希计算,得到并保存所述符号基准值。
24、进一步地,所述方法还包括:
25、在所述内核模块成功加载到内核中后,根据所述内核模块的模块节点中存储的所述内核模块的基准内存地址、基准代码段的偏移以及基准代码段长度,获取所述内核模块加载到内存中的基准代码段数据;
26、对所述基准代码段数据进行哈希计算,得到并保存所述代码基准值。
27、第二方面,本专利技术的实施例提供一种内核模块的可信度量装置,包括:
28、第一度量模块,用于在内核模块加载的过程中,根据获取到的所述内核模块文件数据,对所述内核模块进行静态可信度量;
29、加载模块,用于在确定所述内核模块静态可信之后,将所述内核模块加载到内存中;
30、第二度量模块,用于每隔预设时间,根据获取到的所述内核模块的符号表、代码段数据对所述内核模块进行动态可信度量。
31、第三方面,本专利技术的实施例提供一种内核模块的可信度量设备,包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序所述处理器执行所述计算机程序时实现如上所述的内核模块的可信度量方法的步骤。
32、第四方面,本专利技术的实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上所述的内核模块的可信度量方法的步骤。
33、本专利技术的上述技术方案的有益效果是:
34、本专利技术实施例的内核模块的可信度量方法,通过在内核模块加载的过程中,根据获取到的所述内核模块文件数据,对所述内核模块进行静态可信度量;通过在所述内核模块加载之后,每隔预设时间获取到的所述内核模块的符号表、代码段数据对所述内核模块进行动态可信度量。本专利技术的方案,通过静态可信度量和动态可信度量相结合的方式,能够实现对内核模块整个运行过程的可信度量,从而防止内核代码被攻击者恶意篡改,保证代码的完整性。
本文档来自技高网...【技术保护点】
1.一种可信度量方法,应用于SylixOS操作系统,其特征在于,包括:
2.根据权利要求1所述的内核模块的可信度量方法,其特征在于,所述根据获取到的所述内核模块文件数据,对所述内核模块进行静态可信度量,包括:
3.根据权利要求2所述的内核模块的可信度量方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的内核模块的可信度量方法,其特征在于,在确定所述内核模块静态可信之后,将所述内核模块加载到内存中,包括:
5.根据权利要求1所述内核模块的可信度量方法,其特征在于,每隔预设时间,根据获取到的所述内核模块的符号表、代码段数据对所述内核模块进行动态可信度量,包括:
6.根据权利要求5所述的内核模块的可信度量方法,其特征在于,所述方法还包括:
7.根据权利要求5所述的内核模块的可信度量方法,其特征在于,所述方法还包括:
8.一种内核模块的可信度量装置,其特征在于,包括:
9.一种内核模块的可信度量设备,包括:收发机、存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现如权利要求1至7中任一项所述的内核模块的可信度量方法的步骤。
...【技术特征摘要】
1.一种可信度量方法,应用于sylixos操作系统,其特征在于,包括:
2.根据权利要求1所述的内核模块的可信度量方法,其特征在于,所述根据获取到的所述内核模块文件数据,对所述内核模块进行静态可信度量,包括:
3.根据权利要求2所述的内核模块的可信度量方法,其特征在于,所述方法还包括:
4.根据权利要求1所述的内核模块的可信度量方法,其特征在于,在确定所述内核模块静态可信之后,将所述内核模块加载到内存中,包括:
5.根据权利要求1所述内核模块的可信度量方法,其特征在于,每隔预设时间,根据获取到的所述内核模块的符号表、代码段数据对所述内核模块进行动态可信度量,包括:
【专利技术属性】
技术研发人员:汤福,李业旺,郑驰,李滕,刘海洁,曾亮,
申请(专利权)人:大唐高鸿信安浙江信息科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。