一种病毒扫描的方法及装置与流程

文档序号:14923565发布日期:2018-07-13 08:03阅读:285来源:国知局

本发明实施例涉及网络安全技术领域,尤其是涉及一种病毒扫描的方法及装置。



背景技术:

病毒扫描指的是通过运行病毒扫描的应用程序对指定的文件是否携带病毒进行扫描和处理的方法。在识别文件是否携带病毒的过程中,调用本地病毒库,根据本地病毒库中的病毒样本对该文件是否携带病毒进行识别,进而对携带病毒的文件进行修复或者删除的操作。

然而,现有的本地病毒库文件是通过工作人员手动升级或者在预先设定的时间点自动升级的,只有手动操作或者到达该时间点后才会对本地病毒库文件进行升级,从而无法实现本地病毒库文件的及时更新。

在实现本发明实施例的过程中,发明人发现现有的对文件进行病毒查杀的方法中,由于本地病毒库文件升级的滞后性,导致对携带病毒的文件的漏检。



技术实现要素:

本发明所要解决的技术问题是如何解决现有的对文件进行病毒查杀的方法中,由于本地病毒库文件升级的滞后性,导致对携带病毒的文件的漏检的问题。

针对以上技术问题,本发明的实施例提供了一种病毒扫描的方法,包括:

获取对目标文件进行病毒扫描的指令信息;

根据最新的目标病毒库和本地病毒库判断是否升级所述本地病毒库,若是,将所述本地病毒库升级为所述目标病毒库;

运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果;

其中,所述本地病毒库为运行所述本地查杀调用的病毒库。

可选地,所述运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果,包括:

运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第一扫描结果;

运行云查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第二扫描结果;

若所述第一扫描结果为所述目标文件携带病毒或所述第二扫描结果为所述目标文件携带病毒,则所述目标扫描结果为所述目标文件携带病毒;

若所述第一扫描结果为所述目标文件不携带病毒且所述第二扫描结果为所述目标文件不携带病毒,则所述目标扫描结果为所述目标文件不携带病毒。

可选地,所述运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第一扫描结果,包括:

运行启发式查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带pe病毒的第三扫描结果,和/或,运行qex脚本查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带非pe病毒的第四扫描结果;

若所述第三扫描结果为所述目标文件携带pe病毒或所述第四扫描结果为所述目标文件携带非pe病毒,则所述第一扫描结果为所述目标文件携带病毒;

若所述第三扫描结果为所述目标文件不携带pe病毒且所述第四扫描结果为所述目标文件不携带非pe病毒,则所述第一扫描结果为所述目标文件不携带病毒;

其中,所述本地查杀为所述启发式查杀或所述qex脚本查杀。

可选地,所述根据最新的目标病毒库和本地病毒库判断是否升级所述本地病毒库,包括:

获取所述目标病毒库的第一版本号码和所述本地病毒库的第二版本号码,若所述第一版本号码和所述第二版本号码不相同,则判定升级所述本地病毒库。

可选地,还包括:

若所述目标扫描结果为所述目标文件携带病毒,则判断所述目标文件是否能修复为安全文件;

若所述目标文件能修复为所述安全文件,则将所述目标文件修复为所述安全文件;

若所述目标文件不能修复为所述安全文件,则发出所述目标文件携带病毒的提示信息。

第二方面,本发明的实施例提供了一种病毒扫描的装置,包括:

接收模块,用于接收对目标文件进行病毒扫描的指令信息;

升级模块,用于根据最新的目标病毒库和本地病毒库判断是否升级本地病毒库,若是,将所述本地病毒库升级为所述目标病毒库;

扫描模块,用于运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果;

其中,所述本地病毒库为运行所述本地查杀调用的病毒库。

