一种提取病毒文件的病毒特征的方法及其装置的制作方法

文档序号:6572124阅读:185来源:国知局
专利名称:一种提取病毒文件的病毒特征的方法及其装置的制作方法
技术领域
本发明涉及计算机反病毒领域,特别涉及一种提取病毒文件的病毒特征的方法及其装置。
背景技术
目前互联网中最流行的病毒和木马不再是单个活动,而是一类的大量变种在互联网中 活动,并且可频繁升级,所以很容易发生大量的病毒和木马爆发的局面。这对反病毒产品 升级的周期提出了更高的要求,反病毒产品的升级速度对是否能有效防杀大量的病毒和木 马起到重要的作用。
目前反病毒最成熟的方法之一是特征法。特征法一般包括病毒分析、特征提取、病毒 库制作及升级等过程,在这些过程中对病毒特征提取是否快速无误是特征法重要的过程之
目前病毒特征的提取方式主要是手工提取和半自动提取。手工提取病毒特征是病毒分 析员使用反汇编工具软件将病毒文件反汇编;通过对反汇编后的文件的详细分析,从病毒 文件中提取可以作为这个病毒文件特征的二进制特征串;之后按照引擎要求编写査毒脚 本,这个査毒脚本即是病毒特征。半自动提取病毒特征的方法是在编写查毒脚本的时候用 辅助工具来编写,其他步骤和手工提取病毒特征一样。
但上述两种提取病毒特征的方法需要人工的参与,降低了提取病毒特征的速度;而且 在提取病毒文件的病毒特征的二进制特征串这个过程中,容易错把一些非病毒文件特征的 二进制序列串当成病毒文件特征的二进制特征串,造成误报,提取的不是病毒特征。

发明内容
本发明提供了一种提取病毒文件的病毒特征的方法及其装置,其能縮短提取病毒文件
4的病毒特征的时间,并提高提取病毒文件的病毒特征的准确度。
本发明的技术方案是第一种提取病毒文件的病毒特征的方法,包括以下步骤 步骤一、根据所述病毒文件的文件头査找PE文件;
步骤二、根据壳的特征代码库识别PE文件的壳代码,并将所述PE文件进行脱壳处理;
步骤三、将所述脱壳后的PE文件标识为特征区域和非特征区域;
步骤四、在所述特征区域提取病毒特征并生成病毒特征文件。
第二种提取病毒文件的病毒特征的方法,包括以下步骤
步骤一、根据所述病毒文件的文件头査找PE文件;
步骤二、根据编译器的特征代码库识别所述PE文件的编译器类型;
步骤三、根据识别出的编译器类型对该PE文件标识非特征区域和特征区域;
步骤四、在所述特征区域提取病毒特征并生成病毒特征文件。
相应的本发明的第一种提取病毒文件的病毒特征的装置,包括,
査找模块,其用于根据病毒文件的文件头査找PE文件;
壳识别模块,其用于根据壳的特征代码库识别所述PE文件的壳代码,且对识别出有 壳代码的PE文件进行脱壳处理;
第一标识模块,其用于根据所述脱壳处理后的PE文件标识非特征区域和特征区域;
特征生成模块,其用于在所述特征区域提取病毒特征并生成病毒特征文件。
相应的本发明的第一种提取病毒文件的病毒特征的装置,包括,
本发明提取病毒文件的病毒特征的方法及其装置,通过对病毒文件进行PE文件查找、 脱壳处理、编译器识别、标识非特征区域和标识特征区域等过程实现提取病毒特征,相对 于人工提取和半自动提取病毒特征的方法,可縮短提取病毒特征的时间;且根据壳识别处 理结果和/或编译器识别过程对病毒文件进行标识非特征区域和特征区域,提高了提取病 毒文件的病毒特征的准确度。


