一种宏病毒查杀的方法和装置的制作方法

文档序号:6403015阅读:358来源:国知局
专利名称:一种宏病毒查杀的方法和装置的制作方法
技术领域
本发明涉及数据安全技术领域,具体涉及一种宏病毒查杀的方法和装置。
背景技术
随着计算机的普及和移动互联网的发展,网络信息时代已经来临。病毒作为信息的一种形式,具有繁殖、感染、破坏等特性,威胁着用户的信息安全。计算机文档,即WORD,EXCEL等文字编辑软件产生的文件,被人们广泛使用,而宏病毒作为专用于破坏计算机文档信息安全的新型病毒,逐渐走进人们的视线。其中,使用宏语言编写的宏病毒主要作用于计算机文档的宏代码中,威胁着计算机文档的安全。现有技术中,通过对计算机文档的全文搜索,查询宏病毒的存在,首先,获取宏病毒的特征代码,其次,用获取的宏病毒特征代码与计算机文档的全部代码进行匹配,直到找到与该特征代码相同的代码段,即可以认为该计算机文档感染了宏病毒。同时,在确定了计算机文档已经感染宏病毒的情况下,只是简单的将被感染的计算机文档删除。现有技术的全文搜索宏病毒的方法,忽略了宏病毒只作用于计算机文档的宏代码中的特性,无针对性的宏病毒搜索方法,盲目扩大了搜索范围,无疑大大降低了宏病毒的搜索效率。同时,删除被感染的计算机文档容易造成信息的丢失。

发明内容
本发明提供了一种宏病毒查杀的方法和装置,只针对计算机文档的宏代码部分进行宏病毒的查杀,大大提高宏病毒的搜索效率。同时,将被感染的计算机文档中的宏病毒信息删除,使得计算机文档中的原信息被完好保存,防止信息的丢失。本发明提供一种·宏病毒查杀的方法,所述方法包括:获取待查文档的数据流;在所述数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,如果是,则将所述宏病毒文档转化成无毒文档。优选地,所述判断所述待查文档是否为宏病毒文档之前,还包括:预设宏病毒特征组,所述宏病毒特征组包括至少一个宏病毒特征。优选地,所述判断所述待查文档是否为宏病毒文档,包括:判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征。优选地,所述判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征,包括:在所述待查文档包括宏子流的情况下,判断所述宏子流中是否包括所述宏病毒特征组中的任一宏病毒特征;在所述待查文档不包括宏子流或者所述宏子流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括脚本流,如果是,则判断所述脚本流是否包括所述宏病毒特征组中的任一宏病毒特征;
或者,在所述待查文档包括脚本流的情况下,判断所述脚本流中是否包括所述宏病毒特征组中的任一宏病毒特征;在所述待查文档不包括脚本流或者所述脚本流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括宏子流,如果是,则判断所述宏子流是否包括所述宏病毒特征组中的任一宏病毒特征。优选地,所述方法还包括:在所述数据流中不存在宏标识的情况下,将所述待查文档确定为无毒文档。优选地,所述将所述宏病毒文档转化成无毒文档,包括:删除所述宏病毒文档中的宏信息,所述宏信息包括宏子流和\或脚本流,以及删除所述宏病毒文档中的宏标识;将所述宏病毒文档确定为无毒文档。本发明还提供一种宏病毒查杀的装置,所述装置包括:第一获取模块,用于获取待查文档的数据流;第一判断模块,用于在所述数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档;转化模块,用于在所 述第一判断模块的结果为是时,将所述宏病毒文档转化成无
毒文档。优选地,所述装置还包括:预设模块,用于预设宏病毒特征组,所述宏病毒特征组包括至少一个宏病毒特征。优选地,所述第一判断模块具体用于:在所述数据流中存在宏标识的情况下,判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征。优选地,所述第一判断模块,包括:第一判断子模块,用于在所述待查文档包括宏子流的情况下,判断所述宏子流中是否包括所述宏病毒特征组中的任一宏病毒特征;第二判断子模块,用于在所述待查文档不包括宏子流或者所述宏子流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括脚本流;第三判断子模块,用于在所述第二判断子模块的结果为是时,判断所述脚本流是否包括所述宏病毒特征组中的任一宏病毒特征;或者,第四判断子模块,用于在所述待查文档包括脚本流的情况下,判断所述脚本流中是否包括所述宏病毒特征组中的任一宏病毒特征;第五判断子模块,用于在所述待查文档不包括脚本流或者所述脚本流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括宏子流第六判断子模块,用于在所述第五判断子模块的结果为是时,判断所述宏子流是否包括所述宏病毒特征组中的任一宏病毒特征。优选地,所述装置还包括:确定模块,用于在所述数据流中不存在宏标识的情况下,将所述待查文档确定为无毒文档。优选地,所述转化模块,包括:第一删除子模块,用于删除所述宏病毒文档中的宏信息,所述宏信息包括宏子流和\或脚本流;第二删除子模块,用于删除所述宏病毒文档中的宏标识;确定子模块,用于将所述宏病毒文档确定为无毒文档。本发明首先获取待查文档的数据流,其次,通过判断获取的数据流中是否存在宏标识,确定是否进一步搜索宏病毒,在数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,最后,将宏病毒文档转化成无毒文档。本发明只针对计算机文档的宏代码部分进行宏病毒的查杀,大大提高宏病毒的搜索效率。同时,将被感染的计算机文档中的宏病毒信息删除,使得原计算机文档中的信息被完好保存,防止信息的丢失。进一步的,在数据流中不存在宏标识的情况下,可以确定待查文档为无毒文档,与现有技术中通过搜索全文确定无病毒特征代码的方法确定无毒文档的方法相比,本发明提高了确定计算机文档无宏病毒的效率。进一步的,本发明首先判断待查文档中是否包括宏子流和\或脚本流,其次针对宏子流和\或脚本流进行病毒特征的匹配的方法,确定宏病毒文档,与现有技术相比,本发明针对宏子流和\或脚本流搜索宏病毒的方法更有针对性,同时也提高了搜索宏病毒的效率。更进一步的,本发明通过将宏病毒文档中宏信息和宏标识删除的方法,实现了宏病毒文档转化为无毒文档,与现有 技术的直接删除宏病毒文档的方法相比,本发明有效防止了原文档信息的丢失。


