CN113935033A - 特征融合的恶意代码家族分类方法、装置和存储介质 - Google Patents
特征融合的恶意代码家族分类方法、装置和存储介质 Download PDFInfo
- Publication number
- CN113935033A CN113935033A CN202111071137.2A CN202111071137A CN113935033A CN 113935033 A CN113935033 A CN 113935033A CN 202111071137 A CN202111071137 A CN 202111071137A CN 113935033 A CN113935033 A CN 113935033A
- Authority
- CN
- China
- Prior art keywords
- features
- similarity
- malware
- malicious
- matrix
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 239000011159 matrix material Substances 0.000 claims abstract description 98
- 238000003384 imaging method Methods 0.000 claims abstract description 45
- 238000003062 neural network model Methods 0.000 claims abstract description 35
- 238000012549 training Methods 0.000 claims abstract description 23
- 238000012360 testing method Methods 0.000 claims abstract description 18
- 230000003068 static effect Effects 0.000 claims abstract description 16
- 238000013528 artificial neural network Methods 0.000 claims description 8
- 238000012545 processing Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 5
- 238000004590 computer program Methods 0.000 claims description 4
- 238000010200 validation analysis Methods 0.000 claims description 4
- 238000012795 verification Methods 0.000 claims description 4
- 230000004927 fusion Effects 0.000 abstract description 10
- 238000004458 analytical method Methods 0.000 description 9
- 230000008569 process Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 4
- 230000006399 behavior Effects 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 244000035744 Hura crepitans Species 0.000 description 2
- 238000007792 addition Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000012706 support-vector machine Methods 0.000 description 2
- 241000700605 Viruses Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- ZXQYGBMAQZUVMI-GCMPRSNUSA-N gamma-cyhalothrin Chemical compound CC1(C)[C@@H](\C=C(/Cl)C(F)(F)F)[C@H]1C(=O)O[C@H](C#N)C1=CC=CC(OC=2C=CC=CC=2)=C1 ZXQYGBMAQZUVMI-GCMPRSNUSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
- G06F21/563—Static detection by source code analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/561—Virus type analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
Abstract
本发明提供一种特征融合的恶意代码家族分类方法、装置和存储介质。所述方法包括以下步骤:提取恶意软件的操作码特征、字节特征、图像化特征和静态统计特征;根据恶意软件的操作码特征、字节特征和图像化特征构建恶意软件之间的相似度矩阵和邻接矩阵,基于所述邻接矩阵获得恶意软件关系图;以及以样本集合中的样本和所述恶意软件关系图为输入,使用图神经网络模型对恶意软件进行模型的训练和测试,从而获得恶意代码家族分类结果。通过将多种特征混合使用,同时结合图神经网络模型获取恶意软件之间的关系并使用,本发明实现了多种特征的有机融合,比传统方法更加合理,可以大大降低训练样本数量,可以提升恶意软件家族进行分类的准确度和复杂度。
Description
技术领域
本发明计算机软件技术领域,具体是一种多层次特征融合的恶意代码家族分类方法、装置和存储介质。
背景技术
恶意软件指经过有意编程、旨在损害或偏离系统的预期功能的软件,例如损害其安全性或散布敏感数据。恶意软件最知名的版本是病毒、蠕虫、特洛伊木马、间谍软件、广告软件和逻辑炸弹等。新恶意软件变种的数量增长非常快,这主要是因为使用了代码混淆技术(二进制混淆,代码加壳),这使得很容易产生越来越多的新变种。
广泛传播的恶意软件给组织和个人造成了重大的经济麻烦,这使得恶意软件检测成为计算机安全的热门话题。从理论上讲,检测恶意可执行文件通常被认为是一个难题。如今,大多数常用的恶意软件检测软件正在使用基于签名的算法(签名方法),以基于至少一个字节代码模式的存在来识别恶意软件实例,该至少一个字节的代码模式已在已知恶意软件的签名数据库中列出。但是签名方法的缺点是无法检测未知恶意软件。签名方法的另一个缺点是签名的数据库呈指数增长,这使得基于签名的检测器消耗越来越多的资源。
为了解决签名方法的缺点,研究者们提出了几种方法来检查可疑程序的基本行为,因为对于攻击者而言,完全改变恶意软件的行为要比改变其语法结构更困难。因此,一个行为规范可以映射到多个实例。
随着恶意软件数量的快速增加,单纯的恶意软件检测,即判断样本是否是恶意软件,已经无法满足安全领域工作者的需要。恶意软件家族化的程度越来越高,找到恶意软件所属的家族,即恶意软件家族分析,才是研究人员需要关注的重点。恶意软件家族分析根据其分析方法可以分为动态分析和静态分析两大领域。动态分析方法是指在恶意软件运行时对可执行软件进行监视或在运行后对环境进行检查。然而,对恶意软件运行进行监控的过程需要安全的环境,如虚拟机和沙箱,和大量的资源。同时,某些恶意软件可以检测其是否在虚拟机或沙箱中运行,随后选择是否改变自己的执行方式,或者需要某种触发条件来执行其恶意部分,从而使恶意软件分析过程更加困难。此外,运行物联网IoT恶意软件的执行还面临着很多问题,例如不同的体系结构,不同的操作系统,不同的CPU架构等,因此很难配置一个满足物联网可执行文件功能要求的环境,使其能够正确的运行并监控恶意软件。相比而言,静态分析方法在不执行恶意软件的基础上,检查和分析可执行文件的代码或结构。包括提取可打印的字符串,操作码序列,文件头信息,API调用,函数调用图,控制流图等,再使用机器学习算法例如支持向量机(SVM)、密集轨迹(DT)、最邻近(KNN)算法等方法进行分析。静态分析方法所提取的特征,一般通过反汇编等技术从源代码中直接提取,因此不需要考虑处理器架构、虚拟环境、操作系统等因素,直接对恶意软件样本进行分析,解决了物联网设备异构性强的问题。但是这些特征往往需要人为选择和提取,需要大量的先验知识作为支撑,效率很低且开销很大,同时依赖于专家知识,受到很多人为因素的影响。
近年来,深度学习技术迅速发展,这些技术,例如卷积神经网络(CNN)、循环神经网络(RNN)等,拥有多层网络结构,具有强大的表达和建模能力,同时特征提取可以自动进行,不依赖于专家知识,避免了人为因素的影响。但是这些方法往往忽视了一些信息,CNN将恶意软件的二进制文件直接转换为图像,通常会丢失恶意软件的内部信息,RNN虽然提取了恶意软件内部的序列信息,但是忽视了恶意软件之间的联系,因此大大影响了恶意软件家族分类的准确性。
发明内容
针对现有技术中存在的问题,本发明实施例提供了一种多层次特征融合的恶意代码家族分类方法、装置和存储介质,将恶意软件的操作码特征、字节特征、图像化特征和静态统计特征等多种特征混合使用,同时结合图神经网络模型获取恶意软件之间的关系,实现了多种特征的有机融合,比传统方法更加合理。
本发明的一个方面,提供了一种特征融合的恶意代码家族分类方法,该方法包括以下步骤:
提取恶意软件的操作码特征、字节特征、图像化特征和静态统计特征;
根据恶意软件的操作码特征、字节特征和图像化特征构建恶意软件之间的相似度矩阵和邻接矩阵,基于所述邻接矩阵获得恶意软件关系图;以及
以样本集合中的样本和所述恶意软件关系图输入图神经网络模型,对图神经网络模型分别进行训练和测试,以基于经训练的图神经网络模型获得恶意代码家族分类结果。
在本发明一些实施方式中,所述操作码特征包括操作码序列n-gram统计特征;
所述字节特征包括字节序列n-gram统计特征;
所述图像化特征为恶意软件灰度图;
所述静态统计特征包括以下特征中的一种或多种:关键API出现次数,关键特殊字符串出现次数,恶意软件文件大小,恶意软件汇编代码节信息,恶意软件元数据,恶意软件文件头信息,恶意软件文件熵和恶意软件函数调用图。
在本发明一些实施方式中,所述样本集合包括训练样本集合、验证样本集合和测试样本集合;所述训练样本集合、验证样本集合中的样本含有:恶意代码标签、恶意代码的ID和样本特征,所述测试样本集合中的样本含有恶意代码的ID和样本特征,所述恶意代码标签为恶意代码所属的家族的标识。
在本发明一些实施方式中,所述根据恶意软件的操作码特征、字节特征和图像化特征构建恶意软件之间的相似度矩阵和邻接矩阵,基于所述邻接矩阵获得恶意软件关系图,包括:对每一恶意软件节点的操作码序列特征、字节序列特征和图像化特征,采用图像化处理算法计算其与其余节点相应特征的相似度,所述相应特征的相似度包括:操作码序列特征相似度、字节序列特征相似度和图像化特征相似度;根据计算出的相应特征的相似度构建相应特征的相似度矩阵,所述相应特征的相似度矩阵包括:操作码特征相似度矩阵、字节特征相似度矩阵和图像化特征相似度矩阵;基于所述相应特征的相似度矩阵构建整体相似度矩阵;以及基于所述整体相似度矩阵构建邻接矩阵。
在本发明一些实施例中,基于所述相应特征的相似度矩阵构建整体相似度矩阵包括:通过将操作码特征相似度矩阵、字节特征相似度矩阵和图像化特征相似度矩阵来获得整体相似度矩阵;在构建的邻接矩阵中,与整体相似度矩阵中每一行的相似度值最大的预定个数的元素对应的元素的值为1,其他元素值为0。
在本发明一些实施例中,所述方法还包括:所述方法还包括:优化邻接矩阵得到优化后的邻接矩阵,该优化邻接矩阵的步骤包括:在构建的邻接矩阵中,若存在仅有一个元素的值为1的行,则将该行中与图像化特征相似度矩阵的相应行中值最大的元素对应的元素的值设置为1。
在本发明一些实施例中,所述图像化处理算法包括以下算法中的一种:热核相似度算法和余弦相似度算法;所述图神经网络模型为以下图神经网络模型中的一种:图卷积神经网络GCN模型、GraphSage模型和图注意力网络GAT模型。
在本发明一些实施例中,所述方法还包括:利用多种图神经网络模型进行混合训练;通过投票表决获得各图神经网络的得票数,按多票数优先的方式选取图神经网络模型进行恶意软件家族分类。
本发明的另一方面,提供了一种特征融合的恶意代码家族分类装置,该装置包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述方法的步骤。
本发明的又一方面,还提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如前所述方法的步骤。
本发明实施例提供的多层次特征融合的恶意代码家族分类方法和装置,通过将多种特征混合使用,同时结合图神经网络模型获取恶意软件之间的关系并使用,实现了多种特征的有机融合,比传统方法更加合理,可以大大降低训练样本数量,可以提升恶意软件家族进行分类的准确度和复杂度。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在书面说明及其权利要求书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例中多层次特征融合的恶意代码家族分类方法流程示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
为了解决现有的恶意代码家族分类方法效率很低且开销大、提取特征单一,没有考虑恶意软件之间的关联等问题,本发明提出了一种基于图神经网络和多层次特征的恶意软件家族分类方法,也称为多层次特征融合的恶意代码家族分类方法,如图1所示,该方法包括以下步骤:
步骤S110,提取恶意软件的操作码特征、字节特征、图像化特征和静态统计特征。
在本发明一些实施例中,提取恶意软件的操作码特征、字节特征、图像化特征和静态统计特征均可以是现有技术被使用的操作码特征、字节特征、图像化特征和静态统计特征。作为示例,操作码特征例如可以包括操作码序列n-gram统计特征等;字节特征例如可包括字节序列n-gram统计特征等;图像化特征例如可以是恶意软件灰度图;静态统计特征例如可以包括以下特征中的一种或多种:关键API出现次数,关键特殊字符串出现次数,恶意软件文件大小,恶意软件汇编代码节信息,恶意软件元数据,恶意软件文件头信息,恶意软件文件熵,恶意软件函数调用图等。以上列举的操作码特征、字节特征、图像化特征和静态统计特征仅为示例,本发明并不限于此,并且,本发明还可以囊括其他新提取的特征。本发明的恶意代码家族分类模型有很好的灵活性和扩展性。
在本发明一些实施例中,提取图像化特征的方法,即提取恶意软件灰度图的方法有很多,常用的方法比如将恶意软件的字节转换为像素值,进而转换为灰度图。任何可以转换灰度图的模型都可以用于本发明。
步骤S120,根据恶意软件的操作码特征、字节特征和图像化特征构建恶意软件之间的相似度矩阵和邻接矩阵,基于邻接矩阵获得恶意软件关系图。
在本发明一些实施例中,本步骤S120具体包括:
(1)对每一恶意软件节点的操作码序列特征、字节序列特征和图像化特征,采用图像化处理算法计算其与其余节点相应特征的相似度。
所述相应特征的相似度包括:操作码序列特征相似度、字节序列特征相似度和图像化特征相似度。
也即,每一恶意软件代表一个节点,对每一个恶意软件节点的操作码序列特征、字节序列特征和图像化特征,可采用图像化处理算法,如热核(Heat Kernel)相似度算法等或常见的相似度算法(如余弦相似度算法)等计算它与其余节点的相应特征的相似度,可分别得到操作码序列特征相似度、字节序列特征相似度和图像化特征相似度。
(2)根据每一特征(操作码序列特征、字节序列特征和图像化特征)计算出的相似度构建相应特征的相似度矩阵。
具体地,所述相应特征的相似度矩阵包括:操作码特征相似度矩阵Sopcode、字节特征相似度矩阵Sbyte和图像化特征相似度矩阵Simage。
相似度矩阵St(t=image,byte,opcode)的表现方式为:
该相似度矩阵为n*n矩阵,其中,n为恶意软件节点数。
上述相似度矩阵St中,Sij表示节点i和节点j之间的相似度的值,相似度的值为[0,1]之间的数值,并且S11=S22=...=Sii=Snn=1,即各个节点自身的相似度最大,值为1。
(3)根据步骤(2)中得到相应特征的相似度矩阵(Sopcode、Sbyte和Simage),构建整体相似度矩阵S。
在本发明一实施例中,可以基于如下公式构建整体相似度矩阵:
S=Sopcode×Sbyte×Simage;
也即,通过将操作码特征相似度矩阵、字节特征相似度矩阵和图像化特征相似度矩阵来获得整体相似度矩阵。得到的矩阵仍然为n*n矩阵。
(4)基于步骤(3)中得到的整体相似度矩阵S,可得到邻接矩阵A:
构建的邻接矩阵为n*n矩阵。在构建的邻接矩阵中,与整体相似度矩阵中每一行的相似度值最大的预定个数的元素对应的元素的值为1,其他元素值为0。
例如,对于邻接矩阵的第i行的元素,与整体相似度矩阵中第i行的Si1至Sin中排在前K个的元素Sij对应的元素Aij=1,其他的Aij=0。
在Si1至Sin中排名前K的元素Sij中,如果存在多个(m个)并列第K,则与应K+m-1个Sij对应的K+m-1个Aij的值为1,改行其他Aij为0。
在本发明的可选实施例中,还可以对邻接矩阵A进一步进行优化完善,来得到优化后的邻接矩阵A′。更具体地,在构建的邻接矩阵中,若存在仅有一个元素的值为1的行,为了增强各节点之间的关联性,可以将邻接矩阵的当前行中与图像化特征相似度矩阵的相应行中值最大的元素对应位置的元素的值设置为1。
例如,在邻接矩阵A中,对于第i行,如果存在Ain=0(n=1,2,3,…,i-1,i+1,…,N),Aii=1,则选取该行中与满足Simageij=max(Simage in(n=1,2,3,…,i-1,i+1,…,N))的Sij对应位置的元素的Aij的值设置为1,使得节点i与节点j之间具有关联。
得到了邻接矩阵A或优化的邻接矩阵A′后,变可以基于体现节点间关系的邻接矩阵获得恶意软件关系图G。
在本发明一些实施例中,恶意软件关系图G可以定义为G=(V,E),其中V={v1,v2,…,vi,…,vn}可以是恶意软件节点集合,其中vi表示ID为i的恶意软件;E={Eij}是无向边集合,若vi和vj有关系,则Eij=1,否则Eij=0,此处Eij的值与邻接矩阵A中Aij的值或优化的邻接矩阵A′中A′ij的值对应。
步骤S130,以样本集合中的样本和所述恶意软件关系图输入图神经网络模型,对图神经网络模型分别进行训练和测试,以基于经训练的图神经网络模型获得恶意代码家族分类结果。
在本发明一实施例中,样本集合可包括训练样本集合、验证样本集合和测试样本集合。样本集合中样本的格式为[标签,ID编号,特征]。更具体地,训练样本集合和验证样本集合中的样本可具有:恶意代码标签、恶意代码的ID和样本特征。测试样本集合中的样本可含有恶意代码的ID和样本特征,恶意代码标签为空,样本被输入至训练好的模型中进行测试之后便可针对该样本产生恶意代码标签。恶意代码标签表示恶意代码所属的家族的标识,每个恶意软件样本都有一个所属的家族。恶意代码的ID是恶意代码的身份标识,使得每一个恶意软件都有一个唯一的标识。样本特征可包括前述提取的静态统计特征。
在本发明一些实施例中,所采用的图神经网络模型可以是图卷积神经网络(GCN)、GraphSage和图注意力网络(GAT)等现有的神经网络模型,但本发明并不限于此,也可以是新出现的适用于本发明的其他图神经网络模型。
在本发明一些实施例中,在图神经网络模型的训练阶段,可将训练样本集中的样本和得到的恶意软件关系图输入至待训练的图神经网络模型,利用训练样本中的恶意代码标签对图神经网络模型进行训练。训练之后,可进一步对图神经网络模型进行验证,此时,将验证样本集中的样本和得到的恶意软件关系图输入至待训练的图神经网络模型,利用验证样本中的恶意代码标签对图神经网络模型进行验证,以进一步优化图神经网络模型的参数。在测试阶段,可将测试样本集中的样本和得到的恶意软件关系图输入至待训练的图神经网络模型,从而可以得到恶意代码家族分类结果。
拿到一批恶意软件样本后,在对其进行家族分类之前,可首先提取所有恶意软件样本的操作码特征、字节特征、图像化特征和静态统计特征,随后根据操作码特征、字节特征、图像化特征构建恶意软件相似度矩阵和邻接矩阵(恶意软件关系图)。然后将样本和恶意软件关系图输入训练好的模型中进行测试,来得到分类结果。
在本发明实施例中,通过多层次特征融合,仅需要很少的训练样本就可以获得高准确度的恶意软件家族分类结果,因此大大提高了恶意软件家族分类效率并降低了开销。
本发明一些实施例中,还可以使用集成学习,将多种图神经网络模型进行混合训练,然后使用投票表决,按照各图神经网络的得票数,按多票数优先的方式选取图神经网络模型进行恶意软件家族分类。具体投票过程例如可以包括:使用一批数据训练多个网络,得到多个已经训练好的模型,在测试时,每一个模型都将根据输入的测试数据给出一个自己的分类结果,这些结果可能相同也可能不同,选择出现最多的那个分类结果作为最终的分类结果,这个过程就相当于模型们通过投票的方式,以多票数优先的原则选择了最终的分类结果。
本发明技术方案将多种特征混合使用,同时结合图神经网络模型获取恶意软件之间的关系并使用,实现了多种特征的有机融合,将多视图转换为单个图的构建过程,比传统方法更加合理,不仅可以降低训练集中的训练样本数,相比现有的方法,还可以提高恶意软件家族分类的准确度。
与上述方法相应地,本发明还提供了一种多层次特征融合的恶意代码家族分类装置,包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如前所述边缘计算服务器部署方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述边缘计算服务器部署方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如光盘、U盘、软盘、硬盘等。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种特征融合的恶意代码家族分类方法,其特征在于,该方法包括以下步骤:
提取恶意软件的操作码特征、字节特征、图像化特征和静态统计特征;
根据恶意软件的操作码特征、字节特征和图像化特征构建恶意软件之间的相似度矩阵和邻接矩阵,基于所述邻接矩阵获得恶意软件关系图;以及
以样本集合中的样本和所述恶意软件关系图输入图神经网络模型,对图神经网络模型分别进行训练和测试,以基于经训练的图神经网络模型获得恶意代码家族分类结果。
2.根据权利要求1所述的方法,其特征在于,
所述操作码特征包括操作码序列n-gram统计特征;
所述字节特征包括字节序列n-gram统计特征;
所述图像化特征为恶意软件灰度图;
所述静态统计特征包括以下特征中的一种或多种:关键API出现次数,关键特殊字符串出现次数,恶意软件文件大小,恶意软件汇编代码节信息,恶意软件元数据,恶意软件文件头信息,恶意软件文件熵和恶意软件函数调用图。
3.根据权利要求1所述的方法,其特征在于,所述样本集合包括训练样本集合、验证样本集合和测试样本集合;
所述训练样本集合、验证样本集合中的样本含有:恶意代码标签、恶意代码的ID和样本特征,所述测试样本集合中的样本含有恶意代码的ID和样本特征,所述恶意代码标签为恶意代码所属的家族的标识。
4.根据权利要求1所述的方法,其特征在于,所述根据恶意软件的操作码特征、字节特征和图像化特征构建恶意软件之间的相似度矩阵和邻接矩阵,基于所述邻接矩阵获得恶意软件关系图,包括:
对每一恶意软件节点的操作码序列特征、字节序列特征和图像化特征,采用图像化处理算法计算其与其余节点相应特征的相似度,所述相应特征的相似度包括:操作码序列特征相似度、字节序列特征相似度和图像化特征相似度;
根据计算出的相应特征的相似度构建相应特征的相似度矩阵,所述相应特征的相似度矩阵包括:操作码特征相似度矩阵、字节特征相似度矩阵和图像化特征相似度矩阵;
基于所述相应特征的相似度矩阵构建整体相似度矩阵;
基于所述整体相似度矩阵构建邻接矩阵。
5.根据权利要求4所述的方法,其特征在于,基于所述相应特征的相似度矩阵构建整体相似度矩阵包括:通过将操作码特征相似度矩阵、字节特征相似度矩阵和图像化特征相似度矩阵来获得整体相似度矩阵;
在构建的邻接矩阵中,与整体相似度矩阵中每一行的相似度值最大的预定个数的元素对应的元素的值为1,其他元素值为0。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:优化邻接矩阵得到优化后的邻接矩阵,该优化邻接矩阵的步骤包括:
在构建的邻接矩阵中,若存在仅有一个元素的值为1的行,则将该行中与图像化特征相似度矩阵的相应行中值最大的元素对应的元素的值设置为1。
7.根据权利要求4所述的方法,其特征在于,
所述图像化处理算法包括以下算法中的一种:热核相似度算法和余弦相似度算法;
所述图神经网络模型为以下图神经网络模型中的一种或多种:图卷积神经网络GCN模型、GraphSage模型和图注意力网络GAT模型。
8.根据权利要求7所述的方法,其特征在于,所述方法还包括:
利用多种图神经网络模型进行混合训练;
通过投票表决获得各图神经网络的得票数,按多票数优先的方式选取图神经网络模型进行恶意软件家族分类。
9.一种特征融合的恶意代码家族分类装置,包括处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该装置实现如权利要求1至8中任意一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8中任意一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111071137.2A CN113935033A (zh) | 2021-09-13 | 2021-09-13 | 特征融合的恶意代码家族分类方法、装置和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111071137.2A CN113935033A (zh) | 2021-09-13 | 2021-09-13 | 特征融合的恶意代码家族分类方法、装置和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113935033A true CN113935033A (zh) | 2022-01-14 |
Family
ID=79275867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111071137.2A Pending CN113935033A (zh) | 2021-09-13 | 2021-09-13 | 特征融合的恶意代码家族分类方法、装置和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113935033A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115062303A (zh) * | 2022-05-31 | 2022-09-16 | 四川大学 | 基于原始有效载荷和深度学习的Android恶意软件分类方法 |
CN115577361A (zh) * | 2022-12-09 | 2023-01-06 | 四川大学 | 一种改进的基于图神经网络的PHP Web shell检测方法 |
CN116861431A (zh) * | 2023-09-05 | 2023-10-10 | 国网山东省电力公司信息通信公司 | 基于多通道图像和神经网络的恶意软件分类方法及系统 |
CN117113351A (zh) * | 2023-10-18 | 2023-11-24 | 广东省科技基础条件平台中心 | 一种基于多重多级预训练的软件分类方法及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829306A (zh) * | 2019-02-20 | 2019-05-31 | 哈尔滨工程大学 | 一种优化特征提取的恶意软件分类方法 |
CN111241544A (zh) * | 2020-01-08 | 2020-06-05 | 北京梆梆安全科技有限公司 | 一种恶意程序识别方法、装置、电子设备及存储介质 |
KR20200076426A (ko) * | 2018-12-19 | 2020-06-29 | 건국대학교 산학협력단 | 이종 정보 네트워크 기반 악성 코드 탐지 방법 및 장치 |
CN112214767A (zh) * | 2020-10-13 | 2021-01-12 | 北京理工大学 | 一种基于操作码序列的恶意软件家族分类方法 |
CN112329016A (zh) * | 2020-12-31 | 2021-02-05 | 四川大学 | 一种基于深度神经网络的可视化恶意软件检测装置及方法 |
US20210176258A1 (en) * | 2019-12-10 | 2021-06-10 | Shanghai Jiaotong University | Large-scale malware classification system |
-
2021
- 2021-09-13 CN CN202111071137.2A patent/CN113935033A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200076426A (ko) * | 2018-12-19 | 2020-06-29 | 건국대학교 산학협력단 | 이종 정보 네트워크 기반 악성 코드 탐지 방법 및 장치 |
CN109829306A (zh) * | 2019-02-20 | 2019-05-31 | 哈尔滨工程大学 | 一种优化特征提取的恶意软件分类方法 |
US20210176258A1 (en) * | 2019-12-10 | 2021-06-10 | Shanghai Jiaotong University | Large-scale malware classification system |
CN111241544A (zh) * | 2020-01-08 | 2020-06-05 | 北京梆梆安全科技有限公司 | 一种恶意程序识别方法、装置、电子设备及存储介质 |
CN112214767A (zh) * | 2020-10-13 | 2021-01-12 | 北京理工大学 | 一种基于操作码序列的恶意软件家族分类方法 |
CN112329016A (zh) * | 2020-12-31 | 2021-02-05 | 四川大学 | 一种基于深度神经网络的可视化恶意软件检测装置及方法 |
Non-Patent Citations (2)
Title |
---|
刘凯等: "基于图卷积网络的恶意代码聚类", 《四川大学学报(自然科学版)》, vol. 56, no. 4, 8 July 2019 (2019-07-08) * |
孙博文等: "基于静态多特征融合的恶意软件分类方法", 《网络语信息安全学报》, vol. 3, no. 11, 30 November 2017 (2017-11-30) * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115062303A (zh) * | 2022-05-31 | 2022-09-16 | 四川大学 | 基于原始有效载荷和深度学习的Android恶意软件分类方法 |
CN115062303B (zh) * | 2022-05-31 | 2024-04-05 | 四川大学 | 基于原始有效载荷和深度学习的Android恶意软件分类方法 |
CN115577361A (zh) * | 2022-12-09 | 2023-01-06 | 四川大学 | 一种改进的基于图神经网络的PHP Web shell检测方法 |
CN116861431A (zh) * | 2023-09-05 | 2023-10-10 | 国网山东省电力公司信息通信公司 | 基于多通道图像和神经网络的恶意软件分类方法及系统 |
CN116861431B (zh) * | 2023-09-05 | 2023-11-21 | 国网山东省电力公司信息通信公司 | 基于多通道图像和神经网络的恶意软件分类方法及系统 |
CN117113351A (zh) * | 2023-10-18 | 2023-11-24 | 广东省科技基础条件平台中心 | 一种基于多重多级预训练的软件分类方法及设备 |
CN117113351B (zh) * | 2023-10-18 | 2024-02-20 | 广东省科技基础条件平台中心 | 一种基于多重多级预训练的软件分类方法及设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113935033A (zh) | 特征融合的恶意代码家族分类方法、装置和存储介质 | |
Liu et al. | ATMPA: attacking machine learning-based malware visualization detection methods via adversarial examples | |
CN109359439B (zh) | 软件检测方法、装置、设备及存储介质 | |
Tang et al. | Dynamic API call sequence visualisation for malware classification | |
US11212297B2 (en) | Access classification device, access classification method, and recording medium | |
RU2708356C1 (ru) | Система и способ двухэтапной классификации файлов | |
CN112866023B (zh) | 网络检测、模型训练方法、装置、设备及存储介质 | |
Zhao et al. | Maldeep: A deep learning classification framework against malware variants based on texture visualization | |
CN112241530B (zh) | 恶意pdf文档的检测方法及电子设备 | |
CN113360912A (zh) | 恶意软件检测方法、装置、设备及存储介质 | |
Yan et al. | A survey of adversarial attack and defense methods for malware classification in cyber security | |
CN112329012A (zh) | 针对包含JavaScript的恶意PDF文档的检测方法及电子设备 | |
Kakisim et al. | Sequential opcode embedding-based malware detection method | |
CN108959930A (zh) | 恶意pdf检测方法、系统、数据存储设备和检测程序 | |
CN108959922B (zh) | 一种基于贝叶斯网的恶意文档检测方法及装置 | |
Ravi et al. | Attention‐based convolutional neural network deep learning approach for robust malware classification | |
CN112257062A (zh) | 一种基于频繁项集挖掘的沙箱知识库生成方法和装置 | |
Pranav et al. | Detection of botnets in IoT networks using graph theory and machine learning | |
Vi et al. | Adversarial examples against image-based malware classification systems | |
Cybersecurity | Machine learning for malware detection | |
CN113935034A (zh) | 基于图神经网络的恶意代码家族分类方法、装置和存储介质 | |
CN115545091A (zh) | 基于集成学习器的恶意程序api调用序列检测方法 | |
Guo et al. | Classification of malware variant based on ensemble learning | |
US11868473B2 (en) | Method for constructing behavioural software signatures | |
CN114579965A (zh) | 一种恶意代码的检测方法、装置及计算机可读存储介质 |
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 |