可选地,所述扫描模块还用于运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第一扫描结果;运行云查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第二扫描结果;若所述第一扫描结果为所述目标文件携带病毒或所述第二扫描结果为所述目标文件携带病毒,则所述目标扫描结果为所述目标文件携带病毒;若所述第一扫描结果为所述目标文件不携带病毒且所述第二扫描结果为所述目标文件不携带病毒,则所述目标扫描结果为所述目标文件不携带病毒。

可选地,所述扫描模块还用于运行启发式查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带pe病毒的第三扫描结果,和/或,运行qex脚本查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带非pe病毒的第四扫描结果;若所述第三扫描结果为所述目标文件携带pe病毒或所述第四扫描结果为所述目标文件携带非pe病毒,则所述第一扫描结果为所述目标文件携带病毒;若所述第三扫描结果为所述目标文件不携带pe病毒且所述第四扫描结果为所述目标文件不携带非pe病毒,则所述第一扫描结果为所述目标文件不携带病毒;其中,所述本地查杀为所述启发式查杀或所述qex脚本查杀。

可选地,所述升级模块还用于获取所述目标病毒库的第一版本号码和所述本地病毒库的第二版本号码,若所述第一版本号码和所述第二版本号码不相同,则判定升级所述本地病毒库。

可选地,还包括修复模块,所述修复模块用于若所述目标扫描结果为所述目标文件携带病毒,则判断所述目标文件是否能修复为安全文件;若所述目标文件能修复为所述安全文件,则将所述目标文件修复为所述安全文件;若所述目标文件不能修复为所述安全文件,则将所述目标文件修复为所述安全文件,发出所述目标文件携带病毒的提示信息。

第三方面,本发明的实施例还提供了一种电子设备,包括:

至少一个处理器、至少一个存储器、通信接口和总线;其中,

所述处理器、存储器、通信接口通过所述总线完成相互间的通信;

所述通信接口用于该电子设备和服务器的通信设备或者终端的通信设备之间的信息传输;

所述存储器存储有可被所述处理器执行的程序指令,所述处理器调用所述程序指令能够执行以上任一项所述的方法。

第四方面,本发明的实施例还提供了一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行以上任一项所述的方法。

本发明的实施例提供了一种病毒扫描的方法及装置,该方法在接收到对目标文件进行病毒扫描的目标指令信息后,对本地病毒库是否升级进行判断,若需要升级,则对本地病毒库进行升级后,运行本地查杀对目标文件进行扫描,得到目标文件是否携带病毒的目标扫描结果。该方法接收到目标文件后,即对本地病毒库是否需要升级进行判断,实现了对本地病毒库文件的及时更新,克服了对本地病毒库文件升级的滞后性,从而降低了对携带病毒的文件的漏检概率。

附图说明

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

图1是本发明一个实施例提供的病毒扫描的方法的流程示意图;

图2是本发明另一个实施例提供的代理服务器中本地查杀的病毒库和文件扫描引擎升级的过程示意图;

图3是本发明另一个实施例提供的病毒扫描的装置的结构框图;

图4是本发明另一个实施例提供的电子设备的结构框图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

图1是本实施例提供的一种病毒扫描的方法的流程示意图,参见图1,该方法包括:

101:获取对目标文件进行病毒扫描的指令信息;

102:根据最新的目标病毒库和本地病毒库判断是否升级本地病毒库,若是,将所述本地病毒库升级为所述目标病毒库;

103:运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果;

其中,所述本地病毒库为运行所述本地查杀调用的病毒库。

需要说明的是,本实施例提供的方法由服务器或终端(例如,手机或者电脑)执行,例如,由代理服务器(如nginx)执行。

目标文件可以是需要传输到其它设备(例如,终端或者服务器)的待传输的文件,也可以是存储在当前的服务器或者终端上的待检测的文件,本实施例对此不做限制。例如,服务器或者终端接收到该目标文件后,主动生成对目标文件进行病毒扫描的指令信息,或者,接收到对目标文件进行病毒扫描的指令信息。可理解的是,执行本实施例的方法为代理服务器,通常,代理服务器接收到由终端或者其它服务器发送的目标文件均为待传输的目标文件。而待检测的目标文件通常为存储在当前的服务器或者终端上的文件。