为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明实施例一的宏病毒查杀的方法流程图;图2为本发明实施例一的将宏病毒文档转化成无毒文档的方法流程图;图3为本发明实施例二的宏病毒查杀的方法流程图;图4为本发明实施例二的判断待查文档是否包括宏病毒特征组中的任一宏病毒特征的方法之一的流程图;图5为本发明实施例二的判断待查文档是否包括宏病毒特征组中的任一宏病毒特征的方法之一的流程图;图6为本发明实施例三的宏病毒查杀的装置结构图;图7为本发明实施例三的所述第一判断模块602的结构图之一;图8为本发明实施例三的所述第一判断模块602的结构图之一;图9为本发明实施例三提供的终端结构示意图。
具体实施例方式下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。实施例一、本发明实施例是针对现有技术中宏病毒的搜索效率低以及直接删除感染宏病毒的文档导致的造成信息丢失的问题,提出通过获取待查文档的数据流判断待查文档中是否包括宏标识,进而确定待查文档中是否包括宏病毒,最终,在待查文档中包括宏病毒的情况下,通过删除待查文档中的宏信息达到宏病毒查杀的目的,从而提高宏病毒的搜索效率,也解决了查杀宏病毒过程中的文档信息丢失的问题。参考图1,图1为本实施例提供的宏病毒查杀的方法流程图,具体包括:步骤101、获取待查文档的数据流。本实施例中,在对待查文档进行宏病毒的查杀之前,首先将待查文档解析成数据流的形式。其中,数据流为存储待查文档中的原始数据的结构。步骤102、在所述数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,如果是,则进入步骤103。本实施例中,首先判断获取的数据流中是否存在宏标识,如果存在,则继续判断待查文档是否为宏病毒文档,其中,在该待查文档为宏病毒文档的情况下,进入步骤103。如果数据流中不存在宏标识,则说明该待查文档为无毒文档,也就是说,待查文档中不存在宏标识,即证明该待查文档中没有宏病毒。其中,宏标识用于标识待查文档中是否存在可执行的宏代码,也就是说,如果待查文档中不存在宏标识,待查文档中也就不存在可执行的宏代码,由于宏病毒也是由宏代码编写而成的,所以,可以理解为,不存在宏标识的待查文档也就不存在可执行的宏病毒,对于不可执行的宏病毒,其对待查文档是没有破坏作用的。步骤103、将所述宏病毒文档转化成无毒文档。本实施例中,确定该待查文档为宏病毒文档后,将该宏病毒文档转化成无毒文档。其中,宏病毒文档表示感染宏病毒的文档,无毒文档表示未感染宏病毒的文档。在一优选实施例中,参考图2,图2为将宏病毒文档转化成无毒文档的方法流程图,所述方法可以包括:步骤201、删除所述宏病毒文档中的宏信息,所述宏信息包括宏子流和\或脚本流。

