专利名称::文件修复方法和系统的制作方法
技术领域:
:本发明属于数据安全领域,具体地说,涉及一种文件修复方法和系统。
背景技术:
:“感染文件”是病毒和木马对用户数据进行破坏和窃取的一种常用手段。所谓“感染文件”可以指将恶意代码添加到正常程序的代码中,使正常程序变成被恶意代码感染了的感染文件,当该感染文件运行时,恶意代码也随正常代码同步运行,进而对用户的数据进行破坏,并不断传播恶意代码,形成更多感染文件,破坏更多的正常程序。进一步地,通过运行这些“被感染程序”窃取用户的数据如用户私密资料、密码或虚拟资产等一系列恶意行为,尤其是,通过感染与操作系统有关的系统文件,实现劫持网络、刷流量、钓鱼支付、盗号坐寸ο因此,为了确保数据安全,用户通常需要对感染文件进行修复,重新获得正常程序。现有技术中,修复的过程可简要概括为进行样本分析,收集恶意代码库,编写程序制作安全软件,使用安全软件从感染文件中清除恶意代码。使用安全软件清除恶意代码的过程可如下在客户端上扫描文件_>发现感染文件_>定位感染文件对应的代码中恶意代码所在位置_>根据定位的恶意代码如病毒或木马位置,仅将恶意代码部分删除。但是,恶意代码在与安全软件对抗的过程中,形成非常多样的变种,上述现有的方法处理感染文件通常无法实现有效地修复文件,具体存在如下缺点(I)几乎做不到完全修复,很多文件修复之后,还可能残存恶意代码;或者,很多文件修复之后,不能正常执行,个别的还可能会导致系统崩溃或应用软件无法正常使用;(2)无法修复文件时,比如文件被感染度超过80%,则基本无法将恶意代码从原正常文件代码中删除,被迫隔离或者删除感染文件;尤其,无法修复系统关键文件时,被迫保留与系统有关的感染文件。由上述分析可知,现有技术的修复过程需要制作安全软件,只有将安全软件在用户的客户端上运行才可以实现修复;另外,现有技术的修复无法彻底的修复感染文件。
发明内容有鉴于此,本申请所要解决的技术问题是提供了一种文件修复方法和系统,可以根据感染文件的属性信息从备份文件库中查询对应的备份文件,直接替换感染文件。为了解决上述技术问题,本申请提供了一种文件修复方法,包括客户端确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息;所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,所述查询结果包括所述服务器收集的至少一个备份文件的属性信息,所述备份文件与所述感染文件对应;所述客户端根据所述感染文件的属性信息,从所述查询结果中命中匹配的备份文件,并从所述服务器中提取并下载所述备份文件以替代所述感染文件。进一步地,所述感染文件的属性信息包括所述感染文件的对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息、所述感染文件对应的文件名信息、所述感染文件对应的浏览器属性信息、所述感染文件对应的补丁包信息、所述感染文件的时间戳。进一步地,所述客户端发送所述感染文件的属性信息到服务器中以进行查询并获取查询结果,包括发送所述感染文件的属性信息到服务器中配置的查询接口;通过所述服务器中配置的查询接口,在所述服务器中的备份文件信息库中进行查询并获取查询结果,所述备份文件信息库中存储有补丁包信息列表和浏览器数据数据包信息列表。进一步地,所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,包括根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件,如果是,则在所述服务器中的备份文件信息库中进行查询获取对应的查询结果;否则,返回查询失败的结果。进一步地,根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件,包括根据所述感染文件对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息中的签名信息来判断是否为与操作系统相关的可执行文件,所述感染文件的属性信息包括所述感染文件的对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息。进一步地,如果所述感染文件为与操作系统相关的可执行文件,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,包括根据所述感染文件的属性信息,从所述服务器的备份文件信息库中分别查询对应所述备份文件的补丁包信息列表和浏览器数据包信息列表;其中,所述备份文件的补丁包信息列表和浏览器数据包信息列表包括所述备份文件对应的文件名信息、所述备份文件对应的存放目录属性信息、所述备份文件运行的基本操作系统属性信息、所述备份文件对应的浏览器属性信息、所述备份文件对应的补丁包信息;其中,所述感染文件的属性信息包括所述感染文件对应的文件名信息、所述感染文件对应的存放目录属性信息、所述感染文件运行的基本操作系统属性信息、所述感染文件对应的浏览器属性信息、所述感染文件对应的补丁包信息。进一步地,如果在所述服务器的备份文件信息库中仅查询到对应所述备份文件的补丁包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,包括根据所述感染文件的时间戳与所述补丁包信息列表对应所述备份文件的时间戳,生成所述补丁包信息列表中列表目录的第一目录相关性权重,根据第一目录相关性权重确定所述补丁包信息列表对应所述备份文件与所述感染文件的对应性,以便在所述服务器进行查询并获取和下载对应的所述备份文件,所述感染文件的属性信息包括所述感染文件的时间戳。进一步地,所述客户端根据所述感染文件的属性信息,从所述查询结果中命中与自身相匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,包括根据所述第一目录相关性权重选择所述补丁包信息列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在所述服务器的备份补丁包中。进一步地,如果在所述服务器的备份文件信息库中仅查询到对应所述备份文件的浏览器数据包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,包括根据所述感染文件的时间戳与所述浏览器数据包信息列表对应所述备份文件的时间戳,生成所述浏览器数据包信息列表中列表目录的第二目录相关性权重,根据第二目录相关性权重确定所述浏览器数据包信息列表对应所述备份文件与所述感染文件的相关性,以便在所述服务器进行查询并获取和下载对应的所述备份文件。进一步地,所述客户端根据所述感染文件的属性信息,从所述查询结果中命中与自身相匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,包括根据所述第二目录相关性权重选择所述浏览器数据包信息列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在所述服务器的备份浏览器数据包中。进一步地,如果在所述服务器的备份文件信息库中均查询到对应所述备份文件的补丁包信息列表和浏览器数据包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,包括根据所述感染文件的时间戳与所述补丁包信息列表对应所述备份文件的时间戳,生成所述补丁包信息列表中列表目录的第一目录相关性权重并计算所述补丁包信息列表的第一列表相关性权重;根据所述感染文件的时间戳与所述浏览器数据包信息列表对应所述备份文件的时间戳,生成所述浏览器数据包信息列表中列表目录的第二目录相关性权重并计算所述浏览器数据包信息列表的第二列表相关性权重;根据所述补丁包信息列表的第一列表相关性权重和所述浏览器数据包信息列表的第二列表相关性权重,选择候选下载列表作为查询结果。进一步地,所述客户端根据所述感染文件的属性信息,从所述查询结果中命中匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,包括选择所述候选下载列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在补丁包和浏览器数据包中,所述备份补丁包和备份浏览器数据包存储在所述服务器的备份文件库中。进一步地,所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳等于所述感染文件的时间戳相等的列表目录;或者,所述对应的候选列表目录为所述候选下载列表中,所述备份文件的时间戳大于所述感染文件的时间戳的列表目录。进一步地,所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳等于所述感染文件的时间戳的列表目录,且根据文件的版本号判定所述候选列表目录对应的所述备份文件为正式版。进一步地,如果在所述服务器的备份文件信息库中均未查询到对应所述备份文件的补丁包信息列表和浏览器数据包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,包括获取存放所述备份文件原始数据的原始数据包;将所述服务器中所述备份文件的时间戳早于所述感染文件的时间戳的原始数据包作为查询结果,所述原始数据包存储在所述服务器的备份文件库中。进一步地,所述客户端根据所述感染文件的属性信息,从所述查询结果中命中与自身相匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,包括根据所述服务器中原始数据包中所述备份文件的时间戳早于所述感染文件的时间戳的原始数据包生成下载地址,根据该下载地址客户端从所述服务器下载所述备份文件以替换所述感染文件。为了解决上述技术问题,本申请还提供了一种文件修复系统,包括客户端和服务器,所述客户端用于确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息,并发送所述感染文件的属性信息到服务器进行查询并获取查询结果,所述查询结果包括所述服务器收集的至少一个备份文件的属性信息,所述备份文件与所述感染文件对应;所述客户端根据所述感染文件的属性信息,从所述查询结果中选取与匹配所述的备份文件,并从所述服务器中提取和下载以替代所述感染文件。进一步地,所述服务器包括查询接口,用于接收发送的所述感染文件的属性信息;备份文件信息库,用于保存备份文件的信息,以确定与所述感染文件匹配的备份文件。进一步地,所述服务器包括下载接口,用于根据从所述查询结果中选取的与自身相匹配的备份文件生成下载的链接地址;下载单元,用于根据所述链接地址从所述服务器的备份文件库中下载匹配的备份文件以替换所述感染文件。与现有的方案相比,本申请所获得的技术效果根据感染文件的属性信息从备份文件库中查询对应的备份文件,直接替换感染文件,从而避免了现有技术中的文件修复需要制作安全软件,以及无法彻底修复感染文件的缺陷。此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中图I为本发明实施例一的文件修复方法流程示意图;图2为本发明实施例二的文件修复方法流程示意图;图3为本发明实施例三的文件修复方法流程示意图;图4为本发明实施例四的文件修复方法流程示意图;图5为本发明仅从补丁包列表中查询到备份文件的一具体应用不意图;图6为本发明实施例文件修复系统的结构示意图。具体实施例方式以下将配合图式及实施例来详细说明本申请的实施方式,藉此对本申请如何应用技术手段来解决技术问题并达成技术功效的实现过程能充分理解并据以实施。如图I所示,为本发明实施例一的文件修复方法流程示意图,本实施例是针对只在所述服务器的备份文件信息库中查询到对应所述备份文件的补丁包信息列表的情况,具体地,该文件修复方法包括步骤101、客户端确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息;所述感染文件包括可执行文件,比如该可执行文件可以为windowsvista系统下定义的可执行文件。所述可执行文件包括可移植可执行文件(PortabIeExecutable,PE)、新可执行文件(NewExecutable,NE)或线性可执行文件(LinearExecutable,LE)。其中,可移植可执行文件PE包括DLL、EXE、FON、OCX、LIB和部分SYS文件,新可执行文件NE类型包括了.exe、.dll、.drv和.fon四种类型的文件,线性可执行文件LE包括vxd文件。步骤102、所述客户端发送所述感染文件的属性信息到服务器中配置的查询接口,根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件;如果是,则执行步骤103;否则,返回查询失败的结果;本实施例中,步骤102中判断是否为系统可执行文件可以具体通过这种方式来实现根据所述感染文件对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息中的签名信息来判断是否为与操作系统相关的可执行文件,所述感染文件的属性信息包括所述感染文件的对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息。步骤103、通过所述服务器中配置的查询接口在所述服务器中的备份文件信息库中,根据所述感染文件的属性信息从所述服务器的备份文件信息库中分别查询对应所述备份文件的补丁包信息列表和浏览器数据包信息列表;其中,由于感染文件可能为补丁包中的文件,也可能是浏览器数据中的文件,因此,为了提高查询的效率,所述备份文件信息库中存储有补丁包信息列表和浏览器数据信息列表,这样,在查询时,首先可以在这些数据包信息列表中查询是否有与感染文件匹配的备份文件的属性信息,比如对于windowsvista系统的补丁包和浏览器数据包每一版本都已明确的分类,因此,也便于建立这些数据包的信息列表;其中,所述备份文件的补丁包信息列表和浏览器数据包信息列表包括所述备份文件对应的文件名信息、所述备份文件对应的存放目录属性信息、所述备份文件运行的基本操作系统属性信息、所述备份文件对应的浏览器属性信息、所述备份文件对应的补丁包信息,这些信息可统称为所述备份文件的属性信息;其中,所述感染文件的属性信息包括所述感染文件对应的文件名信息、所述感染文件对应的存放目录属性信息、所述感染文件运行的基本操作系统属性信息、所述感染文件对应的浏览器属性信息、所述感染文件对应的补丁包信息。步骤104、如果在所述服务器的备份文件信息库中仅查询到对应所述备份文件的补丁包信息列表,将该补丁包信息列表作为查询结果,根据所述感染文件的时间戳与所述补丁包信息列表对应所述备份文件的时间戳,生成所述补丁包信息列表每一条列表目录的第一目录相关性权重,根据第一目录相关性权重确定所述补丁包信息列表对应所述备份文件与所述感染文件的对应性,以便在所述服务器进行查询并获取和下载对应的所述备份文件,所述感染文件的属性信息包括所述感染文件的时间戳;本实施例中,以时间戳作为感染文件与所述备份文件相关性的判断基准,比如,如果与所述感染文件的时间戳完全一致,则可以给所述补丁包信息列表中该列表目录赋以最高的第一目录相关性权重,而其他与所述感染文件的时间戳不一致的,可视时间戳先后赋以其他较小的第一目录相关性权重。步骤105、根据所述第一目录相关性权重选择所述补丁包信息列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在补丁包中。如前所述,与所述感染文件的时间戳完全一致,则可以给所述补丁包信息列表中该列表目录赋以最闻的第一目录相关性权重,将该最闻的第一目录相关性权重作为对应的候选列表目录,根据对应的候选列表目录生成对应的下载地址。本实施例中,如果存在时间戳相同的备份文件仅有一个,则所述对应的候选列表目录为所述感染文件的时间戳与所述备份文件的时间戳相等的列表目录,该列表目录具有最高的第一目录相关性权重。如果不存在时间戳相等的情况,则所述对应的候选列表目录为所述感染文件的时间戳小于所述备份文件的时间戳相等的列表目录,该列表目录具有最高的第一目录相关性权重,这种情况可能由于在客户端上打了最新的补丁包,而该最新补丁包及其相关信息并没有收集在服务器上。在另外一实施例中,如果存在时间戳相同的两个备份文件,则所述对应的候选列表目录为所述感染文件的时间戳与所述备份文件的时间戳相等的列表目录且根据所述备份文件的版本号判定为正式版本的所述备份文件。之所以要用备份文件的版本号,原因在于备份文件的测试版本也可能收集在服务器中,而通过备份文件的版本号就可以判断出所述备份文件是测试版还是正式版,从而只下载正式版的所述备份文件以替代感染文件。如图2所示,为本发明实施例二的文件修复方法流程示意图,本实施例是针对只在所述服务器的备份文件信息库中,查询到对应所述备份文件的浏览器数据包信息列表的情况,具体地,该文件修复方法包括步骤201、客户端确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息;该步骤类似于上述实施例一中的步骤101,在此不再赘述。步骤202、所述客户端发送所述感染文件的属性信息到服务器中配置的查询接口,根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件;如果是,则执行步骤203;否则,返回查询失败的结果;该步骤类似于上述实施例一中的步骤102,在此不再赘述。步骤203、通过所述服务器中配置的查询接口在所述服务器中的备份文件信息库中,根据所述感染文件的属性信息从所述服务器的备份文件信息库中分别查询对应所述备份文件的补丁包信息列表和浏览器数据包信息列表;该步骤类似于上述实施例一中的步骤103,在此不再赘述。步骤204、如果在所述服务器的备份文件信息库中仅查询到对应所述备份文件的浏览器数据包信息列表,根据所述感染文件的时间戳与所述浏览器数据包信息列表对应所述备份文件的时间戳,生成所述浏览器数据包信息列表中每一条列表目录的第二目录相关性权重,根据第二目录相关性权重确定所述浏览器数据包信息列表对应所述备份文件与所述感染文件的相关性,以便在所述服务器进行查询并获取和下载对应的所述备份文件,所述感染文件的属性信息包括所述感染文件的时间戳;类似上述实施例一中步骤104的判断方法,本实施例中,以时间戳作为感染文件与所述备份文件相关性的判断基准,比如,如果查询到的浏览器数据包信息列表中,与所述感染文件的时间戳完全一致,则可以给所述浏览器数据信息列表中该列表目录赋以最高的第一目录相关性权重,而其他与所述感染文件的时间戳不一致的,可视时间戳先后赋以其较小的第一目录相关性权重。步骤205、根据所述第二目录相关性权重选择所述浏览器数据包信息列表中对应的候选列表目录生成下载地址,客户端根据该下载地址从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在浏览器数据包中。如前所述,与所述感染文件的时间戳完全一致,则可以给所述补丁包信息列表中该列表目录赋以最闻的第一目录相关性权重,将该最闻的第一目录相关性权重作为对应的候选列表目录,根据对应的候选列表目录生成对应的下载地址。本实施例中,所述补丁包信息列表中,如果时间戳相同的备份文件仅有一个,则所述对应的候选列表目录为所述浏览器数据包信息列表中,对应所述备份文件的时间戳与所述感染文件的时间戳相同的列表目录,该列表目录具有最高的第一目录相关性权重。如果不存在时间戳相同的情况,则所述对应的候选列表目录为所述感染文件的时间戳小于所述备份文件的时间戳相等的列表目录,该列表目录具有最高的第一目录相关性权重,这种情况可能由于在客户端上打了最新的补丁包,而该最新补丁包及其相关信息并没有及时的收集在服务器上。·在另外一实施例中,如果存在时间戳相同的两个备份文件,则所述对应的候选列表目录为所述浏览器数据包信息列表中,对应所述备份文件的时间戳与所述感染文件的时间戳相同的列表目录,且根据所述备份文件的版本号判定该候选列表目录对应的所述备份文件为正式版。使用备份文件的版本号,原因在于备份文件的测试版本也可能收集在服务器中,而通过文件的版本号就可以判断出所述备份文件是测试版还是正式版,从而只下载正式版的所述备份文件以替代感染文件。如图3所示,为本发明实施例三的文件修复方法流程示意图,本实施例是针对在所述服务器的备份文件信息库中,均查询到对应所述备份文件的浏览器数据包信息列表和补丁包信息列表的情况,文件修复方法包括步骤301、客户端确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息;该步骤类似于上述实施例一中的步骤101,在此不再赘述。步骤302、所述客户端发送所述感染文件的属性信息到服务器中配置的查询接口,根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件;如果是,则执行步骤303;否则,返回查询失败的结果;该步骤类似于上述实施例一中的步骤102,在此不再赘述。本实施例中,步骤302中判断是否为与操作系统相关的可执行文件可以具体通过这种方式来实现根据所述感染文件对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息中的签名信息来判断是否为与操作系统相关的可执行文件,所述感染文件的属性信息包括所述感染文件的对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息。步骤303、通过所述服务器中配置的查询接口在所述服务器中的备份文件信息库中,根据所述感染文件的属性信息从所述服务器的备份文件信息库中分别查询对应所述备份文件的补丁包信息列表和浏览器数据包信息列表;该步骤类似于上述实施例一中的步骤103,在此不再赘述。步骤304、如果在所述服务器的备份文件信息库中均查询到对应所述备份文件的补丁包信息列表和浏览器数据包信息列表,则根据所述感染文件的时间戳与所述补丁包信息列表对应所述备份文件的时间戳,生成所述补丁包信息列表每一条列表目录的第一目录相关性权重并计算所述补丁包信息列表的第一列表相关性权重;步骤305、根据所述感染文件的时间戳与所述浏览器数据包信息列表对应所述备份文件的时间戳,生成所述浏览器数据包信息列表中每一条列表目录的第二目录相关性权重并计算所述浏览器数据包信息列表的第二列表相关性权重;步骤304和步骤305之间没有绝对的时序关系,这两个步骤可以任意一个在先执行而另外一个在后执行,或者两个同时执行即可。步骤306、根据所述补丁包信息列表的第一列表相关性权重和所述浏览器数据包信息列表的第二列表相关性权重,选择候选下载列表作为查询结果。由步骤304和305可知,在补丁包信息列表中和浏览器数据包信息列表中同时查询到存在备份文件的属性信息,即服务器上的备份文件库中备份文件对应的补丁包和浏览·器数据包中同时存在有可替换感染文件的备份文件。针对此种情况,为了从服务器中下载与感染文件最为匹配的备份文件,则需要根据每个数据包列表的相关性权重,即补丁包信息列表的第一列表相关性权重和浏览器数据包信息列表的第二列表相关性权重来综合判断,以确定是从服务器的备份文件库中选择补丁包中的备份文件还是浏览器信息包中的备份文件进行下载。例如,如果第一列表相关权重大于第二列表相关权重,则表明补丁包信息列表与感染文件相关性较大,而浏览器数据包信息与感染文件相关性较小。此时,以补丁包信息列表为候选下载列表,该候选下载列表作为查询结果。反之,则以浏览器数据包信息列表为候选下载列表,该候选下载列表作为查询结果。步骤307、选择所述候选下载列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在备份补丁包和备份浏览器数据包中,所述备份补丁包和备份浏览器数据包存储在所述服务器的备份文件库中,所述相关性包括所述第一目录相关性权重和所述第二目录相关性权重。本实施例中,对于候选下载列表来说,其可能包括多个列表目录,而每个列表目录都能对应到一个备份文件,因此,则所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳与所述感染文件的时间戳相同的列表目录;或者,如不存在时间戳相同的备份文件,则所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳大于所述感染文件的时间戳的列表目录。在另外一实施例中,如果存在时间戳相同的两个备份文件,则所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳与所述感染文件的时间戳相同的列表目录,且根据所述备份文件的版本号判定该候选列表目录对应的所述备份文件为正式版。通过版本号以区别出是测试版还是正式版,从而只下载正式版的所述备份文件以替代感染文件。如图4所示,为本发明实施例四的文件修复方法按流程图。本实施例是针对在所述服务器的备份文件信息库中,均未查询到对应所述备份文件的浏览器数据包信息列表和补丁包信息列表的情况,具体地,该文件修复方法包括步骤401、客户端确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息;该步骤类似于上述实施例一中的步骤101,在此不再赘述。步骤402、所述客户端发送所述感染文件的属性信息到服务器中配置的查询接口,根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件;如果是,则执行步骤403;否则,返回查询失败的结果;该步骤类似于上述实施例一中的步骤101,在此不再赘述。本实施例中,步骤402中判断是否为系统可执行文件可以具体通过这种方式来实现根据所述感染文件对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息中的签名信息来判断是否为与操作系统相关的可执行文件,所述感染文件的属性信息包括所述感染文件的对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息。步骤403、通过所述服务器中配置的查询接口在所述服务器中的备份文件信息库中,根据所述感染文件的属性信息从所述服务器的备份文件信息库中分别查询对应所述备份文件的补丁包信息列表和浏览器数据包信息列表;该步骤类似于上述实施例一中的步骤103,在此不再赘述。步骤404、如果在所述服务器的备份文件信息库中均未查询到对应所述备份文件的补丁包信息列表和浏览器数据包信息列表,则获取存放所述备份文件原始数据的原始数据包,并将所述服务器中所述备份文件的时间戳早于所述感染文件的时间戳的原始数据包作为查询结果,所述原始数据包存储在所述服务器的备份文件库中;步骤405、根据所述服务器中原始数据包中所述备份文件的时间戳早于所述感染文件的时间戳的原始数据包生成下载地址,根据该下载地址客户端从所述服务器下载所述备份文件以替换所述感染文件。本实施例中,对于原始数据包来说,如果存在时间戳相同的备份文件仅有一个,则所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳与所述感染文件的时间戳相等的列表目录;或者,所述对应的候选列表目录为所述候选下载列表中,所述备份文件的时间戳大于所述感染文件的时间戳的列表目录。在另外一实施例中,对于原始数据包来说,如果存在时间戳相同的两个备份文件,则所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳与所述感染文件的时间戳相同的列表目录,且根据所述备份文件的版本号判定该候选列表目录对应的所述备份文件为正式版。如图5所示,为本发明仅从补丁包列表中查询到备份文件的一具体应用示意图。客户端上system32存放目录下的mshtml.dll文件被感染形成感染文件,为了替换该感染文件mshtml.dll,客户端收集有关该感染文件mshtml.dll有关的属性信息,如感染文件mshtml.dll的文件名filenamemshtml.dll,反映该感染文件mshtml.dll运行的基本操作系统信息如版本号[osver=6.I.7600.256.I.O],感染文件mshtml.dll的存放目录信息[PATH=System32]并将这些与该感染文件mshtml.dll有关的属性信息发送到服务器的备份文件信息库中进行查询,如图3所示,为根据感染文件mshtml.dll有关的属性信息生成的查询结果,该查询结果以查询列表的形式呈现,共计有5条列表目录,这些列表目录都是候选下载列表目录,图5中第一列表示基本操作系统信息中的windowsvista签名信息,第二列表示对应有备份文件补丁包信息,每一个windowsvista签名信息对应一个列表目录中的补丁包信息;根据时间戳计算相关性权重的方法,得知图5中第4和5条列表目录中对应的时间戳20100810与感染文件mshtml.dll的时间戳完全一致。由此,可知,通过补丁包信息列表得知有两个候选下载列表目录,但是,通过版本号可知,第4条和5条列表目录中的版本号为“8.O.7600.16625”“8.O.7600.20745”,得知,第4条列表目录对应的备份文件为测试版,而第5条列表目录对应的备份文件为正式版。因此,通过综合时间戳和文件版本号得知第5条列表目录为对应的候选下载目录,根据该对应的候选候选下载目录PATCH_CN/win7/20100810/ffindows6.l-KB2183461-x86/x86_microsoft-windows-ie-htmlrendering—31bf3856ad364e35—8.0.7600.20745—none—2e889224137c3085。根据上述候选下载目录,生成下载地址,以下载可替换感染文件的备份文件mshtml.dllhttp://dsys.360.cn/PATCH_CN/win7/20100810/Windows6.1_ΚΒ2183461_χ86/x86_microsoft-windows-ie-htmlrendering_3Ibf3856ad364e35_8.0.7600.20745—none—2e889224137c3085/mshtml.dll.cab。如图6所示,为本发明实施例文件修复系统的结构示意图,该系统包括客户端601和服务器602,所述客户端601用于确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息,并发送所述感染文件的属性信息到服务器602进行查询并获取查询结果,所述查询结果包括所述服务器602收集的至少一个备份文件的属性信息,所述备份文件与所述感染文件对应;所述客户端601根据所述感染文件的属性信息,从所述查询结果中选取匹配的备份文件,并从所述服务器602中提取和下载以替代所述感染文件。本实施中,所述服务器602包括查询接口612,用于接收发送的所述感染文件的属性信息;备份文件信息库622,用于保存备份文件的信息,以确定与所述感染文件匹配的备份文件。本实施例中,所述服务器还可以包括下载接口632,用于根据从所述查询结果中选取的匹配的备份文件生成下载的链接地址;下载单元642,用于根据所述链接地址从所述服务器的备份文件库中下载对应的备份文件以替换所述感染文件。与现有的方案相比,本申请所获得的技术效果根据感染文件的属性信息从备份文件库中查询对应的备份文件,直接替换感染文件,从而避免了现有技术中的文件修复需要制作安全软件,以及无法彻底修复感染文件的缺陷。本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。上述说明示出并描述了本申请的若干优选实施例,但如前所述,应当理解本申请并非局限于本文所披露的形式,不应看作是对其他实施例的排除,而可用于各种其他组合、修改和环境,并能够在本文所述发明构想范围内,通过上述教导或相关领域的技术或知识进行改动。而本领域人员所进行的改动和变化不脱离本申请的精神和范围,则都应在本申请所附权利要求的保护范围内。·权利要求1.一种文件修复方法,其特征在于,客户端确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息;所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,所述查询结果包括所述服务器收集的至少一个备份文件的属性信息,所述备份文件与所述感染文件对应;所述客户端根据所述感染文件的属性信息,从所述查询结果中命中匹配的备份文件,并从所述服务器中提取并下载所述备份文件以替代所述感染文件。2.根据权利要求I所述的方法,其特征在于,所述感染文件的属性信息包括所述感染文件的对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息、所述感染文件对应的文件名信息、所述感染文件对应的浏览器属性信息、所述感染文件对应的补丁包信息、所述感染文件的时间戳。3.根据权利要求I或2所述的方法,其特征在于,所述客户端发送所述感染文件的属性信息到服务器中以进行查询并获取查询结果,进一步包括发送所述感染文件的属性信息到服务器中配置的查询接口;通过所述服务器中配置的查询接口,在所述服务器中的备份文件信息库中进行查询并获取查询结果,所述备份文件信息库中存储有补丁包信息列表和浏览器数据数据包信息列表。4.根据权利要求1-3中任一项所述的方法,其特征在于,所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,进一步包括根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件,如果是,则在所述服务器中的备份文件信息库中进行查询获取对应的查询结果;否则,返回查询失败的结果。5.根据权利要求1-4中任一项所述的方法,其特征在于,根据所述感染文件的属性信息判断所述感染文件是否为与操作系统相关的可执行文件,进一步包括根据所述感染文件对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息中的签名信息来判断是否为与操作系统相关的可执行文件,所述感染文件的属性信息包括所述感染文件的对应的存放目录属性信息和所述感染文件运行的基本操作系统属性信息。6.根据权利要求1-5中任一项所述的方法,其特征在于,如果所述感染文件为与操作系统相关的可执行文件,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,进一步包括根据所述感染文件的属性信息,从所述服务器的备份文件信息库中分别查询对应所述备份文件的补丁包信息列表和浏览器数据包信息列表;其中,所述备份文件的补丁包信息列表和浏览器数据包信息列表包括所述备份文件对应的文件名信息、所述备份文件对应的存放目录属性信息、所述备份文件运行的基本操作系统属性信息、所述备份文件对应的浏览器属性信息、所述备份文件对应的补丁包信息;其中,所述感染文件的属性信息包括所述感染文件对应的文件名信息、所述感染文件对应的存放目录属性信息、所述感染文件运行的基本操作系统属性信息、所述感染文件对应的浏览器属性信息、所述感染文件对应的补丁包信息。7.根据权利要求1-6中任一项所述的方法,其特征在于,如果在所述服务器的备份文件信息库中仅查询到对应所述备份文件的补丁包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,进一步包括根据所述感染文件的时间戳与所述补丁包信息列表对应所述备份文件的时间戳,生成所述补丁包信息列表中列表目录的第一目录相关性权重,根据第一目录相关性权重确定所述补丁包信息列表对应所述备份文件与所述感染文件的对应性,以便在所述服务器进行查询并获取和下载对应的所述备份文件,所述感染文件的属性信息包括所述感染文件的时间戳。8.根据权利要求1-7中任一项所述的方法,其特征在于,所述客户端根据所述感染文件v的属性信息,从所述查询结果中命中与自身相匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,进一步包括根据所述第一目录相关性权重选择所述补丁包信息列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在所述服务器的备份补丁包中。9.根据权利要求1-8中任一项所述的方法,其特征在于,如果在所述服务器的备份文件信息库中仅查询到对应所述备份文件的浏览器数据包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,进一步包括根据所述感染文件的时间戳与所述浏览器数据包信息列表对应所述备份文件的时间戳,生成所述浏览器数据包信息列表中列表目录的第二目录相关性权重,根据第二目录相关性权重确定所述浏览器数据包信息列表对应所述备份文件与所述感染文件的相关性,以便在所述服务器进行查询并获取和下载对应的所述备份文件。10.根据权利要求1-9中任一项所述的方法,其特征在于,所述客户端根据所述感染文件的属性信息,从所述查询结果中命中与自身相匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,进一步包括根据所述第二目录相关性权重选择所述浏览器数据包信息列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在所述服务器的备份浏览器数据包中。11.根据权利要求1-10中任一项所述的方法,其特征在于,如果在所述服务器的备份v文件信息库中均查询到对应所述备份文件的补丁包信息列表和浏览器数据包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,进一步包括根据所述感染文件的时间戳与所述补丁包信息列表对应所述备份文件的时间戳,生成所述补丁包信息列表中列表目录的第一目录相关性权重并计算所述补丁包信息列表的第一列表相关性权重;根据所述感染文件的时间戳与所述浏览器数据包信息列表对应所述备份文件的时间戳,生成所述浏览器数据包信息列表中列表目录的第二目录相关性权重并计算所述浏览器数据包信息列表的第二列表相关性权重;根据所述补丁包信息列表的第一列表相关性权重和所述浏览器数据包信息列表的第二列表相关性权重,选择候选下载列表作为查询结果。12.根据权利要求1-11中任一项所述的方法,其特征在于,所述客户端根据所述感染文件的属性信息,从所述查询结果中命中匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,进一步包括选择所述候选下载列表中对应的候选列表目录生成下载地址,根据该下载地址客户端从所述服务器下载对应的候选列表目录对应的所述备份文件,对应的候选列表目录对应的所述备份文件存放在补丁包和浏览器数据包中,所述备份补丁包和备份浏览器数据包存储在所述服务器的备份文件库中。13.根据权利要求1-12中任一项所述的方法,其特征在于,所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳等于所述感染文件的时间戳相等的列表目录;或者,所述对应的候选列表目录为所述候选下载列表中,所述备份文件的时间戳大于所述感染文件的时间戳的列表目录。14.根据权利要求1-13中任一项所述的方法,其特征在于,所述对应的候选列表目录为所述候选下载列表中,对应所述备份文件的时间戳等于所述感染文件的时间戳的列表目录,且根据文件的版本号判定所述候选列表目录对应的所述备份文件为正式版。15.根据权利要求1-14中任一项所述的方法,其特征在于,如果在所述服务器的备份文件信息库中均未查询到对应所述备份文件的补丁包信息列表和浏览器数据包信息列表,则所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,进一步包括获取存放所述备份文件原始数据的原始数据包;将所述服务器中所述备份文件的时间戳早于所述感染文件的时间戳的原始数据包作为查询结果,所述原始数据包存储在所述服务器的备份文件库中。16.根据权利要求1-15中任一项所述的方法,其特征在于,所述客户端根据所述感染文件的属性信息,从所述查询结果中命中与自身相匹配的备份文件,并从所述服务器中下载备份文件以替代所述感染文件,进一步包括根据所述服务器中原始数据包中所述备份文件的时间戳早于所述感染文件的时间戳的原始数据包生成下载地址,根据该下载地址客户端从所述服务器下载所述备份文件以替换所述感染文件。17.一种文件修复系统,其特征在于,包括客户端和服务器,所述客户端用于确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息,并发送所述感染文件的属性信息到服务器进行查询并获取查询结果,所述查询结果包括所述服务器收集的至少一个备份文件的属性信息,所述备份文件与所述感染文件对应;所述客户端根据所述感染文件的属性信息,从所述查询结果中选取与匹配所述的备份文件,并从所述服务器中提取和下载以替代所述感染文件。18.根据权利要求17所述的系统,其特征在于,所述服务器包括查询接口,用于接收发送的所述感染文件的属性信息;备份文件信息库,用于保存备份文件的信息,以确定与所述感染文件自身相匹配的备份文件。19.根据权利要求17或18中任一项所述的系统,其特征在于,所述服务器包括下载接口,用于根据从所述查询结果中选取的与自身相匹配的备份文件生成下载的链接地址;下载单元,用于根据所述链接地址从所述服务器的备份文件库中下载匹配的备份文件以替换所述感染文件。全文摘要本申请公开了一种文件修复方法和系统,该方法包括一种文件修复方法,包括客户端确定被恶意代码感染形成的感染文件,并获取所述感染文件的属性信息;所述客户端发送所述感染文件的属性信息到服务器进行查询并获取查询结果,所述查询结果包括所述服务器收集的至少一个备份文件的属性信息,所述备份文件与所述感染文件对应;所述客户端根据所述感染文件的属性信息,从所述查询结果中命中匹配的备份文件,并从所述服务器中提取并下载所述备份文件以替代所述感染文件。本发明可以根据感染文件的属性信息从备份文件库中查询对应的备份文件,直接替换感染文件。文档编号G06F11/14GK102902923SQ20121037552公开日2013年1月30日申请日期2012年9月29日优先权日2012年9月29日发明者蒙杭州,刘绪平,江爱军申请人:北京奇虎科技有限公司,奇智软件(北京)有限公司