一种检测无实体文件恶意代码的方法及系统与流程

文档序号:12467777阅读:232来源:国知局
一种检测无实体文件恶意代码的方法及系统与流程

本发明涉及信息安全技术领域,尤其涉及一种检测无实体文件恶意代码的方法及系统。



背景技术:

传统的恶意代码检测软件是遍历计算机磁盘中的所有文件,提取特征码进行对比,以及使用特征对内存进行匹配,这种方法无法有效检出未知的无实体文件类恶意代码。

已经有越来越多的APT(高级可持续性威胁)使用无实体文件的攻击方法,利用这种无实体文件的恶意代码在入侵主机系统后,将自身或衍生的恶意代码注入到系统内存中,并不在磁盘中产生或存在实体文件,传统终端安全产品对这种无实体文件的攻击检出较弱。无实体文件类恶意代码有可能将恶意代码写入注册表中,或恶意代码运行后删除本地文件,这都使得已有的恶意代码检测工具束手无策。



技术实现要素:

针对上述技术问题,本发明基于进程和模块与文件的对应关系来判定是否存在无实体文件恶意代码,解决了传统基于特征码的检测方法无法有效识别无实体文件类恶意代码的问题。

本发明采用如下方法来实现:一种检测无实体文件恶意代码的方法,包括:

遍历系统内正在运行的进程和模块;

获取所有进程和模块对应的路径和文件名并逐条形成记录;

根据记录中的路径和文件名判断在系统磁盘下是否存在对应的文件,若存在则放弃相应记录,若不存在则阻止相关进程和模块的运行,并进行深度检测。

进一步地,所述获取所有进程和模块对应的路径和文件名并逐条形成记录,具体为:获取所有进程和模块对应的路径和文件名,并以列表的形式记录在内存中。

进一步地,所述根据记录中的路径和文件名判断在系统磁盘下是否存在对应的文件之前,还包括:将路径和文件名记录逐条与白名单匹配,放弃与白名单成功匹配的路径和文件名记录。

更进一步地,所述白名单,具体为根据系统文件的路径和文件名生成的白名单。

上述方法中,所述进行深度检测,具体为:分析并判断相关进程和模块是否存在恶意代码,若存在则提取特征添加到特征库,若不存在,则提取路径和文件名添加到白名单。

本发明可以采用如下系统来实现:一种检测无实体文件恶意代码的系统,包括:

进程和模块遍历模块,用于遍历系统内正在运行的进程和模块;

路径和文件名获取模块,用于获取所有进程和模块对应的路径和文件名并逐条形成记录;

恶意代码判定模块,用于根据记录中的路径和文件名判断在系统磁盘下是否存在对应的文件,若存在则放弃相应记录,若不存在则阻止相关进程和模块的运行,并进行深度检测。

进一步地,所述路径和文件名获取模块,具体用于:获取所有进程和模块对应的路径和文件名,并以列表的形式记录在内存中。

进一步地,还包括:白名单匹配模块,用于将路径和文件名记录逐条与白名单匹配,放弃与白名单成功匹配的路径和文件名记录。

更进一步地,所述白名单,具体为根据系统文件的路径和文件名生成的白名单。

上述系统中,所述进行深度检测,具体为:分析并判断相关进程和模块是否存在恶意代码,若存在则提取特征添加到特征库,若不存在,则提取路径和文件名添加到白名单。

综上,本发明通过监控系统内正在运行的进程和模块,并获取进程和模块所对应的路径和文件名,判断在系统磁盘中是否存在对应的文件,若存在则初步判定不存在无实体文件类恶意代码,若不存在则认为高度可疑,可以继续进行深度检测,进而判定是否存在恶意代码。

有益效果为:本发明与传统基于内存检测不同的是,不依赖于内存特征进行匹配,而是基于进程和模块与文件的对应关系来识别并判定是否存在恶意代码。本发明所述方法及系统能够应用在反病毒产品中,进而解决了传统基于特征码的检测方法无法有效检测无实体文件恶意代码的问题。

附图说明

为了更清楚地说明本发明的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明提供的一种检测无实体文件恶意代码的方法实施例1流程图;

