本发明涉及网络安全技术领域,具体为一种office文档文件的恶意代码检测方法及系统。
背景技术:
恶意office文档文件通常包括两种情况,一方面为恶意宏,另一方面为具有溢出行为的恶意office文件。
宏病毒是一个古老而又风靡一时的病毒,它不像普通病毒可以感染exe文件,宏病毒可以感染office文档文件,有跨平台能力,并且感染宏病毒的文档很危险,其破坏程度完全取决于病毒作者的想象力。宏病毒在上个世纪90年代的时候比较流行,在后来相当长一段时间内销声匿迹,慢慢淡出了"安全圈"。近两年,宏病毒再次出现,配合钓鱼邮件、社工手段等方式又有卷土重来的气势。
有溢出行为的文档通常是伴随office“漏洞”而生,通过利用漏洞可以让word文件悄悄的在后台其他pe文件,近两年备受关注的“apt”高级威胁通常也是通过潜伏在利用漏洞的office文档中,再配合鱼叉式钓鱼邮件传播的,因此溢出文档的威胁能力可以想见。所以office文档格式的威胁根据不同情况、不同样本、不同方法可以转换成各种高风险威胁。
近两年office文档文件病毒居高不下,由于常见的可执行文件会备受各种防护系统、杀毒软件所关注,而采取文档文件内置病毒的方法可以掩人耳目获得更高效的感染目的。例如近两年流行的勒索者病毒、powershell病毒均可内置office文档文件中感染用户系统。
技术实现要素:
为了克服现有技术方案的不足,本发明提供一种office文档文件的恶意代码检测方法,通过结合沙箱判断、静态特征匹配、进程链判断等多种技术手段,最终有效识别溢出类文档文件和宏病毒类文档文件,最终有效防止恶意office文档文件进入用户系统执行恶意行为。
本发明解决其技术问题所采用的技术方案是:一种office文档文件的恶意代码检测方法,包括如下步骤:
(s10)将待检测文档文件投入虚拟沙箱执行,并监控是否存在异常行为,若存在则判定待检测文档文件为疑似溢出文档文件,并进行进一步检测;
(s20)提取待检测文档文件的宏代码,将所述宏代码与恶意宏代码特征库匹配,若匹配成功则判定待检测文档文件为宏病毒文档文件,否则运行所述宏代码,并监控是否存在联网行为,若存在则进行进一步检测。
作为本发明一种优选的技术方案,所述步骤(s10)中将待检测文档文件投入虚拟沙箱后,是通过运行各流行版本的office软件来监控是否存在异常行为。
作为本发明一种优选的技术方案,所述步骤(s10)中监控是否存在异常行为包括:
是否存在可疑exe进程链,若存在则提取相关exe文件进行进一步检测;
是否存在联网行为,若存在则判断联网行为所涉及网络与白名单是否匹配,若匹配则判定为正常文件,否则提取相关exe文件进行进一步检测。
作为本发明一种优选的技术方案,提取相关exe文件进行进一步检测的方法具体为:将exe文件与文件白名单匹配,若匹配成功则判定为正常文件,否则按照已有策略对所述exe文件进行恶意代码检测。
作为本发明一种优选的技术方案,所述联网行为存在的话,其进一步检测的方法包括:
若联网行为所涉及网路有活性,则下载可执行代码到本地,并进一步判断所述可执行代码是否恶意;
若联网行为所涉及网络已失活,则将所涉及网络与网络白名单匹配,若匹配失败则报警并判定为疑似宏病毒文档文件。
另外本发明还设计了一种office文档文件的恶意代码检测系统,包括:
溢出文件检测模块,用于将待检测文档文件投入虚拟沙箱执行,并监控是否存在异常行为,若存在则判定待检测文档文件为疑似溢出文档文件,并进行进一步检测;
宏病毒检测模块,用于提取待检测文档文件的宏代码,将所述宏代码与恶意宏代码特征库匹配,若匹配成功则判定待检测文档文件为宏病毒文档文件,否则运行所述宏代码,并监控是否存在联网行为,若存在则进行进一步检测。
与现有技术相比,本发明的有益效果是:本发明给出一种office文档文件的恶意代码检测方法及系统,一方面通过监控待检测文档文件是否存在溢出行为,包括:投入虚拟沙箱执行并判断是否存在异常行为;另一方面对于具备宏的文档文件,则提取待检测文档文件中的宏代码,首先进行静态特征匹配,若匹配失败,则虚拟运行所述宏代码,并主要监控其联网行为,通过对联网行为的进一步分析最终判定是否为具备恶意代码的文档文件。本发明所述技术方案针对目前存在的多数恶意文档都具备较好的检出效果,不仅能够检出具备溢出行为的恶意文档文件,同时能够有效检出含有恶意宏病毒的文档文件,进而有效防止恶意office文档文件进入系统,对用户的系统安全造成更大的威胁。
附图说明
图1为本发明提供的一种office文档文件的恶意代码检测方法实施例流程图;
图2为本发明提供的一种office文档文件的恶意代码检测系统实施例结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
如图1所示,一种office文档文件的恶意代码检测方法,包括:
s101:将待检测文档文件投入虚拟沙箱执行,并监控是否存在异常行为,若存在则判定待检测文档文件为疑似溢出文档文件,并进行进一步检测。
其中,所述将待检测文档文件投入虚拟沙箱执行,并监控是否存在异常行为,具体为:将待检测文档文件投入虚拟沙箱,并运行各流行版本的office软件,并监控是否存在异常行为。其中,在各流行版本的office软件上运行待检测文档文件,进而监控运行结果,使得检测结果更加全面。
其中,所述监控是否存在异常行为包括但不仅限于:
是否存在可疑exe进程链,即在待检测文档文件的母进程下方是否包含可疑exe子进程,若存在则提取相关exe文件进行进一步检测;当发现存在可疑exe子进程则可以认为待检测文档文件存在溢出可执行文件的行为;
是否存在联网行为,若存在则判断联网行为所涉及网络与白名单是否匹配,若匹配则判定为正常文件,否则提取相关exe文件进行进一步检测。具体实施方法可以为:将联网行为所涉及网络的ip地址与域名与白名单匹配,并判断是否匹配,若匹配失败则判定为存在疑似溢出联网行为,则可以进一步提取相关exe文件进行进一步检测。
其中,所述提取相关exe文件进行进一步检测,具体为:
将exe文件与文件白名单匹配,若匹配成功则判定为正常文件,否则按照已有策略对所述exe文件进行恶意代码检测。
s102:提取待检测文档文件的宏代码,将所述宏代码与恶意宏代码特征库匹配,若匹配成功则判定待检测文档文件为宏病毒文档文件,否则执行s103。
其中,步骤s102可以先判断宏代码是否经过加密处理,若经过加密处理,则直接执行s103。
s103:运行所述宏代码,并监控是否存在联网行为,若存在则进行进一步检测。除了监控是否存在联网行为,还可以监控是否存在恶意行为,包括但不限于:删除文件、加密用户文件等明显的恶意操作,若是,则可以直接判定为宏病毒文档文件。
其中,所述监控是否存在联网行为,若存在则进行进一步检测,具体包括但不限于:
若联网行为所涉及网路有活性,则下载可执行代码到本地,并进一步判断所述可执行代码是否恶意;
若联网行为所涉及网络已失活,则将所涉及网络与网络白名单匹配,若匹配失败则报警并判定为疑似宏病毒文档文件。其中,所述将所涉及网络与网络白名单匹配可以但不限于:将所涉及网络的ip或者域名与相应白名单匹配。
如图2所示,本发明提供了一种office文档文件的恶意代码检测系统,包括:
溢出文件检测模块201,用于将待检测文档文件投入虚拟沙箱执行,并监控是否存在异常行为,若存在则判定待检测文档文件为疑似溢出文档文件,并进行进一步检测;
宏病毒检测模块202,用于提取待检测文档文件的宏代码,将所述宏代码与恶意宏代码特征库匹配,若匹配成功则判定待检测文档文件为宏病毒文档文件,否则运行所述宏代码,并监控是否存在联网行为,若存在则进行进一步检测。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
如上所述,上述实施例给出了一种office文档文件的恶意代码检测方法及系统实施例,通过针对目前常见的两类针对office文档文件的恶意代码进行检测,一类是溢出类文档文件,另一类是宏病毒文档文件,上述实施例针对两类恶意代码的特性给出具备针对性的检测方案,将静态检测和动态监控有效结合进而能够及时发现问题文档文件,有效阻止恶意office文档文件进入用户系统造成进一步的损失。
对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。