目标病毒库为最新更新的病毒库,可从专门对病毒库进行更新的服务器上得到目标病毒库。判断是否升级本地病毒库时,可以通过对比目标病毒库和本地病毒的版本号码确定,或者直接通过对比目标病毒库和本地病毒的病毒样本确定,本实施例对此不做具体限制。此外,根据将所述本地病毒库升级为所述目标病毒库,包括:下载所述目标病毒库,将所述本地病毒库替换为所述目标病毒库。

本发明的实施例提供了一种病毒扫描的方法,该方法在接收到对目标文件进行病毒扫描的目标指令信息后,对本地病毒库是否升级进行判断,若需要升级,则对本地病毒库进行升级后,运行本地查杀对目标文件进行扫描,得到目标文件是否携带病毒的目标扫描结果。该方法接收到目标文件后,即对本地病毒库是否需要升级进行判断,实现了对本地病毒库文件的及时更新,克服了对本地病毒库文件升级的滞后性,从而降低了对携带病毒的文件的漏检概率。

更进一步地,在上述实施例的基础上,所述运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果,包括:

运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第一扫描结果;

运行云查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第二扫描结果;

若所述第一扫描结果为所述目标文件携带病毒或所述第二扫描结果为所述目标文件携带病毒,则所述目标扫描结果为所述目标文件携带病毒;

若所述第一扫描结果为所述目标文件不携带病毒且所述第二扫描结果为所述目标文件不携带病毒,则所述目标扫描结果为所述目标文件不携带病毒。

需要说明的是,本实施例提供的方法中可以先执行本地查杀再执行云查杀,也可以先执行云查杀再执行本地查杀,本实施例不对两者的执行的先后顺序做具体限制。

进一步地,所述运行云查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的第二扫描结果,包括:

计算对应于所述目标文件的md5值或sha1值,将所述md5值或所述sha1值发送到与所述云查杀对应的服务器,若接收到对所述目标文件进行云查杀的反馈结果为所述目标文件携带病毒,则所述第二扫描结果为所述目标文件携带病毒,若接收到的所述反馈结果为所述目标文件不携带病毒,则所述第二扫描结果为所述目标文件不携带病毒。

其中,对目标文件进行云查杀时,通过md5算法计算该目标文件对应的md5值,或者通过安全哈希算法计算该目标文件对应的sha1值,然后将该md5值或sha1值发送到执行该云查杀对应的服务器。该服务器查找云查杀对应的病毒库中是否有该md5值或sha1值,若有,则向该代理服务器发送目标文件携带病毒的反馈结果,否则,向该代理服务器发送目标文件不携带病毒的反馈结果。

本发明的实施例提供了一种病毒扫描的方法,该方法既对目标文件进行本地查杀,又对目标文件进行云查杀,通过两者的组合对目标文件是否携带病毒进行检测,降低了对目标文件携带的病毒的误检和漏检的概率。

更进一步地,在上述各实施例的基础上,运行启发式查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带pe病毒的第三扫描结果,和/或,运行qex脚本查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带非pe病毒的第四扫描结果;

若所述第三扫描结果为所述目标文件携带pe病毒或所述第四扫描结果为所述目标文件携带非pe病毒,则所述第一扫描结果为所述目标文件携带病毒;

若所述第三扫描结果为所述目标文件不携带pe病毒且所述第四扫描结果为所述目标文件不携带非pe病毒,则所述第一扫描结果为所述目标文件不携带病毒;

其中,所述本地查杀为所述启发式查杀或所述qex脚本查杀。

需要说明的是,启发式查杀主要用于对pe病毒的扫描和处理,qex脚本查杀主要用于对非pe病毒的扫描和处理。

