一种基于图像纹理指纹的恶意代码分类方法技术

技术编号:20160902 阅读:53 留言:0更新日期:2019-01-19 00:13
本发明专利技术公开了一种基于图像纹理指纹的恶意代码分类方法,通过结合图像分析技术与恶意代码分类技术,将操作码数值化后映射为双通道无压缩的灰度图像,然后根据灰度变换方法将双通道的图像转化单通道的灰度图,使用灰度共生矩阵提取图像的纹理特征,并将这些特征作为恶意代码的本质特征,最后使用随机森林算法对恶意代码进行分类。本发明专利技术的基于图像纹理指纹的恶意代码分类方法,一方面减少了用于表述恶意代码的特征数量,提高了恶意代码的分类速度;另一方面有效地克服了操作码重排、代码变换等恶意代码混淆问题,提高了恶意代码分类的精度。

【技术实现步骤摘要】
一种基于图像纹理指纹的恶意代码分类方法
本专利技术涉及恶意代码分类领域,尤其涉及一种基于图像分析的恶意代码分类方法。
技术介绍
随着互联网的蓬勃发展,恶意代码已经成为威胁互联网安全的主要因素之一,其呈现出高速增长的趋势。现有技术中,分析识别恶意代码的方式通常包括静态分析方法和动态分析方法,动态分析方法是在代码运行过程中进行分析,所分析的代码就是实际执行的代码,但动态分析在一次执行过程中只能获取单一路径行为,而很多恶意代码存在多条执行路径,因此动态分析方法本身存在有一定的局限性;静态分析方法是先对可执行程序进行反汇编,并在此基础上提取代码的特征信息进行分类,现有技术中已经有很多研究人员将恶意代码转换为图像,并提取图像特征进行识别的静态分析方法,例如NatarajL等人提出了一种SPAM-GIST恶意代码分类方法(NatarajL,ManjunathBS.SPAM:SignalProcessingtoAnalyzeMalware[ApplicationsCorner][J].IEEESignalProcessingMagazine,2016,33(2):105-117),其将恶意代码二进制文件映射为图像来描述特征,利用Gabor滤波器多尺度和多方向的特点提取图像的全局特征GIST,并使用此特征表示恶意代码特征,然后使用最近邻算法对恶意代码进行分类。然而这些静态分析方法提取的特征维数过大且对混淆后的恶意代码分类精度不足,这导致恶意代码的分类精度低、分类速度慢等不足。因此,如何获取分类精度高、分类速度快的恶意代码分析方法是本领域技术人员需要解决的问题。
技术实现思路
本专利技术提供了一种基于图像纹理指纹的恶意代码分类方法,解决现有技术中的恶意代码分类技术无法有效识别混淆的恶意代码、提取的特征数据量大,进而导致恶意代码分类的精度低、速度慢的问题。为解决上述技术问题,本专利技术采用的一个技术方案是提供一种基于图像纹理指纹的恶意代码分类方法,包括步骤:操作码数值化,将所述恶意代码的操作码转换为数值化文件,所述数值化文件进一步转换为二进制文件;双通道灰度图处理,将所述二进制文件映射生成两个向量,所述两个向量对应可视化为双通道灰度图像;单通道灰度图处理,将所述双通道灰度图像经过灰度变换转化为固定灰度级的灰度图,并输出单通道灰度图像;提取纹理特征,利用灰度共生矩阵从所述单通道灰度图像提取图像的纹理特征;恶意代码分类,将所述纹理特征作为所述恶意代码的本质特征,使用随机森林算法对所述纹理特征进行分类。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,在所述操作码数值化中,将所述数值化文件中的数值转换为16bit无符号的二进制文件,在所述二进制文件中,每一个二进制数值进一步分成两部分,其中,第一部分包含低8bit,第二部分包含高8bit。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,在双通道灰度图处理中,所述二进制文件对应生成两个向量,所述向量中的每个元素取值范围为[0,255],其中,第一向量对应所述二进制文件中的第一部分,第二向量对应所述二进制文件中的第二部分,所述第一向量又映射为第一通道灰度图像,所述第二向量又映射为第二通道灰度图像,映射后的第一通道灰度图像和第二通道灰度图像保存为两张PNG图片。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,在所述单通道灰度图处理中,利用灰度级分层算法对所述第一通道灰度图像和第二通道灰度图像进行灰度变换。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,在所述提取纹理特征中,利用灰度共生矩阵从所述单通道灰度图像提取12种纹理特征。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,所述12种纹理特征包括:角二阶矩、对比度、相关性、协方差、反差分矩阵、同质性、差异性、熵、均值和、方差和、和熵、差熵。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,所述随机森林算法对所述纹理特征进行分类的方法包括:步骤1:从恶意代码训练样本集中,应用bootstrap方法有放回的随机抽取K个新的自助样本集,并由此构建K棵决策树,每次未被抽到的样本组成K个袋外数据;步骤2:设有n个特征,则在每一棵决策树的每个节点处随机抽取m(m<=n)个候选特征,通过计算每个候选特征的基尼指数,在m个候选特征中选择具有最小基尼指数值的特征进行节点分裂;步骤3:当每棵决策树中的节点中只有一个类别或节点中的样本数小于最小分裂级数时,停止生长;步骤4:将生成的K棵决策树组成随机森林,用随机森林对新的恶意代码本质特征数据进行分类,分类结果由决策树的投票多少而定;其中基尼指数的计算方法如下:其中,Gini(D)表示所述每一颗树的每一个节点在分裂前包括的数据集D的基尼值计算方法,|y|和pk为所述数据集D的类别数量和每个类别占总数据集的比例;a为所述m个候选特征中的任意一个,Dv表示集合{a=固定属性值},V表示特征a根据其属性值可以划分的总类数,Gini(Dv)表示Dv的基尼值,|D|表示所述数据集D的样本数,|Dv|表示所述集合{a=固定属性值}的样本数,Gini_index(D,a)表述所述数据集D的特征属性a的基尼指数。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,经过灰度级分层算法变换后的所述单通道灰度图像的灰度级为16级。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,所述随机森林中的决策树取值范围为[100,150]。在本专利技术基于图像纹理指纹的恶意代码分类方法另一实施例中,所述随机森林中的决策树取值为100。本专利技术的有益效果是:本专利技术公开了一种基于图像纹理指纹的恶意代码分类方法,通过结合图像分析技术与恶意代码分类技术,将操作码数值化后映射为双通道的无压缩的灰度图像,然后根据灰度变换方法将双通道的图像转化单通道的灰度图,使用灰度共生矩阵提取图像的纹理特征,并将这些特征作为恶意代码的本质特征,最后使用随机森林算法对恶意代码进行分类。本专利技术中的基于图像纹理指纹的恶意代码分类方法,其将操作码的灰度图像灰度级变换到一个很小的数值,这使得灰度共生矩阵的尺寸会比较小,减少了用于表述恶意代码的特征数量,提高了恶意代码的分类速度;另外将操作码数值化后映射为灰度图的方法有效地克服了操作码重排、代码变换等恶意代码混淆问题,提高了恶意代码分类的精度。附图说明图1是本专利技术基于图像纹理指纹的恶意代码分类方法的一实施例流程图;图2是本专利技术中将恶意代码的操作码映射为双通道灰度图的一实施例的示意图;图3是本专利技术中灰度级和基于图像纹理指纹的恶意代码分类方法分类精度之间的关系的示意图;图4是本专利技术中决策树数量和基于图像纹理指纹的恶意代码分类方法分类精度之间的关系的示意图。具体实施方式为了便于理解本专利技术,下面结合附图和具体实施例,对本专利技术进行更详细的说明。附图中给出了本专利技术的较佳的实施例。但是,本专利技术可以以许多不同的形式来实现,并不限于本说明书所描述的实施例。相反地,提供这些实施例的目的是使对本专利技术的公开内容的理解更加透彻全面。需要说明的是,除非另有定义,本说明书所使用的所有的技术和科学术语与属于本专利技术的
的技术人员通常理解的含义相同。在本专利技术的说明书中所使用的术语只是为了描述具体的实本文档来自技高网
...

