一种恶意代码检测方法及系统的制作方法

文档序号:6425852阅读:199来源:国知局
专利名称:一种恶意代码检测方法及系统的制作方法
技术领域
本发明涉及计算机反病毒领域,特别涉及一种恶意代码检测方法及系统。
背景技术
随着计算机的普及和网络技术的发展,计算机病毒也日益泛滥,恶意代码的检测方法也在不断提高,现在对于恶意代码的检测可通过基于二进制特征码和行为启发式进行检测。基于二进制特征码的检测方式速度快,但是对于未知病毒没有检测能力;行为启发式检测能够检测未知病毒,但是性能没有二进制特征码检测方式速度快、利用沙箱等进行动态行为分析还存在漏沙的可能、跨平台检测能力不好和可维护性差等缺点。

发明内容
本发明提供了一种恶意代码检测方法及系统,解决了基于二进制特征码对未知病毒没有检测能力及启发式检测速度慢的问题,并提高了跨平台检测能力。一种恶意代码检测方法,包括
a.加载至少一个病毒特征库,所述的病毒特征库中包含检测点、与检测点对应的标识、 特征及检测结果;
b.分析检测目标文件中是否包含有所述病毒特征库中的检测点,若对应检测点出现, 则记录与检测点对应的所有标识;
c.根据病毒特征库的匹配方式,判断是否需要对标识进行转化处理,若需要,则将标识进行转化,否则直接执行步骤d ;
d.判断是否需要进行缩短处理,若所有标识或转化后的标识的长度超出预设值,则对所有标识或转化后的标识进行一次或多次散列计算,否则直接执行步骤e ;
e.将所有标识、转化后的标识或缩短处理后的标识作为特征与加载的指定病毒特征库中的特征进行匹配检测,获取检测结果;
f.判断是否需要二次检测,若病毒特征库中的特征预设需要进行二次检测,则使用下一病毒特征库从步骤a开始重新检测,否则报告检测结果。所述的方法中,在执行步骤a之前还包括,建立病毒特征库 确定检测点,根据检测点检测样本集中的文件;
将文件中检测出的检测点组合,确定为病毒特征库中的特征; 所述的方法中,所述的检测点至少包括指定或不指定偏移的二进制串、文件属性信息、文件结构信息、文件所属环境信息和已知检测方法的检测结果。所述的方法中,所述的步骤c中将标识进行转化包括以下方法中的一种或几种的组合
将标识的全部字节或部分字节连接为特征串;
将每一个标识转化为一个二进制位,检测点出现的标识位为1,检测点未出现的标识位为0。
4
若使用数据库进行匹配,则可将标识连接为特征串;若使用传统特征库进行匹配, 则可将每个标识转化为一个二进制位;或将两种方法结合使用。所述的方法中,步骤e中将所有标识、转化后的标识或缩短处理后的标识作为特征与加载的指定病毒特征库中的特征进行匹配检测的方法包括
使用本地病毒特征库匹配或将所有标识、转化后的标识或缩短处理后的标识发送到服务器端的病毒特征库进行匹配,若匹配成功则确定为病毒文件,否则为非病毒文件。所述的方法中,可以通过增加新的病毒特征库来增加检测点和特征数量。一种恶意代码检测系统,包括
病毒特征库加载单元,用于加载至少一个病毒特征库,所述的病毒特征库中包含检测点、与检测点对应的标识、特征及检测结果;
文件分析单元,用于分析检测目标文件中是否包含有病毒特征库加载单元所加载的病毒特征库中的检测点,若对应检测点出现,则记录与检测点对应的所有标识;
转化处理单元,用于根据病毒特征库的匹配方式,判断是否需要对文件分析单元检测出的标识进行转化处理,若需要,则将所有标识进行转化,否则进入缩短处理单元;
缩短处理单元,用于判断是否需要进行缩短处理,若文件分析单元所检测出的所有标识或转化处理单元转化后的标识的长度超出预设值,则对所有标识或转化后的标识进行一次或多次散列计算,否则进入特征匹配单元;
特征匹配单元,用于将文件分析单元检测出的所有标识、转化处理单元转化后的标识或缩短处理单元缩短处理后的标识与病毒特征库加载单元加载的指定病毒特征库中的特征进行匹配检测,获取检测结果;
二次检测判断单元,判断特征匹配单元的检测结果是否需要二次检测,若病毒特征库中的特征预设需要进行二次检测,则使用下一病毒特征库检测重新检测,否则报告检测结^ ο所述的系统中,在病毒特征库加载单元加载病毒特征库之前还包括,建立病毒特征库单元,包括
确定检测点,根据检测点检测样本集中的文件; 将文件中检测出的检测点组合,确定为病毒特征库中的特征; 所述的系统中,所述病毒特征库加载单元加载的病毒特征库中的检测点至少包括指定或不指定偏移的二进制串、文件属性信息、文件结构信息、文件所属环境信息和已知检测方法的检测结果。所述的系统中,所述转化处理单元将文件分析单元检测出的所有标识进行转化, 包括以下方法中的一种或几种的组合
将标识的全部字节或部分字节连接为特征串;
将每一个标识转化为一个二进制位,检测点出现的标识位为1,检测点未出现的标识位为0。所述的系统中,缩短处理单元将文件分析单元检测出的所有标识、转化处理单元转化后的标识或缩短处理单元缩短处理后的标识与病毒特征库加载单元加载的指定病毒特征库中的特征进行匹配检测的方法包括
使用本地病毒特征库进行匹配或将所有标识、转化后的标识或缩短处理后的标识发送到服务器端的病毒特征库进行匹配,若匹配成功则确定为病毒文件,否则为非病毒文件。所述的系统中,可以通过增加新的病毒特征库来增加检测点和特征数量。本发涉及计算机反病毒领域,提供了一种恶意代码检测方法和系统。本发明结合了二进制特征码和启发式检测,将未知病毒检测的方法作为特征点,加载病毒特征库和检测点以及检测标识;分析检测目标,若检测点出现,则记录对应检测点标识;判断是否需要对标识进行转化处理和缩短处理;将处理后的结果作为特征与加载的病毒特征库中的特征匹配;判断是否需要进行二次检测,若需要则使用下一病毒特征库进行检测,否则报告结果。通过本发明,将未知检测的方法作为特征点,用传统的特征匹配来提高未知检测速度, 解决了未知检测速度慢的问题,同时由于特征获取与检测方法分离,提高了跨平台检测能力。本发明还可以通过增加特征数量和新的检测点增强检测能力,增加新的检测点可以通过增加新的病毒特征库来实现,不改变原有的检测模型,增强了检测模型的可维护性。


为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本发明提供的一种恶意代码检测方法流程图; 图2为本发明提供的一种恶意代码检测系统示意图。
具体实施例方式为了使本技术领域的人员更好地理解本发明实施例中的技术方案,并使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明中技术方案作进一步详细的说明。本发明提供了一种恶意代码检测方法及系统,解决了基于二进制特征码对未知病毒没有检测能力及启发式检测速度慢的问题,并提高了跨平台检测能力。一种恶意代码检测方法,如图1所示,包括
SlOl 加载至少一个病毒特征库,所述的病毒特征库中包含检测点、与检测点对应的标识、特征及检测结果;
S102:分析检测目标文件中是否包含有所述病毒特征库中的检测点,若对应检测点出现,则记录与检测点对应的所有标识;
5103根据病毒特征库的匹配方式,判断是否需要对标识进行转化处理,若需要,则执行S104,否则直接执行S105 ;
5104将所有标识进行转化;
5105判断是否需要进行缩短处理,若所有标识或转化后的标识的长度超出预设值,则执行S106,否则直接执行S107 ;
5106对所有标识或转化后的标识进行一次或多次散列计算;
S107:将所有标识、转化后的标识或缩短处理后的标识作为特征与加载的指定病毒特征库中的特征进行匹配检测,获取检测结果;S108 判断是否需要二次检测,若病毒特征库中的特征预设需要进行二次检测,则使用下一病毒特征库从S102开始重新检测,否则报告检测结果。所述的方法中,在执行SlOl之前还包括,建立病毒特征库 确定检测点,根据检测点检测样本集中的文件;
将文件中检测出的检测点组合,确定为病毒特征库中的特征; 所述的方法中,所述的检测点至少包括指定或不指定偏移的二进制串、文件属性信息、文件结构信息、文件所属环境信息和已知检测方法的检测结果。在指定二进制串偏移的情况下,偏移后文件中包括指定的二进制串即为检测点出现;在不指定二进制串偏移的情况下,文件中包含指定的二进制串即为检测点出现。文件的属性信息可以包含文件属性为隐藏;是否为新创建文件,如当前时间减去文件的创建时间为72小时内,则认定文件为新创建文件;文件名中字母与数字混淆,如 0、1和0、I ;文件为全数字文件名,如123. exe ;文件含有双扩展名,如aaa. rmvb. exe ;自动运行文件,且内容指向exe文件;文件名、导出名、版本信息原始名不匹配等。文件结构信息可以包含D0S头和PE头重叠,如DOS头内的e_lfanew值小于 sizeof (IMAGE_DOS_HEADER);入口点小于SizeOfHaders ;入口点为0,且入口点后的数据为 0x4552 ;节数量大于 20,FileHeader 中 NumberOf^ections 字段大于 20 ;SizeOfImage 不对齐;导入表的相对偏移值;附加数据中含有PE ;含有TLS表等。文件所属环境信息可以包含文件的来源;是否被其他文件包含;是否被某进程操作等。利用选定的检测点对样本集进行检测,例如对15万份文件样本集进行检测,得到 538种检测点组合,选取能够说明是恶意文件的检测点组合作为病毒特征库中的特征。所述的方法中,所述的S104中将标识进行转化包括以下方法中的一种或几种的
组合
将标识的全部字节或部分字节连接为特征串;
将每一个标识转化为一个二进制位,检测点出现的标识位为1,检测点未出现的标识位为0。若使用数据库进行匹配,则可将标识连接为特征串;若使用传统特征库进行匹配, 则可将每个标识转化为一个二进制位;或将两种方法结合使用。所述的方法中,S107中将所有标识、转化后的标识或缩短处理后的标识作为特征与加载的指定病毒特征库中的特征进行匹配检测的方法包括
使用本地病毒特征库匹配或将所有标识、转化后的标识或缩短处理后的标识发送到服务器端的病毒特征库进行匹配,若匹配成功则确定为病毒文件,否则为非病毒文件。所述的方法中,可以通过增加新的病毒特征库来增加检测点和特征数量。一种恶意代码检测系统,包括
病毒特征库加载单元201,用于加载至少一个病毒特征库,所述的病毒特征库中包含检测点、与检测点对应的标识、特征及检测结果;
文件分析单元202,用于分析检测目标文件中是否包含有病毒特征库加载单元201所加载的病毒特征库中的检测点,若对应检测点出现,则记录与检测点对应的所有标识;
转化处理单元203,用于根据病毒特征库的匹配方式,判断是否需要对文件分析单元202检测出的标识进行转化处理,若需要,则将所有标识进行转化,否则进入缩短处理单元 204 ;
缩短处理单元204,用于判断是否需要进行缩短处理,若文件分析单元202所检测出的所有标识或转化处理单元203转化后的标识的长度超出预设值,则对所有标识或转化后的标识进行一次或多次散列计算,否则进入特征匹配单元205 ;
特征匹配单元205,用于将文件分析单元202检测出的所有标识、转化处理单元203转化后的标识或缩短处理单元204缩短处理后的标识与病毒特征库加载单元201加载的指定病毒特征库中的特征进行匹配检测,获取检测结果;
二次检测判断单元206,判断特征匹配单元的检测结果是否需要二次检测,若病毒特征库中的特征预设需要进行二次检测,则使用下一病毒特征库检测重新检测,否则报告检测结果。所述的系统中,在病毒特征库加载单元201加载病毒特征库之前还包括,建立病毒特征库单元207,包括
确定检测点,根据检测点检测样本集中的文件; 将文件中检测出的检测点组合,确定为病毒特征库中的特征; 所述的系统中,所述病毒特征库加载单元201加载的病毒特征库中的检测点至少包括指定或不指定偏移的二进制串、文件属性信息、文件结构信息、文件所属环境信息和已知检测方法的检测结果。所述的系统中,所述转化处理单元203将文件分析单元202检测出的所有标识进行转化,包括以下方法中的一种或几种的组合
将标识的全部字节或部分字节连接为特征串;
将每一个标识转化为一个二进制位,检测点出现的标识位为1,检测点未出现的标识位为0。所述的系统中,缩短处理单元204将文件分析单元202检测出的所有标识、转化处理单元203转化后的标识或缩短处理单元204缩短处理后的标识与病毒特征库加载单元 201加载的指定病毒特征库中的特征进行匹配检测的方法包括
使用本地病毒特征库进行匹配或将所有标识、转化后的标识或缩短处理后的标识发送到服务器端的病毒特征库进行匹配,若匹配成功则确定为病毒文件,否则为非病毒文件。所述的系统中,可以通过增加新的病毒特征库来增加检测点和特征数量。本发涉及计算机反病毒领域,提供了一种恶意代码检测方法和系统。本发明结合了二进制特征码和启发式检测,将未知病毒检测的方法作为特征点,加载病毒特征库和检测点以及检测标识;分析检测目标,若检测点出现,则记录对应检测点标识;判断是否需要对标识进行转化处理和缩短处理;将处理后的结果作为特征与加载的病毒特征库中的特征匹配;判断是否需要进行二次检测,若需要则使用下一病毒特征库进行检测,否则报告结果。通过本发明,将未知检测的方法作为特征点,用传统的特征匹配来提高未知检测速度, 解决了未知检测速度慢的问题,同时由于特征获取与检测方法分离,提高了跨平台检测能力。本发明还可以通过增加特征数量和新的检测点增强检测能力,增加新的检测点可以通过增加新的病毒特征库来实现,不改变原有的检测模型,增强了检测模型的可维护性。虽然通过实施例描绘了本发明,本领域普通技术人员知道,本发明有许多变形和
8变化而不脱离本发明的精神,希望所附的权利要求包括这些变形和变化而不脱离本发明的精神。
权利要求
1.一种恶意代码检测方法,其特征在于,检测目标文件时包括a.加载至少一个病毒特征库,所述的病毒特征库中包含检测点、与检测点对应的标识、 特征及检测结果;b.分析检测目标文件中是否包含有所述病毒特征库中的检测点,若对应检测点出现, 则记录与检测点对应的所有标识;c.根据病毒特征库的匹配方式,判断是否需要对所有标识进行转化处理,若需要,则将所有标识进行转化,否则直接执行步骤d ;d.判断是否需要进行缩短处理,若所有标识或转化后的标识的长度超出预设值,则对所有标识或转化后的标识进行一次或多次散列计算,否则直接执行步骤e ;e.将所有标识、转化后的标识或缩短处理后的标识作为特征与加载的指定病毒特征库中的特征进行匹配检测,获取检测结果;f.判断是否需要二次检测,若病毒特征库中的特征预设需要进行二次检测,则使用下一病毒特征库从步骤a开始重新检测,否则报告检测结果。
2.如权利要求1所述的方法,其特征在于,在执行步骤a之前,还包括建立病毒特征库确定检测点,并根据检测点检测样本集中的文件; 将文件中检测出的检测点组合,确定为病毒特征库中的特征。
3.如权利要求1所述的方法,其特征在于,所述的检测点至少包括指定或不指定偏移的二进制串、文件属性信息、文件结构信息、文件所属环境信息和已知检测方法的检测结^ ο
4.如权利要求1所述的方法,其特征在于,所述的步骤c中将标识进行转化包括以下方法中的一种或几种的组合将标识的全部字节或部分字节连接为特征串;将每一个标识转化为一个二进制位,检测点出现的标识位为1,检测点未出现的标识位为0。
5.如权利要求1所述的方法,其特征在于,步骤e中将所有标识、转化后的标识或缩短处理后的标识与加载的指定病毒特征库中的特征进行匹配检测的方法包括使用本地病毒特征库匹配或将所有标识、转化后的标识或缩短处理后的标识发送到服务器端的病毒特征库进行匹配,若匹配成功则确定为病毒文件,否则为非病毒文件。
6.如权利要求1所述的方法,其特征在于,通过增加新的病毒特征库来增加检测点和特征数量。
7.一种恶意代码检测系统,其特征在于,包括病毒特征库加载单元,用于加载至少一个病毒特征库,所述的病毒特征库中包含检测点、与检测点对应的标识、特征及检测结果;文件分析单元,用于分析检测目标文件中是否包含有病毒特征库加载单元所加载的病毒特征库中的检测点,若对应检测点出现,则记录与检测点对应的所有标识;转化处理单元,用于根据病毒特征库的匹配方式,判断是否需要对文件分析单元检测出的所有标识进行转化处理,若需要,则将所有标识进行转化,否则进入缩短处理单元; 缩短处理单元,用于判断是否需要进行缩短处理,若文件分析单元检测出的所有标识或转化处理单元转化后的标识的长度超出预设值,则对所有标识或转化后的标识进行一次或多次散列计算,否则进入特征匹配单元;特征匹配单元,用于将文件分析单元检测出的所有标识、转化处理单元转化后的标识或缩短处理单元缩短处理后的标识与病毒特征库加载单元加载的指定病毒特征库中的特征进行匹配检测,获取检测结果;二次检测判断单元,判断特征匹配单元的检测结果是否需要二次检测,若病毒特征库中的特征预设需要进行二次检测,则使用下一病毒特征库检测重新检测,否则报告检测结^ ο
8.如权利要求7所述的系统,其特征在于,在病毒特征库加载单元加载病毒特征库之前还包括,建立病毒特征库单元,包括确定检测点,根据检测点检测样本集中的文件;将文件中检测出的检测点组合,确定为病毒特征库中的特征。
9.如权利要求7所述的系统,其特征在于,所述病毒特征库加载单元加载的病毒特征库中的检测点至少包括指定或不指定偏移的二进制串、文件属性信息、文件结构信息、文件所属环境信息和已知检测方法的检测结果。
10.如权利要求7所述的系统,其特征在于,所述转化处理单元将文件分析单元检测出的所有标识进行转化,包括以下方法中的一种或几种的组合将所有标识的全部字节或部分字节连接为特征串;将每一个标识转化为一个二进制位,检测点出现的标识位为1,检测点未出现的标识位为0。
11.如权利要求7所述的系统,其特征在于,缩短处理单元将文件分析单元检测出的所有标识、转化处理单元转化后的标识或缩短处理单元缩短处理后的标识与病毒特征库加载单元加载的指定病毒特征库中的特征进行匹配检测的方法包括使用本地病毒特征库进行匹配或将所有标识、转化后的标识或缩短处理后的标识发送到服务器端的病毒特征库进行匹配,若匹配成功则确定为病毒文件,否则为非病毒文件。
12.如权利要求7所述的系统,其特征在于,通过增加新的病毒特征库来增加检测点和特征数量。
全文摘要
本发明涉及计算机反病毒领域,提供了一种恶意代码检测方法和系统。本发明结合了二进制特征码和启发式检测,将未知病毒检测的方法作为特征点,加载病毒特征库和检测点以及检测标识;分析检测目标,若检测点出现,则记录对应检测点标识;判断是否需要对标识进行转化处理和缩短处理;将处理后的结果作为特征与加载的病毒特征库中的特征匹配;判断是否需要进行二次检测,若需要则使用下一病毒特征库进行检测,否则报告结果。通过本发明,解决了启发式检测速度慢的问题,同时由于特征获取与检测方法分离,提高了跨平台检测能力。
文档编号G06F21/00GK102243699SQ20111015381
公开日2011年11月16日 申请日期2011年6月9日 优先权日2011年6月9日
发明者关墨辰, 肖新光 申请人:深圳市安之天信息技术有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1