CN108399335A - 一种基于局部熵的恶意代码可视化分析方法 - Google Patents

一种基于局部熵的恶意代码可视化分析方法 Download PDF

Info

Publication number
CN108399335A
CN108399335A CN201810091504.7A CN201810091504A CN108399335A CN 108399335 A CN108399335 A CN 108399335A CN 201810091504 A CN201810091504 A CN 201810091504A CN 108399335 A CN108399335 A CN 108399335A
Authority
CN
China
Prior art keywords
entropy
malicious code
local entropy
local
analysis method
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201810091504.7A
Other languages
English (en)
Other versions
CN108399335B (zh
Inventor
任卓君
谢锐敏
刘忠利
陈�光
卢文科
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Donghua University
Original Assignee
Donghua University
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Donghua University filed Critical Donghua University
Priority to CN201810091504.7A priority Critical patent/CN108399335B/zh
Publication of CN108399335A publication Critical patent/CN108399335A/zh
Application granted granted Critical
Publication of CN108399335B publication Critical patent/CN108399335B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/562Static detection
    • G06F21/563Static detection by source code analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06F18/24147Distances to closest patterns, e.g. nearest neighbour classification

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于局部熵的恶意代码可视化分析方法,包括以下步骤:计算恶意代码局部熵,生成的熵值序列长度记为L,之后补充个0熵值;计算局部熵的djb2哈希值;将djb2哈希值转换成RGB值;基于RGB值序列生成关于局部熵的方图;提取局部熵方图的Gist特征,并运用KNN分类算法实施分类验证。本发明可用于恶意代码检测及分类。

Description

一种基于局部熵的恶意代码可视化分析方法
技术领域
本发明涉及恶意代码可视化分析技术领域,特别是涉及一种基于局部熵的恶意代码可视化分析方法。
背景技术
恶意代码的编写者通常采用自动化的手段开发恶意代码变种,使其数量迅猛增长,极大的危害信息系统安全。自动化开发的方式往往会重复利用同族恶意代码的核心功能模块,且这些模块的相似性可以通过局部熵的形式反映出来,这为辨识恶意代码族提供了有利的依据。
2015年,韩国汉阳大学的KyongSoo Han等人提出了熵图的方法,该方法计算恶意代码中每256字节块的熵值,从而生成关于局部熵的直方图,之后运用直方图比较算法(Strelkov V V.A new similarity measure for histogram comparison and itsapplication in time series analysis[J].Pattern Recognition Letters,2008,29(13):1768-1774.)来检测和分类恶意代码。如图1所示,恶意代码经局部熵计算生成熵直方图。在实施恶意代码分类的过程中,该方法将待比较的熵图以最大熵值作为熵图长度截取的对齐标准,同时兼顾两直方图间对应熵值相似度期望k1和对应最近局部极值相似度期望k2对整体相似度的影响,分别给予t1=0.7和t2=0.3的权重,以S=t1*k1+t2*k2计算两直方图之间的相似度。
虽然Han K S,Lim J H,Kang B,et al.Malware analysis using visualizedimages and entropy graphs[J].International Journal ofInformation Security,2015,14(1):1-14.的方法可以在视觉上呈现同族恶意代码拥有相似的熵图区域,但该方法在实施分类时存在以下问题。1、因熵图的长度受恶意代码文件大小的影响存在着差异,只能截取部分等长区域计算相似度,这使得用于分类的特征不完整;2、以最大熵值作为截取依据的直方图相似度算法无法将比较范围准确定位于相似功能模块所形成的局部熵区域,因此无法满足该方法的分类前提,即相似模块可以用于检测恶意变种。这些因素影响了该方法在恶意代码分类应用上的准确性。
发明内容
本发明所要解决的技术问题是提供一种基于局部熵的恶意代码可视化分析方法,可用于恶意代码检测及分类。
本发明解决其技术问题所采用的技术方案是:提供一种基于局部熵的恶意代码可视化分析方法,包括以下步骤:
(1)计算恶意代码局部熵,生成的熵值序列长度记为L,之后补充个0熵值;
(2)计算局部熵的djb2哈希值;
(3)将djb2哈希值转换成RGB值;
(4)基于RGB值序列生成关于局部熵的方图;
(5)提取局部熵方图的Gist特征,并运用KNN分类算法实施分类验证。
所述步骤(2)具体为:将所得的长度为的熵值序列,以字符形式分别计算每个熵值的djb2哈希值。
所述步骤(3)中djb2哈希值为24个bit位,每8位一组计算,分别得到RGB三色通道的颜色值。
所述步骤(4)具体为:将所得的RGB值序列按每行个像素点的自然顺序依次排列,生成的关于局部熵方图。
有益效果
由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:
在视觉分析方面,本发明能从视觉感知上使所生成的同族恶意样本相似,而异族样本之间明显可区分;在演进分析方面,能通过局部熵反映出相似功能模块在熵方图上的位置变化,为待测样本是否归属某一族提供了依据;在交互分析方面,本发明不仅构建了安全分析人员与恶意样本之间的视觉通信,降低了人工分析的难度,还能以程序自动化的方式操作,进一步降低了对相关人员专业技术的要求;在检测分类方面,本发明提取图片的纹理特征作为分类依据,充分利用每个熵值,可使分类特征更全面、分类判定更准确;在时效性方面,本发明应用降维映射的方法能减少图片生成的时间开销,提高识别分类的效率。
附图说明
图1是现有技术中熵图方法示意图;
图2是Trojan-Downloader.Win32.QQHelper类样本.gfk可视化后的示例图;
图3是Trojan-Spy.Win32.WinSpy类样本.fq可视化后的示例图;
图4是Trojan-Spy.Win32.WinSpy类样本.ou可视化后的示例图;
图5是Trojan-Spy.Win32.WinSpy类样本.tz可视化后的示例图;
图6是本发明的流程图。
具体实施方式
下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。
本发明的实施方式涉及一种基于局部熵的恶意代码可视化分析方法,如图6所示,先计算恶意代码的局部熵值,补充0熵值至整个熵值序列长度为某最小整数乘方;在此基础上,以字符形式计算各熵值的djb2哈希值;再将所得24位djb2哈希值转化为RGB颜色值,按自然顺序排列像素点以生成关于局部熵的方图。该方法将恶意代码降维至其熵值表示,大幅度减少了分析文件时的运算开销;同时,相似功能模块所形成的局部熵图案,便于研究同族恶意代码的演变规律;此外,该方法借助纹理分析方法,提取这些方图的Gist特征,并运用K-Nearest Neighbor(KNN)分类算法实施分类验证,再次以降维的方式减少了分析时间成本,提高了判定分类的效率。
下面通过具体的实施例对本发明进行详细说明。用于验证本发明分类正确率的样本是从VX Heavens官方网站下载的24类共计7162个以卡巴斯基命名规则命名的恶意样本。
实施例1
一种基于局部熵的恶意代码可视化分析方法,具体为:
步骤1:与KyongSoo Han等人提出的熵图方法一样,本发明也需计算恶意代码中每256字节块的熵值。不同的是,为后续步骤能生成局部熵方图,本发明需在生成的熵值序列后填充0熵值,以使最终的熵值序列长度可被开平方。以Trojan-Downloader.Win32.QQHelper类样本.gfk为例,该恶意代码文件大小为636471字节,熵序列依次为1.23619305365、0.730780826873、3.61392762918、……,长度为2487,补充13个0熵值,补充后长度为2500;
步骤2:将上一步骤所得的熵值序列,以字符形式分别计算每个熵值的djb2哈希值,其十进制表示依次为2620223、9919006、12915980、……;
步骤3:将上一步骤所得djb2哈希值序列转换为RGB颜色值,由于djb2哈希值为24个bit位,因此每8位一组计算,分别得到RGB三色通道的颜色值,依次为(39,251,63)、(151,90,30)、(197,21,12)、……;
步骤4:上一步骤所得的颜色序列按每行50个像素点的自然顺序排列,生成50*50的方图,如图2所示。
将全部7162个恶意样本转化成图片后,提取这些图片的Gist特征,应用KNN分类算法,对本发明所提的可视化方法进行了10次交叉验证,结果分别为0.9655、0.9571、0.9584、0.9597、0.9499、0.9665、0.9565、0.9761、0.9548、0.9773,因此本发明针对该样本集的平均分类正确率为0.9622。同时,本发明又将这7162个恶意样本与9175个正常的可执行文件进行10次交叉验证,结果分别为0.9615、0.9719、0.9682、0.9700、0.9602、0.9682、0.9675、0.9682、0.9694、0.9657,因此本发明针对上述样本集的平均识别正确率为0.9671。
本发明中,恶意代码转化为基于局部熵的方图,其平均生成时间为0.8993秒;完成全部7162个样本的特征提取总用时为1分22.19秒,分类总用时为2.0006秒。而将Han K S,Lim J H,Kang B,et al.Malware analysis using visualized images and entropygraphs[J].International Journal ofInformation Security,2015,14(1):1-14.的方法应用于同一数据集,所花费的相似度比较总用时为437.42小时(即18.22天),平均分类正确率为0.3656,平均识别正确率为0.6042,由此说明KyongSoo Han提出的熵图方法不适用于恶意样本分类及识别。通过以上实验数据的对比,说明本发明所提方法在恶意代码分类效果和用时成本方面均取得了较优的结果。
实施例2
采用实施例1所述的基于局部熵的恶意代码可视化分析方法,生成Trojan-Spy.Win32.WinSpy类样本.fq、.ou、.tz的图像,如图3-5所示,本发明在进行同族恶意样本分析时,能通过局部熵方图发现其间的细微差异,为掌握该族变种发展变化的趋势提供了依据。

Claims (4)

1.一种基于局部熵的恶意代码可视化分析方法,其特征在于,包括以下步骤:
(1)计算恶意代码局部熵,生成的熵值序列长度记为L,之后补充个0熵值;
(2)计算局部熵的djb2哈希值;
(3)将djb2哈希值转换成RGB值;
(4)基于RGB值序列生成关于局部熵的方图;
(5)提取局部熵方图的Gist特征,并运用KNN分类算法实施分类验证。
2.根据权利要求1所述的基于局部熵的恶意代码可视化分析方法,其特征在于,所述步骤(2)具体为:将所得的长度为的熵值序列,以字符形式分别计算每个熵值的djb2哈希值。
3.根据权利要求1所述的基于局部熵的恶意代码可视化分析方法,其特征在于,所述步骤(3)中djb2哈希值为24个bit位,每8位一组计算,分别得到RGB三色通道的颜色值。
4.根据权利要求1所述的基于局部熵的恶意代码可视化分析方法,其特征在于,所述步骤(4)具体为:将所得的RGB值序列按每行个像素点的自然顺序依次排列,生成的关于局部熵的方图。
CN201810091504.7A 2018-01-30 2018-01-30 一种基于局部熵的恶意代码可视化分析方法 Active CN108399335B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810091504.7A CN108399335B (zh) 2018-01-30 2018-01-30 一种基于局部熵的恶意代码可视化分析方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810091504.7A CN108399335B (zh) 2018-01-30 2018-01-30 一种基于局部熵的恶意代码可视化分析方法

Publications (2)

Publication Number Publication Date
CN108399335A true CN108399335A (zh) 2018-08-14
CN108399335B CN108399335B (zh) 2022-05-06

Family

ID=63095864

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810091504.7A Active CN108399335B (zh) 2018-01-30 2018-01-30 一种基于局部熵的恶意代码可视化分析方法

Country Status (1)

Country Link
CN (1) CN108399335B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109858249A (zh) * 2019-02-18 2019-06-07 暨南大学 移动恶意软件大数据的快速智能比对和安全检测方法
CN111488574A (zh) * 2020-04-08 2020-08-04 湖南大学 恶意软件分类方法、系统、计算机设备和存储介质
CN112329016A (zh) * 2020-12-31 2021-02-05 四川大学 一种基于深度神经网络的可视化恶意软件检测装置及方法
CN112380535A (zh) * 2020-11-13 2021-02-19 重庆科技学院 一种基于cbow的恶意代码三通道可视化识别方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104376260A (zh) * 2014-11-20 2015-02-25 东华大学 一种基于香农信息熵的恶意代码可视化分析方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104376260A (zh) * 2014-11-20 2015-02-25 东华大学 一种基于香农信息熵的恶意代码可视化分析方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
KYOUNGSOO HAN 等: "Malware Analysis Using Visualized Image Matrices", 《THE SCIENTIFIC WORLD JOURNAL》 *
任卓君 等: "熵可视化方法在恶意代码分类中的应用", 《计算机工程》 *

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109858249A (zh) * 2019-02-18 2019-06-07 暨南大学 移动恶意软件大数据的快速智能比对和安全检测方法
CN109858249B (zh) * 2019-02-18 2020-08-07 暨南大学 移动恶意软件大数据的快速智能比对和安全检测方法
CN111488574A (zh) * 2020-04-08 2020-08-04 湖南大学 恶意软件分类方法、系统、计算机设备和存储介质
CN111488574B (zh) * 2020-04-08 2023-04-07 湖南大学 恶意软件分类方法、系统、计算机设备和存储介质
CN112380535A (zh) * 2020-11-13 2021-02-19 重庆科技学院 一种基于cbow的恶意代码三通道可视化识别方法
CN112380535B (zh) * 2020-11-13 2022-04-19 重庆科技学院 一种基于cbow的恶意代码三通道可视化识别方法
CN112329016A (zh) * 2020-12-31 2021-02-05 四川大学 一种基于深度神经网络的可视化恶意软件检测装置及方法

Also Published As

Publication number Publication date
CN108399335B (zh) 2022-05-06

Similar Documents

Publication Publication Date Title
CN107423701B (zh) 基于生成式对抗网络的人脸非监督特征学习方法及装置
CN108399335A (zh) 一种基于局部熵的恶意代码可视化分析方法
CN103886301B (zh) 一种人脸活体检测方法
CN110033000A (zh) 一种票据图像的文本检测与识别方法
CN111027631B (zh) 高压耐张线夹压接缺陷判别的x射线影像分类识别方法
CN111126240B (zh) 一种三通道特征融合人脸识别方法
CN101295359B (zh) 图像处理装置及图像处理方法
CN113128271A (zh) 脸部图像的伪造检测
CN103839042B (zh) 人脸识别方法和人脸识别系统
CN110659586B (zh) 一种基于身份保持循环式生成式对抗网络的步态识别方法
CN104376260B (zh) 一种基于香农信息熵的恶意代码可视化分析方法
CN107316029A (zh) 一种活体验证方法及设备
CN107437293A (zh) 一种基于票据全局特征的票据防伪鉴别方法
Zhang et al. An optimized training method for GAN-based hyperspectral image classification
Zhou et al. Fast minutiae extractor using neural network
CN111222447A (zh) 基于神经网络及多通道融合lbp特征的活体检测方法
CN114937298A (zh) 一种基于特征解耦的微表情识别方法
CN107368819A (zh) 人脸识别方法及系统
CN112200075B (zh) 一种基于异常检测的人脸防伪方法
CN113033305A (zh) 活体检测方法、装置、终端设备和存储介质
CN108399334A (zh) 一种基于操作码频率的恶意代码可视化分析方法
CN110334778B (zh) 基于描述内容与图像内容特征的图像综合相似分析方法
CN108446558A (zh) 一种基于空间填充曲线的恶意代码可视化分析方法
Singh et al. Learning a shared transform model for skull to digital face image matching
Sabeena et al. Digital image forgery detection using local binary pattern (LBP) and Harlick transform with classification

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant