System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种应用程序动态完整性度量方法和系统技术方案_技高网

一种应用程序动态完整性度量方法和系统技术方案

技术编号:40842113 阅读:4 留言:0更新日期:2024-04-01 15:09
本发明专利技术提供了一种应用程序动态完整性度量方法和系统,该方法包括响应于内核态与用户态进行数据访问时和/或缺页异常时;获取发生响应时的内存地址,确定待验证VMA;根据预设策略确定目标VMA类型和目标待度量程序;其中,目标待度量程序中包括多个满足目标VMA类型的VMA,且不同的VMA均对应不同的完整性预期值;在待验证VMA为目标VMA类型且属于目标待度量程序时,根据待验证VMA对应的完整性预期值对待验证VMA进行动态内存度量验证。本方案提供的应用程序动态完整性度量方法,以VMA为最小独立单元进行度量验证,能够在程序运行时通过自动触发完成对应用内存的完整性度量。

【技术实现步骤摘要】

本专利技术涉及计算机,特别涉及一种应用程序动态完整性度量方法和系统


技术介绍

1、随着计算机网络的普及和互联网的发展,安全威胁不断增加。攻击者利用各种漏洞和技术来尝试修改程序的内存、执行恶意代码或者绕过安全控制,因此内存安全至关重要。

2、应用内存数据面临的主要安全风险包括:缓冲区溢出、野指针、内存泄露、格式化字符串攻击、不正确的内存访问、敏感信息泄露、注入攻击等。常见的内存完整性技术如数据执行保护dep、地址空间布局随机化aslr、内存防护技术、硬件支持的内存完整性技术、堆栈保护技术、安全编程实践、监控和日志记录等均能解决上述应用内存面临的安全问题。而且现有静态度量仅在平台启动时发挥作用,无法防止运行时恶意代码的注入,不能保证系统运行时的完整性。因此为了在程序运行过程中检测应用程序内存的完整性,保障应用程序运行过程中的安全可信性,需要提供一种应用程序动态完整性度量方法和系统。


技术实现思路

1、本专利技术提供了一种应用程序动态完整性度量方法和系统,以vma为最小独立单元进行度量验证,能够在程序运行时通过自动触发完成对应用内存的完整性度量。

2、第一方面,本专利技术提供了一种应用程序动态完整性度量方法,包括:

3、响应于内核态与用户态进行数据访问时和/或缺页异常时;

4、获取发生所述响应时的内存地址,确定待验证vma;

5、根据预设策略确定目标vma类型和目标待度量程序;其中,所述目标待度量程序中包括多个满足所述目标vma类型的vma,且不同的vma均对应不同的完整性预期值;

6、在所述待验证vma为所述目标vma类型且属于所述目标待度量程序时,根据所述待验证vma对应的完整性预期值对所述待验证vma进行动态内存度量验证。

7、优选地,所述获取发生所述响应时的内存地址,确定待验证vma,包括:

8、获取所述进行数据访问时访问的内存地址,确定该内存地址对应的vma为所述待验证vma;和/或

9、获取发生所述缺页异常时的内存地址,确定该内存地址对应的vma为所述待验证vma。

10、优选地,所述目标vma类型包括可执行类型vma、栈类型vma、io类型vma、可访问类型vma和特殊类型vma;和/或

11、所述完整性预期值通过如下方法确定:

12、获取所述目标待度量程序在可信运行环境中安全运行且应用内存数据完整的历史运行过程;

13、在所述历史运行过程中,针对所述目标vma类型的vma,均执行:以页长度为单元遍历该vma中的内存数据,并对每页内存数据进行循环冗余校验,得到校验值;然后对所述校验值进行哈希计算,得到哈希值,并将所述哈希值作为所述完整性预期值。

14、优选地,在所述根据所述待验证vma对应的完整性预期值对所述待验证vma进行动态内存度量验证之前,在所述根据预设策略确定目标vma类型和目标待度量程序之后,还包括:

15、判断所述待验证vma是否为所述目标vma类型,以及判断所述待验证vma是否属于所述目标待度量程序;

16、若所述判断结果均为是,则将标记所述待验证vma的度量标识为真,并将所述度量标识和所述待验证vma对应的完整性预期值加入到所述待验证vma的vma结构体中。

17、优选地,所述根据所述待验证vma对应的完整性预期值对所述待验证vma进行动态内存度量验证,包括:

18、从预先构建的完整性白名单中获取所述待验证vma对应的完整性预期值;

