一种检测恶意代码家族变种及新家族的方法及系统技术方案

技术编号:13162358 阅读:66 留言:0更新日期:2016-05-10 09:14
本发明专利技术公开了一种检测恶意代码家族变种及新家族的方法及系统,首先通过现有的已知恶意代码家族及其样本作为训练数据,提取其中的API函数名和API函数传入的参数,在检测过程中,将待检测恶意代码的API函数名与训练数据的函数名进行对比,初步判断其是否属于已知恶意代码家族,然后将待检测恶意代码API函数传入的参数与训练数据的API函数传入的参数进行对比,判断其属于现有家族的变种还是属于新增家族的样本,最终返回检测结果。本发明专利技术弥补了现有恶意代码检测都为单一目标样本的检测,并没有对家族样本进行分类,无法直观的发现目前正在活跃的家族并根据其新的变种做针对性的防御的不足,且检测结果精确,可靠性高。

【技术实现步骤摘要】

本专利技术涉及计算机网络安全
,尤其涉及一种检测恶意代码家族变种及新家族的方法及系统
技术介绍
随着恶意代码的不断进化,一种新的恶意代码出现后,其本身会迅速发展,而且操作系统或者软件升级后,恶意代码也会调整新的攻击方式,产生新的变种。近几年来,这些对用户的信息安全造成巨大破坏的恶意代码家族层出不穷,经统计,截止2014年11月,年度新增家族数量为1032,而新增的家族变种更是数量惊人。现有的恶意代码检测方法都为单一目标样本的检测,并没有对家族样本进行分类,无法直观的发现目前正在活跃的家族并根据其新的变种做好针对性的防御,这不但不能很好的对恶意代码的来源进行追溯,也使得对恶意代码的检测和查杀的过程相对复杂,无法有效的提高处理效率。
技术实现思路
本专利技术针对现有对恶意代码检测形式上的不足,提出了一种检测恶意代码家族变种及新家族的方法及系统,首先通过现有的已知恶意代码家族及其样本作为训练数据,提取其中的API函数名和API函数传入的参数,在检测过程中,首先将待检测恶意代码的API函数名与训练数据的函数名进行对比,初步判断其是否属于已知恶意代码家族,然后将待检测恶意代码API函数传入的参数与训练数据的API函数传入的参数进行对比,判断其属于现有家族的变种还是属于新增家族的样本,最终返回检测结果。具体
技术实现思路
包括: 一种检测恶意代码家族变种及新家族的方法,其特征在于,包括: 解析现有恶意代码家族中的已知恶意代码样本,提取并存储已知恶意代码样本所包含的API函数名及API函数传入的参数; 提取待检测恶意代码所包含的API函数名,将其分别与各已知恶意代码样本的API函数名进行对比,若API函数名相同个数都不大于规定阈值,则待检测恶意代码为新增恶意代码家族的恶意代码样本; 若存在API函数名相同个数大于规定阈值,则记录对应的已知恶意代码样本,并分别提取记录的已知恶意代码样本与待检测恶意代码相同的API函数名; 提取待检测恶意代码中所述相同API函数名对应的API函数传入的参数,并将其分别与各记录的已知恶意代码样本中API函数名对应的API函数传入的参数进行对比,若对比结果显示传入的参数完全相同,则该结果对应的已知恶意代码样本的权值加1 ;若对比结果显示传入的参数不完全相同,则该结果对应的已知恶意代码样本的权值减1 ; 统计所有已知恶意代码样本的权值,若权值均小于规定数值,则待检测恶意代码为新增恶意代码家族的恶意代码样本; 若存在权值不小于规定数值,则记录权值最大的已知恶意代码样本,且待检测恶意代码为该已知恶意代码样本对应的恶意代码家族的变种。进一步地,所述提取已知恶意代码样本所包含的API函数名,和提取待检测恶意代码所包含的API函数名,通过代码静态分析实现,具体为:分析代码的PE结构,得到可选映像头中的数据目录表,并获取其中的导入表地址,从导入表中得到导入的API函数的函数名。进一步地,所述提取已知恶意代码样本和待检测恶意代码API传入的参数,通过动态分析实现,具体为:通过API HOOK技术,钩挂API函数,得到传入API函数的参数。进一步地,所述若存在API函数名相同个数大于规定阈值,则首先取API函数名相同个数最多的已知恶意代码样本的MD5值或HASH值,与待检测恶意代码的MD5值或HASH值进行比较,若比较结果为相同,则待检测恶意代码与所述最大对比结果对应的已知恶意代码样本相同,此时对待检测恶意代码进行过滤; 若比较结果为不相同,则提取待检测恶意代码中所述相同API函数名对应的API函数传入的参数,并将其对应的与各记录的已知恶意代码样本中API函数名对应的API函数传入的参数进行对比。一种检测恶意代码家族变种及新家族的系统,其特征在于,包括: 现有恶意代码家族解析模块,用于解析现有恶意代码家族中的已知恶意代码样本,提取并存储已知恶意代码样本所包含的API函数名及API函数传入的参数; API函数名检测模块,用于提取待检测恶意代码所包含的API函数名,将其分别与各已知恶意代码样本的API函数名进行对比,若API函数名相同个数都不大于规定阈值,则待检测恶意代码为新增恶意代码家族的恶意代码样本,若存在API函数名相同个数大于规定阈值,则通过API参数检测模块进行进一步检测; API参数检测模块,存在API函数名相同个数大于规定阈值时,用于记录对应的已知恶意代码样本,并分别提取记录的已知恶意代码样本与待检测恶意代码相同的API函数名,提取待检测恶意代码中所述相同API函数名对应的API函数传入的参数,并将其分别与各记录的已知恶意代码样本中API函数名对应的API函数传入的参数进行对比,若对比结果显示传入的参数完全相同,则该结果对应的已知恶意代码样本的权值加1,若对比结果显示传入的参数不完全相同,则该结果对应的已知恶意代码样本的权值减1 ; 权值统计模块,用于统计所有已知恶意代码样本的权值,若权值均小于规定数值,则待检测恶意代码为新增恶意代码家族的恶意代码样本,若存在权值不小于规定数值,则记录权值最大的已知恶意代码样本,且待检测恶意代码为该已知恶意代码样本对应的恶意代码家族的变种。进一步地,所述提取已知恶意代码样本所包含的API函数名,和提取待检测恶意代码所包含的API函数名,通过代码静态分析实现,具体为:分析代码的PE结构,得到可选映像头中的数据目录表,并获取其中的导入表地址,从导入表中得到导入的API函数的函数名。进一步地,所述提取已知恶意代码样本和待检测恶意代码API传入的参数,通过动态分析实现,具体为:通过API HOOK技术,钩挂API函数,得到传入API函数的参数。进一步地,所述若存在API函数名相同个数大于规定阈值,则首先取API函数名相同个数最多的已知恶意代码样本的MD5值或HASH值,与待检测恶意代码的MD5值或HASH值进行比较,若比较结果为相同,则待检测恶意代码与所述最大对比结果对应的已知恶意代码样本相同,此时对待检测恶意代码进行过滤; 若比较结果为不相同,则提取待检测恶意代码中所述相同API函数名对应的API函数传入的参数,并将其对应的与各记录的已知恶意代码样本中API函数名对应的API函数传入的参数进行对比。本专利技术的有益效果是: 现有的恶意代码检测方法都为单一目标样本的检测,并没有对家族样本进行分类,无法直观的发现目前正在活跃的家族并根据其新的变种做好针对性的防御,这不但不能很好的对恶意代码的来源进行追溯,也使得对恶意代码的检测和查杀的过程相对复杂,无法有效的提高处理效率。针对上述现有对恶意代码检测形式上的不足,本专利技术提出了一种检测恶意代码家族变种及新家族的方法及系统,将现有恶意代码家族及其已知的恶意代码样本作为训练数据,解析待检测恶意代码的API函数名及其传入的参数,与训练数据的API函数名及其传入的参数进行对比,能够准确的检测出待检测恶意代码属于现有家族中的变种还是属于新增家族的样本。通过本专利技术的方法,可以有效的将恶意代码按照家族进行划分,并发现新的家族,有利于分析恶意代码作者的意图,为后续对恶意代码进行针对性的防御提供便利,从而有效提高恶意代码检测效率,并且可以通过家族划分来追溯恶意代码来源。本专利技术首先通过API函数名的对比初本文档来自技高网...
一种检测恶意代码家族变种及新家族的方法及系统