本实施例中,当仅运行启发式查杀时,若所述第三扫描结果为所述目标文件携带pe病毒,则所述第一扫描结果为所述目标文件携带病毒;若所述第三扫描结果为所述目标文件不携带pe病毒,则所述第一扫描结果为所述目标文件不携带病毒。

当仅运行qex脚本查杀时,若所述第四扫描结果为所述目标文件携带非pe病毒,则所述第一扫描结果为所述目标文件携带病毒;若所述第四扫描结果为所述目标文件不携带非pe病毒,则所述第一扫描结果为所述目标文件不携带病毒。

当既运行启发式查杀又运行qex脚本查杀时,只有当第三扫描结果为所述目标文件不携带pe病毒且所述第四扫描结果为所述目标文件不携带非pe病毒时,所述第一扫描结果为所述目标文件不携带病毒;第三扫描结果为所述目标文件携带pe病毒或所述第四扫描结果为所述目标文件携带非pe病毒,则所述目标文件携带病毒。

本发明的实施例提供了一种病毒扫描的方法,该方法针对本地的服务器或者终端上的更为具体的启发式查杀和qex脚本查杀,对目标文件中的是否携带病毒进行更为详细的检验。

更进一步地,在上述各实施例的基础上,所述根据目标病毒库和本地病毒库判断是否升级本地病毒库,包括:

获取所述目标病毒库的第一版本号码和所述本地病毒库的第二版本号码,若所述第一版本号码和所述第二版本号码不相同,则判定升级所述本地病毒库,若所述第一版本号码和所述第二版本号码相同,则不对所述本地病毒库进行升级;

需要说明的是,除了通过第一版本号码和第二版本号码来判断是否升级本地病毒库外,还可通过其它方法判断是否升级本地病毒库,例如:

获取所述目标病毒库对应的第一文件和所述本地病毒库对应的第二文件,若所述第一文件和所述第二文件不相同,则判定升级所述本地病毒库,若所述第一文件和所述第二文件相同,则不对所述本地病毒库进行升级。

本发明的实施例提供了一种病毒扫描的方法,该方法提供了判断是否升级病毒库的方法,由于版本号码获取方便,因此通过版本号码的对比可以对是否升级病毒库进行快速判断。

更进一步地,在上述各实施例的基础上,还包括:

若所述目标扫描结果为所述目标文件携带病毒,则判断所述目标文件是否能修复为安全文件;

若所述目标文件能修复为所述安全文件,则将所述目标文件修复为所述安全文件;

若所述目标文件不能修复为所述安全文件,则发出所述目标文件携带病毒的提示信息。

需要说明的是,检查携带病毒的目标文件是否能修复,以及对目标文件的修复,均可以由相应的软件来实现,本实施例对此不做具体限制。例如,该软件对目标文件中的病毒所在的位置进行检查,若该目标文件的文件头被病毒植入,则判定该目标文件不能修复。若病毒植入了目标文件中,并且删除该目标文件后不影响该目标文件的运行,则判定该目标文件能被修复。若判定该目标文件能被修复,则对该目标文件进行修复,得到修复后的安全文件。

当目标文件不能修复为安全文件,该代理服务器可以发出提示信息,以得到相应的工作人员关于如何处理该目标文件的指示后,对该目标文件进行相应的处理。第一提示信息可以通过预设的屏幕进行显示,也可以通过邮件后者短信的方式发送至相关的工作人员,本实施例对此不做具体限制。

本发明的实施例提供了一种病毒查杀的方法,该方法在检测到目标文件携带病毒后,一方面,及时对能修复的目标文件进行修复,另一方面,在无法对目标文件进行修复时,及时告知相关工作人员,保证本地的服务器或者终端上业务正常进行。

可理解的是,作为对目标文件进行本地查杀的病毒库和文件扫描引擎,本实施例以代理服务器为例,提供了代理服务器中本地查杀的病毒库和文件扫描引擎升级的过程。图2为本实施例提供的代理服务器中本地查杀的病毒库和文件扫描引擎升级的过程示意图,参见图2,在该代理服务器中包括文件扫描引擎、病毒库和引擎更新引擎。例如,代理服务器从云端服务器下载升级文件后,将本地病毒库文件和升级文件进行对比,判断是否需要对本地病毒库文件进行更新,并通过文件扫描引擎对目标文件进行扫描,判断该目标文件中是否携带了病毒。

其中,病毒库和引擎更新引擎用于根据更新规则对病毒库、扫描引擎进行更新。通过用户更新模块可以设定病毒库和引擎更新引擎获取新的病毒库或者引擎的时间或者触发条件。引擎、病毒库更新服务用于向病毒库和引擎更新引擎提供新的引擎或者病毒,以使得病毒库和引擎更新引擎获取新的引擎或者病毒后,对代理服务器的病毒库和引擎进行更新。

图3示出了本发明的实施例提供的一种病毒扫描的装置的结构框图,参见图3,本实施例提供的病毒扫描的装置包括接收模块301、升级模块302和扫描模块303,其中,

接收模块301,用于接收对目标文件进行病毒扫描的指令信息;

升级模块302,用于根据最新的目标病毒库和本地病毒库判断是否升级本地病毒库,若是,将所述本地病毒库升级为所述目标病毒库;

扫描模块303,用于运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果;

其中,所述本地病毒库为运行所述本地查杀调用的病毒库。

本实施例提供的病毒扫描的装置适用于上述实施例中提供的病毒扫描的方法,在此不再赘述。

本发明的实施例提供了一种病毒扫描的装置,该方法在接收到对目标文件进行病毒扫描的目标指令信息后,对本地病毒库是否升级进行判断,若需要升级,则对本地病毒库进行升级后,运行本地查杀对目标文件进行扫描,得到目标文件是否携带病毒的目标扫描结果。该装置接收到目标文件后,即对本地病毒库是否需要升级进行判断,实现了对本地病毒库文件的及时更新,克服了对本地病毒库文件升级的滞后性,从而降低了对携带病毒的文件的漏检概率。

第三方面,图4是示出本实施例提供的电子设备的结构框图。

参照图4,所述电子设备包括:处理器(processor)401、存储器(memory)402、通信接口(communicationsinterface)403和总线404;

其中,

所述处理器401、存储器402、通信接口403通过所述总线404完成相互间的通信;

所述通信接口403用于该电子设备和服务器的通信设备或者终端的通信设备之间的信息传输;

所述处理器401用于调用所述存储器402中的程序指令,以执行上述各方法实施例所提供的方法,例如包括:获取对目标文件进行病毒扫描的指令信息;根据最新的目标病毒库和本地病毒库判断是否升级所述本地病毒库,若是,将所述本地病毒库升级为所述目标病毒库;运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果;其中,所述本地病毒库为运行所述本地查杀调用的病毒库。

第四方面,本实施例提供一种非暂态计算机可读存储介质,所述非暂态计算机可读存储介质存储计算机指令,所述计算机指令使所述计算机执行上述各方法实施例所提供的方法,例如包括:获取对目标文件进行病毒扫描的指令信息;根据最新的目标病毒库和本地病毒库判断是否升级所述本地病毒库,若是,将所述本地病毒库升级为所述目标病毒库;运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果;其中,所述本地病毒库为运行所述本地查杀调用的病毒库。

本实施例公开一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的方法,例如,包括:获取对目标文件进行病毒扫描的指令信息;根据最新的目标病毒库和本地病毒库判断是否升级所述本地病毒库,若是,将所述本地病毒库升级为所述目标病毒库;运行本地查杀对所述目标文件进行病毒扫描,得到所述目标文件是否携带病毒的目标扫描结果;其中,所述本地病毒库为运行所述本地查杀调用的病毒库。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所描述的电子设备等实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上各实施例仅用以说明本发明的实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明的实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明的实施例各实施例技术方案的范围。

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