19、以页长度为单元遍历所述待验证vma中的内存数据;

20、对每页所述内存数据进行循环冗余校验,得到校验值;

21、采用哈希算法对所述校验值进行哈希计算,得到度量哈希值;

22、判断所述完整性预期值和所述度量哈希值是否一致;

23、若所述判断结果为是,则验证通过;反之,则验证失败。

24、优选地,还包括:

25、根据所述vma及其对应的所述完整性预期值构建完整性白名单;所述完整性白名单中存储有一一对应的所述vma和所述完整性预期值。

26、第二方面,本专利技术还提供了一种应用程序动态完整性度量系统,包括:

27、响应模块,用于响应于内核态与用户态进行数据访问时和/或缺页异常时;

28、确定模块,用于获取发生所述响应时的内存地址,确定待验证vma;

29、策略模块,用于根据预设策略确定目标vma类型和目标待度量程序;其中,所述目标待度量程序中包括多个满足所述目标vma类型的vma,且不同的vma均对应不同的完整性预期值;

30、动态度量模块,用于在所述待验证vma为所述目标vma类型且属于所述目标待度量程序时,根据所述待验证vma对应的完整性预期值对所述待验证vma进行动态内存度量验证。

31、优选地,所述动态度量模块还用于执行如下操作:

32、从预先构建的完整性白名单中获取所述待验证vma对应的完整性预期值;

33、以页长度为单元遍历所述待验证vma中的内存数据;

34、对每页所述内存数据进行循环冗余校验,得到校验值;

35、采用哈希算法对所述校验值进行哈希计算,得到度量哈希值;

36、判断所述完整性预期值和所述度量哈希值是否一致;

37、若所述判断结果为是,则验证通过;反之,则验证失败。

38、第三方面,本专利技术还提供了一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现上述任一项所述的应用程序动态完整性度量方法。

39、第四方面,本专利技术还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行上述任一项所述的应用程序动态完整性度量方法。

40、本专利技术提供了一种应用程序动态完整性度量方法和系统,该方法响应于内核态与用户态进行数据访问时和/或缺页异常时,通过基于发生响应时的内存地址确定对应的待验证vma,并在该待验证vma符合预设策略的条件时,根据该待验证vma的完整性预期值进行动态内存度量验证。如此,不仅能在程序运行过程中基于数据访问时、缺页异常实现自动触发动态内存度量验证,还以vma为最小单元实现独立的度量验证,而且通过预设策略使用户能对待验证的vma种类和度量程序进行灵活的设置。

本文档来自技高网...

【技术保护点】

1.一种应用程序动态完整性度量方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述获取发生所述响应时的内存地址,确定待验证VMA,包括:

3.根据权利要求1所述的方法,其特征在于,所述目标VMA类型包括可执行类型VMA、栈类型VMA、IO类型VMA、可访问类型VMA和特殊类型VMA;和/或

4.根据权利要求1所述的方法,其特征在于,在所述根据所述待验证VMA对应的完整性预期值对所述待验证VMA进行动态内存度量验证之前,在所述根据预设策略确定目标VMA类型和目标待度量程序之后,还包括:

5.根据权利要求1至4中任一所述的方法,其特征在于,所述根据所述待验证VMA对应的完整性预期值对所述待验证VMA进行动态内存度量验证,包括:

6.根据权利要求5所述的方法,其特征在于,还包括:

7.一种应用程序动态完整性度量系统,其特征在于,包括:

8.根据权利要求7所述的系统,其特征在于,所述动态度量模块还用于执行如下操作:

9.一种计算设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-6中任一项所述的方法。

10.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-6中任一项所述的方法。

...

【技术特征摘要】

1.一种应用程序动态完整性度量方法,其特征在于,包括:

2.根据权利要求1所述的方法,其特征在于,所述获取发生所述响应时的内存地址,确定待验证vma,包括:

3.根据权利要求1所述的方法,其特征在于,所述目标vma类型包括可执行类型vma、栈类型vma、io类型vma、可访问类型vma和特殊类型vma;和/或

4.根据权利要求1所述的方法,其特征在于,在所述根据所述待验证vma对应的完整性预期值对所述待验证vma进行动态内存度量验证之前,在所述根据预设策略确定目标vma类型和目标待度量程序之后,还包括:

5.根据权利要求1至4中任一所述的方法,其特征在于,所...

【专利技术属性】
技术研发人员:孟德伟徐宁李宇哲章轶代向东
申请(专利权)人:北京长扬软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1