【技术保护点】
一种检测恶意代码家族变种及新家族的方法,其特征在于,包括:解析现有恶意代码家族中的已知恶意代码样本,提取并存储已知恶意代码样本所包含的API函数名及API函数传入的参数;提取待检测恶意代码所包含的API函数名,将其分别与各已知恶意代码样本的API函数名进行对比,若API函数名相同个数都不大于规定阈值,则待检测恶意代码为新增恶意代码家族的恶意代码样本;若存在API函数名相同个数大于规定阈值,则记录对应的已知恶意代码样本,并分别提取记录的已知恶意代码样本与待检测恶意代码相同的API函数名;提取待检测恶意代码中所述相同API函数名对应的API函数传入的参数,并将其分别与各记录的已知恶意代码样本中API函数名对应的API函数传入的参数进行对比,若对比结果显示传入的参数完全相同,则该结果对应的已知恶意代码样本的权值加1;若对比结果显示传入的参数不完全相同,则该结果对应的已知恶意代码样本的权值减1;统计所有已知恶意代码样本的权值,若权值均小于规定数值,则待检测恶意代码为新增恶意代码家族的恶意代码样本;若存在权值不小于规定数值,则记录权值最大的已知恶意代码样本,且待检测恶意代码为该已知恶意代码样本对应的恶意代码家族的变种。...

【技术特征摘要】

【专利技术属性】
技术研发人员:贾琼李柏松
申请(专利权)人:哈尔滨安天科技股份有限公司
类型:发明
国别省市:黑龙江;23

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1