本实施例中,在待查文档被确定为宏病毒文档后,删除宏病毒文档中的宏信息,宏信息包括宏子流和\或脚本流。其中宏子流可以通过数据流中的子流属性目录获取,其中,子流属性目录用于存储数据流包含的各个子流的属性,由于宏子流具有特定的属性,可以根据宏子流的属性在子流属性目录中查询数据流中是否存在宏子流,值得注意的是,数据流包括宏子流,而脚本流可以通过脚本流的名称获取。实际操作中,判断该宏病毒文档中是否包括宏子流和\或脚本流,如果存在则将其删除。具体的,可以首先判断该宏病毒文档中是否包括宏子流,如果存在,将该宏子流删除,其次,判断该宏病毒文档中是否包括脚本流,如果存在,将该脚本流也删除;也可以,首先判断脚本流是否存在,其次判断宏子流是否存在,并将宏子流和脚本流删除;还可以同时判断宏子流和脚本流是否存在于待查文档中,如果存在,将存在的宏子流和\或脚本流删除。值得注意的是,宏子流和脚本流的判断顺序不受限制,同时宏子流和脚本流的判断过程不会相互影响。步骤202、删除所述宏病毒文档中的宏标识。本实施例中,在待查文档被确定为宏病毒文档后,将宏病毒文档中的宏标识删除。在确定待查文档为宏病毒文档的情况下,删除宏标识,以去除宏病毒代码的执行条件。值得注意的是,步骤201和步骤202的执行顺序不受限制,也可以同时执行步骤201和步骤202。步骤203、将所述宏病毒文档确定为无毒文档。本实施例中,将删除宏信息和宏标识的宏病毒文件确定为无毒文件,可以理解为,在感染宏病毒的待查文档中的宏信息和宏标识被删除后,该感染宏病毒的待查文档中的宏病毒已被杀,也就是说,此时的待查文档中不存在宏病毒,同时可以正常执行。本实施例中,首先获取待查文档的数据流,其次,通过判断获取的数据流中是否存在宏标识,确定是否进一步搜索宏病毒,在数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,最后,将宏病毒文档转化成无毒文档。本发明只针对计算机文档的宏代码部分进行宏病毒的查杀,大大提高宏病毒的搜索效率。同时,将被感染的计算机文档中的宏病毒信息删除,使得原计算机文档中的信息被完好保存,防止信息的丢失。进一步的,在数据流中不存在宏标识的情况下,可以确定待查文档为无毒文档,与现有技术中通过搜索全文确定无病毒特征代码的方法确定无毒文档的方法相比,本发明提高了确定计算机文档无宏病毒的效率。实施例二、参考图3,图3为本实施例提供的宏病毒查杀的方法流程图,具体可以包括:步骤301、预设宏病毒特征组,所述宏病毒特征组包括至少一个宏病毒特征。本实施例中,预先设定宏病毒特征组,其中,宏病毒特征组包括至少一个宏病毒特征,宏病毒特征表示宏病毒区别于其它类型病毒的特征,同时宏病毒种类也较多,不同种类的宏病毒的特征也不同。也就是说,根据宏病毒特征能确定一种类型的宏病毒。步骤302、获取待查文档的数据流。本实施例中的步骤302与实施例一中的步骤101相同,在此不再赘述。步骤303、判断所述数据流中是否存在宏标识,如果否,则进入步骤304,如果是,则进入步骤305。本实施例中,首先判断获取的数据流中是否包括宏标识,如果是,进入步骤304,否贝丨J,进入步骤305。

