一种样本文件分析方法及装置制造方法

文档序号:6485664阅读:207来源:国知局
一种样本文件分析方法及装置制造方法
【专利摘要】本发明提供一种样本文件分析方法及装置,其中,方法包括:获得二进制格式的样本文件;将所述二进制格式的样本文件映射到内存;对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件;输出所述过滤后的二进制格式的样本文件。本发明的方案可以从二进制格式的样本文件中提取可见字符串,作为判断文件是否是病毒的依据,并加以对可见字符串的有效性过滤,有效减小样本文件的分析结果集合,大大提升病毒查杀效率。
【专利说明】一种样本文件分析方法及装置
【技术领域】
[0001]本发明涉及计算机安全【技术领域】,特别是指一种样本文件分析方法及装置。
【背景技术】
[0002]在反病毒领域,每日样本增量都是海量的,通过人工方式进行识别将浪费大量时间,因此,样本文件的自动分析成了反病毒领域的一个核心问题。
[0003]目前已有的样本文件自动分析技术可以分为两类:
[0004](I)静态自动分析,即通过反汇编代码分析、文件静态内容比对以及一系列启发式规则对比来给文件定性;这种做法的优点是:快速、吞吐量高,可以应对每日的海量文件,并给出分析结果;但缺点是:精准度一般,无法给出样本的恶意行为,对加密处理过的样本存在较多的误报和漏报。
[0005](2)动态自动分析,即通过动态执行样本并记录运行过程,进行动态行为分析,利用分析结果对样本文件进行定性;这种做法的优点是:精准度非常高,可以明确指出样本恶意行为并可以精确对其定性;但缺点是:低速,吞吐量低,若想应对海量的样本文件,需要大量硬件资源投入。

【发明内容】

[0006]本发明要解决的技术问题是提供一种样本文件分析方法及装置,从二进制格式的样本文件中提取可见字符串,作为判断文件是否是病毒的依据,并加以对可见字符串的有效性过滤,有效减小样本文件的分析结果集合,大大提升病毒查杀效率。
[0007]为解决上述技术问题,本发明的实施例提供一种样本文件分析方法,包括:
[0008]获得二进制格式的样本文件;
[0009]将所述二进制格式的样本文件映射到内存;
[0010]对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件;
[0011]输出所述过滤后的二进制格式的样本文件。
[0012]其中,所述对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件的步骤包括:
[0013]根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配,获得匹配不成功的字符串;
[0014]过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件。
[0015]其中,所述根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配的步骤包括:
[0016]对映射到内存的所述二进制格式的样本文件与所述字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串以及匹配成功的字符串对应的样本文件;
[0017]对所述匹配成功的字符串对应的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串。
[0018]其中,对所述匹配成功的字符串组成的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串的步骤包括:
[0019]计算所述匹配成功的字符串对应的样本文件中的字符串的哈希值;
[0020]计算所述病毒家族库中的特征串的哈希值;
[0021]将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较,若不相等,认为相比较的两个字符串匹配不成功,并获得匹配不成功的待过滤串,否则认为匹配成功。
[0022]其中,将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较的步骤包括:
[0023]采用一条处理器指令将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较。
[0024]其中,所述过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件的步骤包括:
[0025]过滤掉所述匹配不成功的无意义的字符串以及所述匹配不成功的待过滤串,得到过滤后的二进制格式的样本文件。
[0026]其中,所述字符编码集包括:UNIC0DE,UFT-8,GBK, GB2312和/或MBCS字符编码。
[0027]本发明的实施例还提供一种样本文件分析装置,包括:
[0028]获得模块,用于获得二进制格式的样本文件;
[0029]映射模块,用于将所述二进制格式的样本文件映射到内存;
[0030]分析模块,用于对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件;
[0031 ] 输出模块,用于输出所述过滤后的二进制格式的样本文件。
[0032]其中,所述分析模块包括:
[0033]第一分析子模块,用于根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配,获得匹配不成功的字符串;
[0034]第二分析子模块,用于过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件。
[0035]其中,所述第一分析子模块包括:
[0036]第一匹配模块,用于对映射到内存的所述二进制格式的样本文件与所述字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串以及匹配成功的字符串组成的样本文件;
[0037]第二匹配模块,用于对所述匹配成功的字符串组成的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串。
[0038]其中,所述第二匹配模块包括:
[0039]第一计算模块,用于计算所述匹配成功的字符串组成的样本文件中的字符串的哈希值;
[0040]第二计算模块,用于计算所述病毒家族库中的特征串的哈希值;
[0041]匹配子模块,用于将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较,若不相等,认为相比较的两个字符串匹配不成功,并获得匹配不成功的待过滤串,否则认为匹配成功。
[0042]其中,所述第二分析子模块具体用于:过滤掉所述匹配不成功的无意义的字符串以及所述匹配不成功的待过滤串,得到过滤后的二进制格式的样本文件。
[0043]本发明的上述技术方案的有益效果如下:
[0044]上述方案中,通过将获得的二进制格式的样本文件映射到内存,并对该二进制格式的样本文件进行全文字符串过滤分析,从而过滤掉匹配不成功的字符串,提取有效串,有效减小样本文件的分析结果集合,大大提升病毒查杀效率。
【专利附图】