【技术保护点】
1.一种基于图像纹理指纹的恶意代码分类方法,其特征在于,包括步骤:操作码数值化,将所述恶意代码的操作码转换为数值化文件,所述数值化文件进一步转换为二进制文件;双通道灰度图处理,将所述二进制文件映射生成两个向量,所述两个向量对应可视化为双通道灰度图像;单通道灰度图处理,将所述双通道灰度图像经过灰度变换转化为固定灰度级的灰度图,并输出单通道灰度图像;提取纹理特征,利用灰度共生矩阵从所述单通道灰度图像提取图像的纹理特征;恶意代码分类,将所述纹理特征作为所述恶意代码的本质特征,使用随机森林算法对所述纹理特征进行分类。

【技术特征摘要】
2018.03.14 CN 20181020771291.一种基于图像纹理指纹的恶意代码分类方法,其特征在于,包括步骤:操作码数值化,将所述恶意代码的操作码转换为数值化文件,所述数值化文件进一步转换为二进制文件;双通道灰度图处理,将所述二进制文件映射生成两个向量,所述两个向量对应可视化为双通道灰度图像;单通道灰度图处理,将所述双通道灰度图像经过灰度变换转化为固定灰度级的灰度图,并输出单通道灰度图像;提取纹理特征,利用灰度共生矩阵从所述单通道灰度图像提取图像的纹理特征;恶意代码分类,将所述纹理特征作为所述恶意代码的本质特征,使用随机森林算法对所述纹理特征进行分类。2.根据权利要求1所述的基于图像纹理指纹的恶意代码分类方法,其特征在于,在所述操作码数值化中,将所述数值化文件中的数值转换为16bit无符号的二进制文件,在所述二进制文件中,每一个二进制数值进一步分成两部分,其中,第一部分包含低8bit,第二部分包含高8bit。3.根据权利要求2所述的基于图像纹理指纹的恶意代码分类方法,其特征在于,在双通道灰度图处理中,所述二进制文件对应生成两个向量,所述向量中的每个元素取值范围为[0,255],其中,第一向量对应所述二进制文件中的第一部分,第二向量对应所述二进制文件中的第二部分,所述第一向量又映射为第一通道灰度图像,所述第二向量又映射为第二通道灰度图像,映射后的第一通道灰度图像和第二通道灰度图像保存为两张PNG图片。4.根据权利要求3所述的基于图像纹理指纹的恶意代码分类方法,其特征在于,在所述单通道灰度图处理中,利用灰度级分层算法对所述第一通道灰度图像和第二通道灰度图像进行灰度变换。5.根据权利要求4所述的基于图像纹理指纹的恶意代码分类方法,其特征在于,在所述提取纹理特征中,利用灰度共生矩阵从所述单通道灰度图像提取12种纹理特征。6.根据权利要求5所述的基于图像纹理指...

【专利技术属性】
技术研发人员:钱叶魁卢喜东杜江黄浩杨瑞朋雒朝峰李宇翀
申请(专利权)人:中国人民解放军陆军炮兵防空兵学院郑州校区
类型:发明
国别省市:河南,41

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

1