System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请涉及内存防护,具体而言,涉及一种内存防护方法、装置、设备及存储介质。
技术介绍
1、为了防止恶意软件规避传统的静态恶意代码检测,目前主要的内存防御策略有两种方法:其一是主动的内存扫描技术,通过对运行中的恶意软件内存特征进行实时匹配,一旦匹配到恶意指标即识别为恶意软件;再者是函数挂钩技术,通过监控内存分配和属性设置函数,在程序分配或设置内存为可执行时对该内存区域进行检查,实现恶意软件的识别和清除。
2、目前,现有的内存防御策略由于扫描覆盖面较广,因此均存在扫描效率低下的问题,这限制了在实时监测场景中对于恶意代码威胁的响应速度。另外,由于目前的内存防御方案通常只是简单针对浅显的内存特征进行匹配和检测,无法准确和全面地识别和阻止恶意软件的行为。综上,亟需一种高效且准确的内存防护方案。
技术实现思路
1、本申请实施例的目的在于提供一种内存防护方法、装置、设备及存储介质,用以提高内存防护的检测效率和准确性。
2、第一方面,本申请实施例提供了一种内存防护方法,包括:
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、信息获取模块,用于基于监控组件触发的内存检测请求,获取基于内存防护模块收集的当前内存关联信息;其中,所述当前内存关联信息包括代码上下文信息、程序数据库信息、内存页分配信息和线程创建信息中的至少一项;
35、信息上传模块,用于将基于所述当前内存关联信息生成的整合信息上传至服务端,以使所述服务端针对于所述整合信息进行恶意代码检测。
36、第三方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时可实现第一方面任一实施例所述的方法。
37、第四方面,本申请实施例提供了一种计算机程序产品,所述的计算机程序产品包括计算机程序,其中,所述的计算机程序被处理器执行时可实现第一方面任一实施例所述的方法。
38、第五方面,本申请实施例提供了一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时可实现第一方面任一实施例所述的方法。
本文档来自技高网...【技术保护点】
1.一种内存防护方法,其特征在于,包括:
2.根据权利要求1所述的内存防护方法,其特征在于,所述基于监控组件触发的内存检测请求,获取基于内存防护模块收集的当前内存关联信息,包括:
3.根据权利要求1所述的内存防护方法,其特征在于,所述内存防护模块被配置为:
4.根据权利要求1所述的内存防护方法,其特征在于,所述服务端被配置为:
5.根据权利要求1所述的内存防护方法,其特征在于,所述内存防护模块还被配置为:
6.根据权利要求1所述的内存防护方法,其特征在于,还包括:
7.根据权利要求1所述的内存防护方法,其特征在于,还包括:
8.根据权利要求1所述的内存防护方法,其特征在于,还包括:
9.一种内存防护装置,其特征在于,包括:
10.一种电子设备,其特征在于,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其中,所述处理器执行所述程序时可实现权利要求1-8任一所述的内存防护方法。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存
...【技术特征摘要】
1.一种内存防护方法,其特征在于,包括:
2.根据权利要求1所述的内存防护方法,其特征在于,所述基于监控组件触发的内存检测请求,获取基于内存防护模块收集的当前内存关联信息,包括:
3.根据权利要求1所述的内存防护方法,其特征在于,所述内存防护模块被配置为:
4.根据权利要求1所述的内存防护方法,其特征在于,所述服务端被配置为:
5.根据权利要求1所述的内存防护方法,其特征在于,所述内存防护模块还被配置为:
6.根据权利要求1所述的内存防护方法,其特征在于,还包括:
7....
【专利技术属性】
技术研发人员:孙晓骏,覃梓兴,张苏洵,刘铠文,李宜檑,张一武,
申请(专利权)人:戎码科技北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。