其中,查询宏标识的方式不受本实施例的限制。一般情况下,宏标识位于待查文档的前部,所以,查询宏标识一般只需要遍历到待查文档的前部即可获得,不需要如现有技术遍历全文的方法。步骤304、将所述待查文档确定为无毒文档。本实施例中,在获取的数据流中不存在宏标识的情况下,可以将待查文档确定为无毒文档。可以理解为,待查文档中不存在宏标识,则证明该待查文档中没有宏病毒,事实上是不存在对待查文档造成破坏性的可执行宏病毒。步骤305、判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征,如果是,则进入步骤306。本实施例中,在确定待查文档中包括宏标识后,判断该待查文档是否包括宏病毒特征组中的任一宏病毒特征,如果是,则进入步骤306。参考图4,图4为判断待查文档是否包括宏病毒特征组中的任一宏病毒特征的方法之一的流程图,具体包括:步骤401、判断所述待查文档是否包括宏子流,如果是,则进入步骤402,如果否,则进入步骤403。本实施例中,在待查文档包括宏子流时,进入步骤402 ;否则,在待查文档中不包括宏子流时,进入步骤403。实际操作中,数据流包括宏子流,数据流中存在包含各个子流属性的目录,由于宏子流具有特定的属性,所以,通过查询数据流中的属性目录可以查询该待查文档中是否包括宏子流。具体的,对于如何查询待查文档中是否包括宏子流的过程不受本实施例的限制。步骤402、判断所述宏子 流中是否包括所述宏病毒特征组中的任一宏病毒特征,如果否,则进入步骤403。本实施例中,在待查文档中包括宏子流的情况下,判断宏子流中是否包括宏病毒特征组中的任一宏病毒特征,其中宏病毒特征可以包含一段特定的宏病毒代码。如果宏子流中包括宏病毒特征组中的任一宏病毒特征,则进入步骤306,否则,进入步骤403。步骤403、判断所述待查文档是否包括脚本流,如果是,则进入步骤404。本实施例中,在待查文档不包括宏子流或者宏子流中不包括宏病毒特征组中的任一宏病毒特征的情况下,判断该待查文档是否包括脚本流,如果是,则进入步骤306,如果否,则证明该待查文档为无毒文档。实际操作中,脚本流具有特定的名称,例如_VBA_PROJECT_CUR,可以通过查询脚本流名称确定该待查文档是否包括脚本流。具体的,对于如何查询待查文档中是否包括脚本流的过程不受本实施例的限制。步骤404、判断所述脚本流是否包括所述宏病毒特征组中的任一宏病毒特征。本实施例中,在待查文档中包括脚本流的情况下,判断脚本流中是否包括宏病毒特征组中的任一宏病毒特征,如果包括,则进入步骤306,否则,证明该待查文档为无毒文档。实际操作中,将脚本流中的代码与宏病毒特征组中的宏病毒特征进行匹配,在脚本流中存在任一宏病毒特征的情况下,该待查文档为宏病毒文档,否则,该待查文档为无毒文档。参考图5,图5为判断待查文档是否包括宏病毒特征组中的任一宏病毒特征的方法之一的流程图,具体包括:步骤501、判断所述待查文档是否包括脚本流,如果是,则进入步骤502,如果否,则进入步骤503。
步骤502、判断所述脚本流中是否包括所述宏病毒特征组中的任一宏病毒特征,如果否,则进入步骤503 ;步骤503、判断所述待查文档是否包括宏子流,如果是,则进入步骤504。步骤504、判断所述宏子流是否包括所述宏病毒特征组中的任一宏病毒特征。上述判断待查文档是否包括宏病毒特征组中的任一宏病毒特征的方法与图4的方法的区别仅在于,先判断待查文档包括脚本流,还是先判断待查文档包括宏子流。所以,具体步骤与图4中的步骤描述相似,在此不再赘述。步骤306、将所述宏病毒文档转化成无毒文档。本实施例中的步骤306与实施例一中的步骤103相同,此处同样不再赘述。本实施例中,预先设置宏病毒特征组,包括至少一个宏病毒特征,其次,通过判断获取的数据流中是否存在宏标识,确定是否进一步搜索宏病毒,在数据流中存在宏标识的情况下,判断所述待查文档是否包括宏子流和脚本流,进而判断宏子流、脚本流中是否包含宏病毒特征组中的任一宏病毒特征,进而确定待查文档为宏病毒文档或者无毒文档。与现有技术相比,本实施例中针对宏子流和\或脚本流进行病毒特征的匹配方法更有针对性,提高了搜索宏病毒的效率。实施例三、本发明实施例将从宏病毒查杀装置的角度进行描述,该宏病毒查杀的装置具体可以集成在客户端中,该客户端可以装载在终端中,该终端具体可以为智能手机、平板电脑、电子书阅读器、MP3 (Moving Picture Experts Group Audio Layer III,动态影像专家压缩标准音频层面 3)播放器、MP4 (Moving Picture Experts Group Audio Layer IV,动态影像专家压缩标准音频层面3)播放器、膝上型便携计算机和台式计算机等等。参考图6,图6为本实施例提供的宏病毒查杀的装置结构图,具体包括:第一获取模块601,用于获取待查文档的数据流;第一判断模块602,用于在所述数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档;所述第一判断模块602,具体用于在所述数据流中存在宏标识的情况下,判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征。参考图7,图7为所述第一判断模块602的结构图之一,具体可以包括:第一判断子模块701,用于在所述待查文档包括宏子流的情况下,判断所述宏子流中是否包括所述宏病毒特征组中的任一宏病毒特征;第二判断子模块702,用于在所述待查文档不包括宏子流或者所述宏子流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括脚本流;第三判断子模块703,用于在所述第二判断子模块的结果为是时,判断所述脚本流是否包括所述宏病毒特征组中的任一宏病毒特征;参考图8,图8为所述第一判断模块602的结构图之一,具体可以包括:第四判断子模块801,用于在所述待查文档包括脚本流的情况下,判断所述脚本流中是否包括所述宏病毒特征组中的任一宏病毒特征;第五判断子模块802,用于在所 述待查文档不包括脚本流或者所述脚本流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括宏子流。
第六判断子模块803,用于在所述第五判断子模块的结果为是时,判断所述宏子流是否包括所述宏病毒特征组中的任一宏病毒特征。转化模块603,用于在所述第一判断模块的结果为是时,将所述宏病毒文档转化成
无毒文档。所述转化模块603,可以包括:第一删除子模块,用于删除所述宏病毒文档中的宏信息,所述宏信息包括宏子流和\或脚本流;第二删除子模块,用于删除所述宏病毒文档中的宏标识;确定子模块,用于将所述宏病毒文档确定为无毒文档。所述装置还可以包括:预设模块,用于预设宏病毒特征组,所述宏病毒特征组包括至少一个宏病毒特征。确定模块,用于在所述数据流中不存在宏标识的情况下,将所述待查文档确定为无毒文档。本发明实施例还提供了一种终端,如图9所示,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明实施例方法部分。该终端可以包括手机、平板电脑、PDA (Personal Digital Assistant,个人数字助理)、POS (Point ofSales,销售终端)、车载电脑等任意终端设备,以终端为手机为例:图9示出的是与本发明实施例提供的终端相关的手机的部分结构的框图。参考图9,手机包括:射频(Radio Frequency, RF)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960、无线保真(wireless fidelity,WiFi)模块970、处理器980、以及电源990等部件。本领域技术人员可以理解,图9中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。下面结合图9对手机的各个构成部件进行具体的介绍:RF电路910可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器980处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier, LNA)、双工器等。此外,RF电路910还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(Global System of Mobile communication, GSM)、通用分组无线服务(General PacketRadio Service,GPRS)、码分多址(Code Division Multiple Access, CDMA)、宽带码分多址(Wideband Code Division Multiple Access, WCDMA)、长期演进(Long Term Evolution,LTE))、电子邮件、短消息服务(Short Messaging Service, SMS)等。存储器920可用于存储软件程序以及模块,处理器980通过运行存储在存储器920的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器920可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、 电话本等)等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
输入单元930可用于接收输入的数字或字符信息,以及产生与手机900的用户设置以及功能控制有关的键信号输入。具体地,输入单元930可包括触控面板931以及其他输入设备932。触控面板931,也称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板931上或在触控面板931附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板931可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器980,并能接收处理器980发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板931。除了触控面板931,输入单元930还可以包括其他输入设备932。具体地,其他输入设备932可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。显示单元940可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元940可包括显示面板941,可选的,可以采用液晶显示器(Liquid CrystalDisplay, IXD)、有机发光二极管(Organic Light-Emitting Diode, 0LED)等形式来配置显示面板941。进一步的,触控面板931可覆盖显示面板941,当触控面板931检测到在其上或附近的触摸操作后,传送给处理器980以确定触摸事件的类型,随后处理器980根据触摸事件的类型在显示面板941上提供相应的视觉输出。虽然在图9中,触控面板931与显示面板941是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板931与显示面板941集成而实现手机的输入和输出功能。手机900还可包括至少一种传感器950,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板941的亮度,接近传感器可在手机移动到耳边时,关闭显示面板941和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机还可配置的陀螺仪、气压计`、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。音频电路960、扬声器961,传声器962可提供用户与手机之间的音频接口。音频电路960可将接收到的音频数据转换后的电信号,传输到扬声器961,由扬声器961转换为声音信号输出;另一方面,传声器962将收集的声音信号转换为电信号,由音频电路960接收后转换为音频数据,再将音频数据输出处理器980处理后,经RF电路910以发送给比如另一手机,或者将音频数据输出至存储器920以便进一步处理。WiFi属于短距离无线传输技术,手机通过WiFi模块970可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了WiFi模块970,但是可以理解的是,其并不属于手机900的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。处理器980是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器980可包括一个或多个处理单元;优选的,处理器980可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器980中。 手机900还包括给各个部件供电的电源990 (比如电池),优选的,电源可以通过电源管理系统与处理器980逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。尽管未示出,手机900还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端中的处理器980会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器920中,并由处理器980来运行存储在存储器920中的应用程序,从而实现各种功能:获取待查文档的数据流;在所述数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,如果是,则将所述宏病毒文档转化成无毒文档。优选地,所述判断所述待查文档是否为宏病毒文档之前,还包括:预设宏病毒特征组,所述宏病毒特征组包括至少一个宏病毒特征。优选地,所述判断所述待查文档是否为宏病毒文档,包括:判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征。

优选地,所述判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征,包括:在所述待查文档包括宏子流的情况下,判断所述宏子流中是否包括所述宏病毒特征组中的任一宏病毒特征;在所述待查文档不包括宏子流或者所述宏子流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括脚本流,如果是,则判断所述脚本流是否包括所述宏病毒特征组中的任一宏病毒特征;或者,在所述待查文档包括脚本流的情况下,判断所述脚本流中是否包括所述宏病毒特征组中的任一宏病毒特征;在所述待查文档不包括脚本流或者所述脚本流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括宏子流,如果是,则判断所述宏子流是否包括所述宏病毒特征组中的任一宏病毒特征。优选地,所述方法还包括:在所述数据流中不存在宏标识的情况下,将所述待查文档确定为无毒文档。优选地,所述将所述宏病毒文档转化成无毒文档,包括:删除所述宏病毒文档中的宏信息,所述宏信息包括宏子流和\或脚本流,以及删除所述宏病毒文档中的宏标识;将所述宏病毒文档确定为无毒文档。本实施例中,获取待查文档的数据流后,通过判断获取的数据流中是否存在宏标识,确定是否进一步搜索宏病毒,在数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,当确定待查文档为宏病毒文档后,将宏病毒文档转化成无毒文档。本实施例只针对计算机文档的宏代码部分进行宏病毒的查杀,大大提高宏病毒的搜索效率。同时,将被感染的计算机文档中的宏病毒信息删除,使得原计算机文档中的信息被完好保存,防止息的丢失。进一步的,在数据流中不存在宏标识的情况下,可以确定待查文档为无毒文档,与现有技术中通过搜索全文确定无病毒特征代码的方法确定无毒文档的方法相比,本发明提高了确定计算机文档无宏病毒的效率。进一步的,本发明首先判断待查文档中是否包括宏子流和\或脚本流,其次针对宏子流和\或脚本流进行病毒特征的匹配的方法,确定宏病毒文档,与现有技术相比,本发明针对宏子流和\或脚本流搜索宏病毒的方法更有针对性,同时也提高了搜索宏病毒的效率。更进一步的,本发明通过将宏病毒文档中宏信息和宏标识删除的方法,实现了宏病毒文档转化为无毒文档,与现有技术的直接删除宏病毒文档的方法相比,本发明有效防止了原文档信息的丢失。需要说明的是,本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统或装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,·即可以理解并实施。需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备
所固有的要素。在没有更多限制的情况下,由语句“包括一个......”限定的要素,并不排
除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。以上对本发明实施例所提供的宏病毒查杀的方法和装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式
及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
权利要求
1.一种宏病毒查杀的方法,其特征在于,所述方法包括: 获取待查文档的数据流; 在所述数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,如果是,则将所述宏病毒文档转化成无毒文档。
2.根据权利要求1所述的方法,其特征在于,所述判断所述待查文档是否为宏病毒文档之前,还包括: 预设宏病毒特征组,所述宏病毒特征组包括至少一个宏病毒特征。
3.根据权利要求2所述的方法,其特征在于,所述判断所述待查文档是否为宏病毒文档,包括: 判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征。
4.根据权利要求3所述的方法,其特征在于,所述判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征,包括: 在所述待查文档包括宏子流的情况下,判断所述宏子流中是否包括所述宏病毒特征组中的任一宏病毒特征; 在所述待查文档不包括宏子流或者所述宏子流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括脚本流,如果是,则判断所述脚本流是否包括所述宏病毒特征组中的任一宏病毒特征; 或者, 在所述待查文档包括脚本流的情况下,判断所述脚本流中是否包括所述宏病毒特征组中的任一宏病毒特征; 在所述待查文档不包括脚本流或者所述脚本流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括宏子流,如果是,则判断所述宏子流是否包括所述宏病毒特征组中的任一宏病毒特征。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括: 在所述数据流中不存在宏标识的情况下,将所述待查文档确定为无毒文档。
6.根据权利要求1所述的方法,其特征在于,所述将所述宏病毒文档转化成无毒文档,包括: 删除所述宏病毒文档中的宏信息,所述宏信息包括宏子流和\或脚本流,以及删除所述宏病毒文档中的宏标识; 将所述宏病毒文档确定为无毒文档。
7.一种宏病毒查杀的装置,其特征在于,所述装置包括: 第一获取模块,用于获取待查文档的数据流; 第一判断模块,用于在所述数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档; 转化模块,用于在所述第一判断模块的结果为是时,将所述宏病毒文档转化成无毒文档。
8.根据权利要求7所述的方法,其特征在于,所述装置还包括: 预设模块,用于预设宏病毒特征组,所述宏病毒特征组包括至少一个宏病毒特征。
9.根据权利要求8所述的方法,其特征在于,所述第一判断模块具体用于:在所述数据流中存在宏标识的情况下,判断所述待查文档是否包括所述宏病毒特征组中的任一宏病毒特征。
10.根据权利要求9所述的方法,其特征在于,所述第一判断模块,包括: 第一判断子模块,用于在所述待查文档包括宏子流的情况下,判断所述宏子流中是否包括所述宏病毒特征组中的任一宏病毒特征; 第二判断子模块,用于在所述待查文档不包括宏子流或者所述宏子流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括脚本流; 第三判断子模块,用于在所述第二判断子模块的结果为是时,判断所述脚本流是否包括所述宏病毒特征组中的任一宏病毒特征; 或者, 第四判断子模块,用于在所述待查文档包括脚本流的情况下,判断所述脚本流中是否包括所述宏病毒特征组中的任一宏病毒特征; 第五判断子模块,用于在所述待查文档不包括脚本流或者所述脚本流中不包括所述宏病毒特征组中的任一宏病毒特征的情况下,判断所述待查文档是否包括宏子流; 第六判断子模块,用于在所述第五判断子模块的结果为是时,判断所述宏子流是否包括所述宏病毒特征组中的任一宏病毒特征。
11.根据权利要求7所述的方法,其特征在于,所述装置还包括: 确定模块,用于在所述数据流中不存在宏标识的情况下,将所述待查文档确定为无毒文档。·
12.根据权利要求7所述的方法,其特征在于,所述转化模块,包括: 第一删除子模块,用于删除所述宏病毒文档中的宏信息,所述宏信息包括宏子流和\或脚本流; 第二删除子模块,用于删除所述宏病毒文档中的宏标识; 确定子模块,用于将所述宏病毒文档确定为无毒文档。
全文摘要
本发明实施例公开了一种宏病毒查杀的方法和装置,所述方法包括首先获取待查文档的数据流,其次,通过判断获取的数据流中是否存在宏标识,确定是否进一步搜索宏病毒,在数据流中存在宏标识的情况下,判断所述待查文档是否为宏病毒文档,最后,将宏病毒文档转化成无毒文档。本发明只针对计算机文档的宏代码部分进行宏病毒的查杀,大大提高宏病毒的搜索效率。同时,将被感染的计算机文档中的宏病毒信息删除,使得原计算机文档中的信息被完好保存,防止信息的丢失。
文档编号G06F21/56GK103246847SQ201310175309
公开日2013年8月14日 申请日期2013年5月13日 优先权日2013年5月13日
发明者崔精兵 申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1