【附图说明】
[0045]图1为本发明的样本文件分析方法流程图;
[0046]图2为本发明的样本文件分析装置的结构框示意图。
【具体实施方式】
[0047]为使本发明要解决的技术问题、技术方案和优点更加清楚,下面将结合附图及具体实施例进行详细描述。
[0048]如图1所示,本发明的实施例提供一种样本文件分析方法,包括:
[0049]步骤11,获得二进制格式的样本文件;
[0050]步骤12,将所述二进制格式的样本文件映射到内存;
[0051]步骤13,对映射到内存的所述二进制格式的样本文件进行全文字符串过滤,得到过滤后的二进制格式的样本文件;
[0052]步骤14,输出所述过滤后的二进制格式的样本文件。
[0053]本发明的该实施例通过将获得的二进制格式的样本文件映射到内存,并对该二进制格式的样本文件进行全文字符串过滤分析,有效减小样本文件的分析结果集合,大大提升病毒查杀效率。
[0054]在本发明的另一实施例中,包括上述步骤11 - 14的基础上,上述步骤13包括:
[0055]步骤131,根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配,获得匹配不成功的字符串;
[0056]步骤132,过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件。
[0057]其中,字符编码集包括UNICODE,UFT-8, GBK, GB2312, MBCS等所有常用的字符编码集,病毒家族库包括已确定的某一类型或者多种类型病毒对应的特征串形成的特征串集
口 ο
[0058]在本发明的另一实施例中,包括上述步骤11 - 14的基础上,上述步骤131包括:
[0059]步骤1311,对映射到内存的所述二进制格式的样本文件与所述字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串以及匹配成功的字符串对应的样本文件;
[0060]步骤1312,对所述匹配成功的字符串对应的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串。
[0061]该实施例中,通过对映射到内存的二进制格式的样本文件与字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串,这里采用常用字过滤的方法,排除掉明显无意义的字符串,如:〃犒嗣S莪撒嗖烫烫烫烫",得到匹配成功的字符串对应的样本文件,从而缩小二进制格式的样本文件的数量,可大幅提升病毒的查杀效率。
[0062]进一步地,在本发明的另一实施例中,步骤1312可以包括:
[0063]步骤13121,计算所述匹配成功的字符串对应的样本文件中的字符串的哈希(Hash)值;
[0064]步骤13122,计算所述病毒家族库中的特征串的Hash值;
[0065]步骤13123,将所述二进制格式的样本文件中的字符串的Hash值与所述病毒家族库中的特征串的Hash值进行比较,若不相等,认为相比较的两个字符串匹配不成功,并获得匹配不成功的待过滤串,否则认为匹配成功。
[0066]该实施例中,字符串的Hash值或者特征串的Hash值均是采用CRC32算法生成的一个DWORD (双字节的值),在字符串匹配时,根据生成的该CRC32值,只需要一条处理器指令,如,(Cmp,eRX,eRX)就可判断两个字符串的CRC32值是否相等,即两个字符串是否匹配,这样极大提升了分析效率。具体地,上述步骤13123中,所述将所述二进制格式的样本文件中的字符串的Hash值与所述家族库中的特征串的Hash值进行比较的步骤包括:采用一条处理器指令将所述二进制格式的样本文件中的字符串的Hash值与所述家族库中的特征串的Hash值进行比较。其中,在得到匹配不成功的待过滤串后,可以对这些匹配不成功的待过滤串进行排序,如采用快速排序方法进行排序,从而强制过滤掉这些待过滤串。
[0067]相应地,上述实施例中,步骤132可以包括:过滤掉所述匹配不成功的无意义的字符串以及所述匹配不成功的待过滤串,得到过滤后的二进制格式的样本文件。
[0068]其中,上述实施例中,所述字符编码集包括:UNIC0DE,UFT-8, GBK, GB2312, MBCS字符编码。其中,可以根据常用的3500个汉字,英文,符号等来当作有效字符集进行匹配,从而排除掉无效字符。
[0069]本发明的上述实施列中,对二进制格式的样本文件映射到内存,并采用包括所有字符编码集的有效字符集进行匹配,排除掉明显无意义的字符串,缩小二进制格式的样本文件的数量,即减小分析的样本数量,从而可大幅提升病毒查杀效率,进一步对排除掉无意义的字符串后的样本文件(即提取出的可见串)与病毒家族库的特征串进行匹配,从而过滤掉匹配不成功的字符串,从而有效减小分析结果集合,提升病毒查杀效率。
[0070]如图2所示,本发明的实施例还提供一种样本文件分析装置,包括:
[0071]获得模块21,用于获得二进制格式的样本文件;
[0072]映射模块22,用于将所述二进制格式的样本文件映射到内存;
[0073]分析模块23,用于对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件;
[0074]输出模块24,用于输出所述过滤后的二进制格式的样本文件。
[0075]本发明的该装置实施例同样通过将获得的二进制格式的样本文件映射到内存,并对该二进制格式的样本文件进行全文字符串过滤分析,有效减小样本文件的分析结果集合,大大提升病毒查杀效率。
[0076]其中,所述分析模块包括:
[0077]第一分析子模块,用于根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配,获得匹配不成功的字符串;
[0078]第二分析子模块,用于过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件。
[0079]其中,字符编码集包括UNICODE,UFT-8, GBK, GB2312, MBCS等所有常用的字符编码集,病毒家族库包括已确定的某一类型或者多种类型病毒对应的特征串形成的特征串集
口 ο
[0080]其中,所述第一分析子模块包括:
[0081]第一匹配模块,用于对映射到内存的所述二进制格式的样本文件与所述字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串以及匹配成功的字符串组成的样本文件;
[0082]第二匹配模块,用于对所述匹配成功的字符串组成的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串。
[0083]其中,所述第二匹配模块包括:
[0084]第一计算模块,用于计算所述匹配成功的字符串组成的样本文件中的字符串的哈希值;
[0085]第二计算模块,用于计算所述病毒家族库中的特征串的哈希值;
[0086]匹配子模块,用于将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较,若不相等,认为相比较的两个字符串匹配不成功,并获得匹配不成功的待过滤串,否则认为匹配成功。
[0087]该实施例中,通过对映射到内存的二进制格式的样本文件与字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串,这里采用常用字过滤的方法,排除掉明显无意义的字符串,如犒嗣S莪撒嗖烫烫烫烫",得到匹配成功的字符串对应的样本文件,从而缩小二进制格式的样本文件的数量,可大幅提升病毒的查杀效率。
[0088]其中,所述第二分析子模块具体用于:过滤掉所述匹配不成功的无意义的字符串以及所述匹配不成功的待过滤串,得到过滤后的二进制格式的样本文件。
[0089]本发明的该装置实施例同样通过对二进制格式的样本文件映射到内存,并采用包括所有字符编码集的有效字符集进行匹配,排除掉明显无意义的字符串,缩小二进制格式的样本文件的数量,即减小分析的样本数量,从而可大幅提升病毒查杀效率,进一步对排除掉无意义的字符串后的样本文件(即提取出的可见串)与病毒家族库的特征串进行匹配,从而过滤掉匹配不成功的字符串,从而有效减小分析结果集合,提升病毒查杀效率。
[0090]以上所述是本发明的优选实施方式,应当指出,对于本【技术领域】的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。
【权利要求】
1.一种样本文件分析方法,其特征在于,包括:获得二进制格式的样本文件;将所述二进制格式的样本文件映射到内存;对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件;输出所述过滤后的二进制格式的样本文件。
2.根据权利要求1所述的样本文件分析方法,其特征在于,所述对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件的步骤包括:根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配,获得匹配不成功的字符串;过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件。
3.根据权利要求2所述的样本文件分析方法,其特征在于,所述根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配的步骤包括:对映射到内存的所述二进制格式的样本文件与所述字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串以及匹配成功的字符串对应的样本文件;对所述匹配成功的字符串对应的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串。
4.根据权利要求3所述的样本文件分析方法,其特征在于,对所述匹配成功的字符串组成的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串的步骤包括:计算所述匹配成功的字符串对应的样本文件中的字符串的哈希值;计算所述病毒家族库中的特征串的哈希值;将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较,若不相等,认为相比较的两个字符串匹配不成功,并获得匹配不成功的待过滤串,否则认为匹配成功。
5.根据权利要求4所述的样本文件分析方法,其特征在于,将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较的步骤包括:采用一条处理器指令将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较。
6.根据权利要求3或4所述的样本文件分析方法,其特征在于,所述过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件的步骤包括:过滤掉所述匹配不成功的无意义的字符串以及所述匹配不成功的待过滤串,得到过滤后的二进制格式的样本文件。
7.根据权利要求2所述的样本文件分析方法,其特征在于,所述字符编码集包括:UNICODE, UFT-8, GBK, GB2312 和 / 或 MBCS 字符编码。
8.—种样本文件分析装置,其特征在于,包括:获得模块,用于获得二进制格式的样本文件;映射模块,用于将所述二进制格式的样本文件映射到内存;分析模块,用于对映射到内存的所述二进制格式的样本文件进行全文字符串过滤分析,得到过滤后的二进制格式的样本文件;输出模块,用于输出所述过滤后的二进制格式的样本文件。
9.根据权利要求8所述的样本文件分析装置,其特征在于,所述分析模块包括:第一分析子模块,用于根据字符编码集和病毒家族库的特征串,对映射到内存的所述二进制格式的样本文件进行全文字符串匹配,获得匹配不成功的字符串;第二分析子模块,用于过滤掉所述匹配不成功的字符串,得到过滤后的二进制格式的样本文件。
10.根据权利要求9所述的样本文件分析装置,其特征在于,所述第一分析子模块包括:第一匹配模块,用于对映射到内存的所述二进制格式的样本文件与所述字符编码集中的字符串相匹配,获得匹配不成功的无意义的字符串以及匹配成功的字符串组成的样本文件;第二匹配模块,用于 对所述匹配成功的字符串组成的样本文件与所述病毒家族库中的特征串进行匹配,获得匹配不成功的待过滤串。
11.根据权利要求10所述的样本文件分析装置,其特征在于,所述第二匹配模块包括:第一计算模块,用于计算所述匹配成功的字符串组成的样本文件中的字符串的哈希值;第二计算模块,用于计算所述病毒家族库中的特征串的哈希值;匹配子模块,用于将所述二进制格式的样本文件中的字符串的哈希值与所述病毒家族库中的特征串的哈希值进行比较,若不相等,认为相比较的两个字符串匹配不成功,并获得匹配不成功的待过滤串,否则认为匹配成功。
12.根据权利要求11所述的样本文件分析装置,其特征在于,所述第二分析子模块具体用于:过滤掉所述匹配不成功的无意义的字符串以及所述匹配不成功的待过滤串,得到过滤后的二进制格式的样本文件。
【文档编号】G06F17/30GK103455753SQ201210174885
【公开日】2013年12月18日 申请日期:2012年5月30日 优先权日:2012年5月30日
【发明者】苏海峰, 徐鸣, 张楠 申请人:北京金山安全软件有限公司, 可牛网络技术(北京)有限公司, 贝壳网际(北京)安全技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1