图l是本发明的提取病毒文件的病毒特征实施例(一)的方法的流程图; 图2是本发明的提取病毒文件的病毒特征实施例(二)的方法的流程图; 图3是本发明的提取病毒文件的病毒特征实施例(三)的方法的流程图; 图4是本发明的提取病毒文件的病毒特征的装置示意图(一); 图5是本发明的提取病毒文件的病毒特征的装置示意图(二); 图6是本发明的提取病毒文件的病毒特征的装置示意图(三)。
具体实施例方式
下面根据附图和具体实施例对本发明做一详细的阐述。
本发明是对病毒文件进行提取病毒特征的方法,病毒文件可以来源于病毒文件收集系
统,通过可疑文件上报、用户邮箱上报等方式获得。本发明的方法是对病毒文件中的PE 文件进行提取病毒特征,所述PE文件是Windows可以识别的程序文件。通过对PE文件进 行壳识别分析或编译器识别或先进行壳识别分析再进行编译器识别,再对PE文件标识非 特征区域和特征区域,再从所标识的特征区域里提取病毒特征并生成病毒特征文件。所述 非特征区域是PE文件中不存在病毒特征的二进制序列串的区域,所述特征区域是PE文件 中可能存在病毒特征的二迸制代码串的区域。下面分别用实施例对其进行阐述。
实施例一
图1是本发明的提取病毒文件的病毒特征的实施例一的方法的流程图,其包括步骤
5101、 根据病毒文件的文件头査找PE文件。每种文件都有一个文件头,文件头通常 是一种数据格式,通过对文件头的分析可以识别出文件类型;文件类型很多,比如Windows 可识别的PE文件、Doc文档文件、Jpg图片文件、Html网页脚本文件等。
5102、 根据壳的特征代码壳识别所述PE文件的壳代码;并对有壳代码的PE文件进一 步地进行脱壳处理,即分析出所述壳的二进制代码。所述壳是对PE文件进行加密和压縮的一段嵌入式代码,每种壳都有相似或相同的特征代码,对此特征代码提取对比特征,形 成一个壳的特征代码库。根据壳的特征代码库,对PE文件的二进制序列串进行分析,可 以识别出所述PE文件的壳代码,如果存在壳代码的话要对该PE文件进行脱壳处理,即提 取出可以作为壳的二进制代码。
5103、 对脱壳处理后的PE文件标识非特征区域和特征区域。所述非特征区域是PE文 件中不存折病毒特征的二进制序列串的区域,所述特征区域是PE文件中可能存在病毒特 征的区域。所述标识可以是一种结构记录信息,比如从文件头偏移100的位置,总共有 200个字节是非特征区域。
5104、 对PE文件中标识特征区域的二进制序列串提取病毒特征,并把该病毒特征生 成病毒特征文件。提取病毒特征的时候,在标识特征区域的二进制序列串中根据PE文件 的特点和一些病毒公共特征的特征代码串,可以利用相似度匹配和正则表达式等技术来定 位病毒特征的代码串在PE文件中的位置。在生成病毒特征文件的时候,要根据病毒特征 文件要求,将PE文件中标识特征区域的二进制代码生成病毒特征文件。其中所述病毒特 征文件要求对所述特征区域的二进制代码的长度、具体内容、病毒名、描述必要信息都有 所要求。所述标识和上述提到的标识类似,在此不赘述。
其中步骤S102中,如果识别不出所述PE文件的壳代码,则把整个PE文件都作为提 取病毒特征的区域,则再根据PE文件的特点和一些病毒公共特征的特征代码串,可以利 用相似度匹配和正则表达式等技术来定位病毒特征的代码串在PE文件中的位置,即提取 出病毒特征的代码串,之后并把该病毒特征的代码串生成病毒特征文件;也可以直接把识 别不出壳代码的PE文件抛弃不处理。
实施例二
图2是本发明的提取病毒文件的病毒特征的实施例二的方法的流程图,其包括步骤
5201、 根据病毒文件的文件头査找PE文件。
5202、 根据编译器的特征代码库判断所述PE文件的编译器类型。相同的编译器生成 的PE文件的二进制代码都有相似的代码区域,可对此代码区域提取对比特征,组成一个编译器的特征代码库,里面是各种编译器的特征代码,把该PE文件中的二进制序列串和 编译器的特征代码库进行比对,可以判断出是何种编译器生成的PE文件。
5203、 根据识别出的编译器类型对PE文件标识非特征区域和特征区域。对于识别出 编译器类型的PE文件,进一步地可以在该PE文件中分析出作为编译器特征的二进制代码, 把作为编译器特征的二进制代码标识为非特征区域。对于识别不出编译器类型的PE文件, 则整个PE文件都有可能存在病毒特征的二进制代码串,则把整个PE文件标识为特征区域; 也可以直接把识别不出编译器类型的PE文件抛弃不处理。
5204、 对标识特征区域的PE文件提取病毒特征并生成病毒特征文件。对PE文件中标 识特征区域的二进制序列串,根据PE文件的特点和一些病毒公共特征的特征代码串,可
以利用相似度匹配和正则表达式等技术来定位病毒特征的代码串在PE文件中的位置,即 提取病毒特征的特征代码;之后再把该病毒特征的特征根据病毒特征文件的要求生成病毒
特征文件。 实施例三
图3是本发明的提取病毒文件的病毒特征的实施例三的方法的流程图,其包括步骤-
5301、 根据病毒文件的文件头査找PE文件。
5302、 根据壳的特征代码库识别所述PE文件的壳代码,且对有壳代码的PE文件进而 脱壳处理后执行步骤S303;如果识别出PE文件无壳代码,则直接执行步骤S303。
5303、 根据编译器的特征代码库判断所述PE文件的编译器类型,进而可以在PE文件 中提取出作为编译器特征的二进制代码串。对于无壳代码的PE文件或脱壳处理成功的PE 文件都可以识别所述PE文件的编译器类型。
5304、 根据识别出的编译器类型和/或脱壳处理后的PE文件标识非特征区域和特征区 域。对于识别出编译器类型的、且脱壳处理成功的PE文件,把作为编译器特征的二进制 代码串和作为壳代码的二进制代码串都标识为非特征区域;对于无壳代码的识别出编译器
类型的PE文件,把编译器的二进制代码串作为非特征区域;对于脱壳处理不成功的PE文 件或识别不出编译器类型的PE文件,要把整个PE文件都标识为提取病毒特征的特征区域,也可以直接把该PE文件抛弃不处理。
S305、对标识为特征区域的PE文件中的二进制序列串提取病毒特征,即根据PE文件 的特点和一些病毒公共特征的特征代码串,可以利用相似度匹配和正则表达式等技术来定 位病毒特征的代码串在PE文件中的位置,之后再把该病毒特征的特征代码串按照病毒特 征文件的要求生成病毒特征文件。
对应于实施例一的方法,本发明的一种提取病毒文件的病毒特征的装置,如图4所示, 其包括,
査找模块,其用于根据病毒文件的文件头査找PE文件;
壳识别模块,其用于根据壳的特征代码库识别所述PE文件的壳代码,且对识别出有 壳代码的PE文件进行脱壳处理;
第一标识模块,其用于根据所述脱壳处理后的PE文件标识非特征区域和特征区域; 特征提取生成模块,其用于在所述特征区域提取病毒特征并生成病毒特征文件。
对应于实施例二的方法,本发明的一种提取病毒文件的病毒特征的装置,如图5所示, 其包括,
査找模块,其用于根据病毒文件的文件头査找PE文件;
编译器识别模块,其用于根据编译器的特征代码库识别所述PE文件的编译器类型;
第二标识模块,其用于根据识别出的编译器类型对所述PE文件标识非特征区域和特 征区域。
特征提取生成模块,其用于在所述特征区域提取病毒特征并生成病毒特征文件。 对应于实施例三的方法,本发明的一种提取病毒文件的病毒特征的装置,如图6所示,
其包括,
査找模块,其用于根据病毒文件的文件头査找PE文件;
壳识别模块,其用于根据壳的特征代码库识别所述PE文件的壳代码,且对识别出有壳代码的PE文件进行脱壳处理;
第一标识模块,其用于根据所述脱壳处理后的PE文件标识非特征区域和特征区域;
编译器识别模块,其用于根据编译器的特征代码库识别所述PE文件的编译器类型;
第二标识模块,其用于根据识别出的编译器类型对所述PE文件标识非特征区域和特 征区域;
特征提取生成模块,其用于在所述特征区域提取病毒特征并生成病毒特征文件。
由以上可知,本发明提取病毒文件的病毒特征的方法及其装置,通过对病毒文件进行 文件査找、脱壳处理、编译器识别、标识非特征区域和标识特征区域等过程实现提取病毒
特征,相对于人工提取和半自动提取病毒特征的方法,可縮短提取病毒特征的时间;且根 据脱壳处理和/或编译器识别的结果对病毒文件进行标识非特征区域,提高了提取病毒文 件的病毒特征的准度。
以上所述的本发明实施方式,并不构成对本发明保护范围的限定。任何在本发明的精 神和原则之内所作的修改、等同替换和改进等,均应包含在本发明的权利要求保护范围之 内。
权利要求
1、一种提取病毒文件的病毒特征的方法,其特征在于,包括以下步骤步骤一、根据所述病毒文件的文件头查找PE文件;步骤二、根据壳的特征代码库识别PE文件的壳代码,并将所述PE文件进行脱壳处理;步骤三、将所述脱壳后的PE文件标识为特征区域和非特征区域;步骤四、在所述特征区域提取病毒特征并生成病毒特征文件。
2、 根据权利要求1所述的方法,其特征在于 步骤三所述的非特征区域为所述PE文件的壳代码。
3、 根据权利要求1所述的方法,其特征在于步骤二中,如果识别不出PE文件的壳代码,将该PE文件作为特征区域,之后执行步骤四。
4、 根据权利要求1所述的方法,其特征在于,所述步骤三之前还包括 根据编译器的特征代码库识别所述脱壳后PE文件的编译器类型; 步骤三所述非特征区域根据所述编译器类型进行标识。
5、 根据权利要求4所述的方法,其特征在于如果无法识别所述脱壳后的PE文件的编译器类型,则将所述脱壳处理后的PE文件作为 特征区域。
6、 根据权利要求1至5任一项所述的提取病毒文件的病毒特征的方法,其特征在于所述PE文件是Windows可以识别的程序文件。
7、 一种提取病毒文件的病毒特征的方法,其特征在于,包括以下步骤 步骤一、根据所述病毒文件的文件头査找PE文件;步骤二、根据编译器的特征代码库识别所述PE文件的编译器类型; 步骤三、根据识别出的编译器类型对该PE文件标识非特征区域和特征区域;步骤四、在所述特征区域提取病毒特征并生成病毒特征文件。
8、 根据权利要求7所述的提取病毒文件的病毒特征的方法,其特征在于步骤二还包括如果识别不出所述PE文件的编译器的类型,将该PE文件标识为特征区域,之后执行步骤四。
9、 一种提取病毒文件的病毒特征的装置,其特征在于包括,査找模块,其用于根据病毒文件的文件头査找PE文件;壳识别模块,其用于根据壳的特征代码库识别所述PE文件的壳代码,且对识别出有壳代 码的PE文件进行脱壳处理;第一标识模块,其用于根据所述脱壳处理后的PE文件标识非特征区域和特征区域; 特征提取生成模块,其用于在所述特征区域提取病毒特征并生成病毒特征文件。
10、 根据权利要求9所述的提取病毒文件的病毒特征的装置,其特征在于,还包括 编译器识别模块,其用于根据编译器的特征代码库识别所述PE文件的编译器类型; 第二标识模块,其用于根据识别出的编译器类型对所述PE文件标识非特征区域和特征区域。
11、 一种提取病毒文件的病毒特征的装置,其特征在于包括, 查找模块,其用于根据病毒文件的文件头査找PE文件;编译器识别模块,其用于根据编译器的特征代码库识别所述PE文件的编译器类型; 第二标识模块,其用于根据识别出的编译器类型对所述PE文件标识非特征区域和特征区域;特征提取生成模块,其用于在所述特征区域提取病毒特征并生成病毒特征文件。
全文摘要
本发明公开了一种提取病毒文件的病毒特征的方法及其装置,所述方法包括以下步骤步骤一、根据所述病毒文件的文件头查找PE文件;步骤二、根据壳的特征代码库识别PE文件的壳代码,并将所述PE文件进行脱壳处理;步骤三、将所述脱壳后的PE文件标识为特征区域和非特征区域;步骤四、在所述特征区域提取病毒特征并生成病毒特征文件。通过对病毒文件进行PE文件查找、脱壳处理、编译器识别、标识非特征区域和标识特征区域等过程实现提取病毒特征,相对于人工提取和半自动提取病毒特征的方法,可缩短提取病毒特征的时间;且根据壳识别处理结果和/或编译器识别过程对病毒文件进行标识非特征区域和特征区域,提高了提取病毒文件的病毒特征的准确度。
文档编号G06F21/00GK101441687SQ20071003155
公开日2009年5月27日 申请日期2007年11月21日 优先权日2007年11月21日
发明者辉 姚, 敏 李 申请人:珠海金山软件股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1