图2为本发明提供的一种检测无实体文件恶意代码的方法实施例2流程图;

图3为本发明提供的一种检测无实体文件恶意代码的系统实施例结构图。

具体实施方式

本发明给出了一种检测无实体文件恶意代码的方法及系统实施例,为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明:

本发明首先提供了一种检测无实体文件恶意代码的方法实施例1,如图1所示,包括:

S101:遍历系统内正在运行的进程和模块;

其中,所述模块为DLL动态链接库文件,所述DLL文件放置于系统中,当执行某一个程序时,相应的DLL文件会被调用。

S102:获取所有进程和模块对应的路径和文件名并逐条形成记录;

具体为:获取所有进程和模块对应的路径和文件名,并以列表的形式记录在内存中。

S103:根据记录中的路径和文件名判断在系统磁盘下是否存在对应的文件,若存在则放弃相应记录,若不存在则阻止相关进程和模块的运行,并进行深度检测。

其中,当判定记录中的路径和文件名在系统磁盘下不存在对应的文件,则判定相关进程和模块是高度可疑的,则调用反病毒产品或者由分析人员进行进一步地分析和判断,进而最终判定涉及的进程和模块是否存在无实体类恶意代码。若存在则提取特征添加到特征库,若不存在,则提取路径和文件名添加到白名单。

本发明同时提供了一种检测无实体文件恶意代码的方法实施例2,如图2所示,包括:

S201:遍历系统内正在运行的进程和模块。

S202:获取所有进程和模块对应的路径和文件名并逐条形成记录。

具体为:获取所有进程和模块对应的路径和文件名,并以列表的形式记录在内存中。

S203:将路径和文件名记录逐条与白名单匹配,放弃与白名单成功匹配的路径和文件名记录。

其中,所述白名单,可以但不限于:根据系统文件的路径和文件名生成的白名单。目的在于过滤系统进程和模块。也可以是用户根据需要添加的认为是安全的进程和模块。

S204:根据记录中的路径和文件名判断在系统磁盘下是否存在对应的文件,若存在则放弃相应记录,若不存在则阻止相关进程和模块的运行,并进行深度检测。

其中,所述进行深度检测,具体为:分析并判断相关进程和模块是否存在恶意代码,若存在则提取特征添加到特征库,若不存在,则提取路径和文件名添加到白名单。

本发明其次提供了一种检测无实体文件恶意代码的系统实施例,如图3所示,包括:

进程和模块遍历模块301,用于遍历系统内正在运行的进程和模块;

路径和文件名获取模块302,用于获取所有进程和模块对应的路径和文件名并逐条形成记录;

恶意代码判定模块303,用于根据记录中的路径和文件名判断在系统磁盘下是否存在对应的文件,若存在则放弃相应记录,若不存在则阻止相关进程和模块的运行,并进行深度检测。

优选地,所述路径和文件名获取模块,具体用于:获取所有进程和模块对应的路径和文件名,并以列表的形式记录在内存中。

优选地,还包括:白名单匹配模块,用于将路径和文件名记录逐条与白名单匹配,放弃与白名单成功匹配的路径和文件名记录。

更优选地,所述白名单,具体为根据系统文件的路径和文件名生成的白名单。

上述系统实施例中,所述进行深度检测,具体为:分析并判断相关进程和模块是否存在恶意代码,若存在则提取特征添加到特征库,若不存在,则提取路径和文件名添加到白名单。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

如上所述,上述实施例给出了一种检测无实体文件恶意代码的方法及系统实施例,首先获取系统内运行的进程和模块,获取进程和模块对应的路径和文件名,并依据记录中的路径和文件名判断系统磁盘下是否存在对应的文件,若不存在则判定疑似存在无实体类恶意代码,并进行深度分析确认。本发明提供的上述实施例能够弥补传统检测方法无法检测无实体文件类恶意代码的问题,能够有效的识别和阻止无实体文件类恶意代码。

以上实施例用以说明而非限制本发明的技术方案。不脱离本发明精神和范围的任何修改或局部替换,均应涵盖在本发明的权利要求范围当中。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1