CN113935032A - 一种恶意代码的同源分析方法、装置及可读存储介质 - Google Patents
一种恶意代码的同源分析方法、装置及可读存储介质 Download PDFInfo
- Publication number
- CN113935032A CN113935032A CN202110825704.2A CN202110825704A CN113935032A CN 113935032 A CN113935032 A CN 113935032A CN 202110825704 A CN202110825704 A CN 202110825704A CN 113935032 A CN113935032 A CN 113935032A
- Authority
- CN
- China
- Prior art keywords
- malicious code
- malicious
- feature extraction
- extraction model
- analysis
- 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
- 238000004458 analytical method Methods 0.000 title claims abstract description 41
- 238000000034 method Methods 0.000 title claims abstract description 35
- 238000000605 extraction Methods 0.000 claims abstract description 32
- 239000013598 vector Substances 0.000 claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 22
- 238000004891 communication Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 8
- 238000004422 calculation algorithm Methods 0.000 claims description 5
- 238000007635 classification algorithm Methods 0.000 claims description 5
- 230000006870 function Effects 0.000 description 6
- 230000006399 behavior Effects 0.000 description 5
- 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 5
- 241000700605 Viruses Species 0.000 description 4
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000011176 pooling Methods 0.000 description 4
- 239000008186 active pharmaceutical agent Substances 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 241000283086 Equidae Species 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 238000012360 testing method Methods 0.000 description 2
- 101100272279 Beauveria bassiana Beas gene Proteins 0.000 description 1
- 238000013145 classification model Methods 0.000 description 1
- 238000002790 cross-validation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 230000002068 genetic effect Effects 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012163 sequencing technique Methods 0.000 description 1
- 230000003068 static 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/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/24—Classification techniques
- G06F18/241—Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
- G06N20/10—Machine learning using kernel methods, e.g. support vector machines [SVM]
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Software Systems (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Biology (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Medical Informatics (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Probability & Statistics with Applications (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种恶意代码的同源分析方法、装置及可读存储介质,包括:获取恶意代码样本,其中恶意代码样本中包括不同类型的恶意代码;反汇编恶意代码样本,以确定对应的汇编指令序列,汇编指令序列中包括若干指令,且若干指令的长度可以不同;基于子序列在前的指令和在后的指令对应的向量以及所述恶意代码样本对应的向量,输入特征提取模型进行预测训练;将训练完成后的特征提取模型来提取未知的恶意代码数据的语义特征,以进行恶意代码的同源分析。本公开的方法能够适用于不同长度的恶意代码的同源分析,解决现有技术由于代码中指令数量不同而产生的输入长度不一致问题。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种恶意代码的同源分析方法、装置及可读存储介质。
背景技术
恶意代码同源分析(Homology Analysis),是通过恶意代码内外部特性,以及生成和传播的规律,分析恶意代码之间衍生的关联性。恶意代码类型多种多样,包括计算机病毒、蠕虫、木马程序、后门程序、逻辑炸弹等。每一类恶意代码往往会在以下几个方面存在相似性:(1)功能性代码,为了实现相同的恶意功能,关键的代码片段可能相似,这些相似代码片段也被称为基因码,如Duqu与Stuxnet,它们的DLL注入、RPC服务等关键功能代码高度相似;(2)系统函数调用,恶意行为的操作通常依赖对操作系统函数的调用,调用的函数名称、频次、顺序等可能存在相似;(3)功能行为,每一类恶意代码都有针对性的破坏行为,如勒索软件会读写用户数据、远程控制木马会查看屏幕或摄像头,功能行为的相似性反映在文件、进程、网络及注册表等方面。
现有的同源分析研究多属于动态方法,根据恶意代码运行状态中的函数调用、行为片段等进行相似性分析。动态方法需要独立的运行环境,而且效率较低。
发明内容
本发明实施例提供一种恶意代码的同源分析方法、装置及可读存储介质,能够适用于不同长度的恶意代码的同源分析,解决现有技术由于代码中指令数量不同而产生的输入长度不一致问题。
第一方面,本发明实施例提供恶意代码的同源分析方法,包括:获取恶意代码样本,其中所述恶意代码样本中包括不同类型的恶意代码;反汇编所述恶意代码样本,以确定对应的汇编指令序列,所述汇编指令序列中包括若干指令,且若干指令的长度可以不同;设置滑动窗口依序在所述汇编指令序列中滑取子序列,各子序列中至少包括三条指令;为各滑动窗口中的子序列:基于该子序列在前的指令和在后的指令对应的向量以及所述恶意代码样本对应的向量,输入特征提取模型进行预测;基于所述特征提取模型输出的该子序列中其他指令的概率来调整所述恶意代码样本对应的向量,以及,调整所述特征提取模型的参数;将训练完成后的特征提取模型来提取未知的恶意代码数据的语义特征,以进行恶意代码的同源分析。
第二方面,本发明实施例提供一种恶意代码同源分析方法,包括:获取未知恶意代码;利用述的同源分析方法训练获得的特征提取模型来提取所述未知恶意代码的语义特征;为所述语义特征进行分类,以实现对所述未知恶意代码的同源分析。
第三方面,本发明实施例提供一种恶意代码同源分析装置,包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的一个或者多个计算机程序,以实现前述的恶意代码同源分析方法的步骤。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述的方法的步骤。
本发明实施例提出的特征提取模型能够在训练完成之后,适用于不同长度的恶意代码的同源分析,解决现有技术由于代码中指令数量不同而产生的输入长度不一致问题。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1为本发明实施例基本流程图;
图2为本发明实施例总流程示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
应理解的是,可以对此处申请的实施例做出各种修改。因此,上述说明书不应该视为限制,而仅是作为实施例的范例。本领域的技术人员将想到在本公开的范围和精神内的其他修改。
包含在说明书中并构成说明书的一部分的附图示出了本公开的实施例,并且与上面给出的对本公开的大致描述以及下面给出的对实施例的详细描述一起用于解释本公开的原理。
通过下面参照附图对给定为非限制性实例的实施例的优选形式的描述,本公开的这些和其它特性将会变得显而易见。
还应当理解,尽管已经参照一些具体实例对本公开进行了描述,但本领域技术人员能够确定地实现本公开的很多其它等效形式,它们具有如权利要求的特征并因此都位于借此所限定的保护范围内。
当结合附图时,鉴于以下详细说明,本公开的上述和其他方面、特征和优势将变得更为显而易见。
此后参照附图描述本公开的具体实施例;然而,应当理解,所申请的实施例仅仅是本公开的实例,其可采用多种方式实施。熟知和/或重复的功能和结构并未详细描述以避免不必要或多余的细节使得本公开模糊不清。因此,本文所申请的具体的结构性和功能性细节并非意在限定,而是仅仅作为权利要求的基础和代表性基础用于教导本领域技术人员以实质上任意合适的详细结构多样地使用本公开。
本说明书可使用词组“在一种实施例中”、“在另一个实施例中”、“在又一实施例中”或“在其他实施例中”,其均可指代根据本公开的相同或不同实施例中的一个或多个。
基于恶意代码的动态和静态API序列之间的语义映射关系,将恶意代码样本转化为基于API的特征向量,基于得到的特征向量训练机器学习分类器,实现恶意代码检测。但动态API提取要求特定的运行环境,实现复杂。
基于此本发明实施例提供一种恶意代码的同源分析方法,如图1所示,包括如下步骤:
S101、获取恶意代码样本,其中所述恶意代码样本中包括不同类型的恶意代码。具体的,可以从恶意代码公开库,如VirusTotal、vxheaven等,按照常见的7种恶意代码类型(特洛伊木马、蠕虫、病毒、后门、Rootkit、僵尸程序以及广告软件),分别收集足够数量的恶意代码样本,作为数据集。
S102、反汇编所述恶意代码样本,以确定对应的汇编指令序列,所述汇编指令序列中包括若干指令,且若干指令的长度可以不同,如图2所示,可以对恶意代码样本进行反向汇编,由此可以得到汇编指令序列Seq,先将Seq 表示成向量Vp,即Vp为表征Seq语义特征的语义特征向量。Seq由多个指令组成,Seq={Sq,q∈[0,l]},其中l是该样本中指令序列(即Seq)的长度。
S103、设置滑动窗口依序在所述汇编指令序列中滑取子序列,各子序列中至少包括三条指令。进一步如图2所示,可以以指令{S9,S10,S11}为例进行举例说明。
为各滑动窗口中的子序列:
S104、基于该子序列在前的指令和在后的指令对应的向量以及所述恶意代码样本对应的向量,输入特征提取模型进行预测。
为使最终得到的语义特征包含指令序列的语义信息以及指令之间的顺序关系,如图2所示滑动窗口在汇编指令序列Seq上设置一个滑动窗口,步长可以根据实际需要设置,例如步长可以设置为1。比如滑取了指令{S9,S10,S11},将{S9,S10,S11}对应表示为向量Vec(S9),Vec(S10),Vec(S11)。然后输入特征提取模型进行预测,特征提取模型可以采用循环神经网络(Recurrent Neural Network,RNN)、全连接神经网络(Dense Neural Network,DNN)或其它神经网络结构例如KNN,SVM,或者不同网络结构的组合等,作为隐藏层。每一次滑动都根据窗口内的子序列{Sq-1,Sq,Sq+1}进行预测任务。同时该样本整体的代码语义特征为Vp,随机初始化Vp。可以求出Sq-1,Sq+1的平均向量,也即可以求出Vec(S9)与Vec(S11)的平均向量,平均向量与Vp相乘后的向量输入隐藏层。预测目标是Sq,由Vp,Sq-1,Sq+1预测Sq的概率可以表示为 P(Sq|Seq,Sq-1,Sq+1)。
S105、基于所述特征提取模型输出的该子序列中其他指令的概率来调整所述恶意代码样本对应的向量,以及,调整所述特征提取模型的参数。
基于前述训练过程,用该子序列来训练语义模型,在训练中,平均池化层、隐藏层的参数以及Vp得到调整,最小化预测概率的交叉熵损失。
在对各滑动窗口中的子序列训练完成后,可以在步骤S106中将训练完成后的特征提取模型来提取未知的恶意代码数据的语义特征,以进行恶意代码的同源分析。训练完成的特征提取模型向量Vp被优化为Vp′,此时Vp′包含了上下文信息及顺序关系,作为该训练样本的代码语义特征。在整个数据集上训练完成之后,将平均池化层、隐藏层的参数等固定,作为语义模型,用来提取每个样本的代码语义特征。最后可以将提取到的代码语义特征来进行分类或者聚类,由此实现恶意代码的同源分析。
本发明实施例提出的特征提取模型能够在训练完成之后,由于训练过程中设置了滑动窗口来进行连续滑取,因此训练过程中就包含指令序列的语义信息以及指令之间的顺序关系。从而训练获得的特征提取模型可以适用于不同长度的恶意代码的同源分析,解决现有技术由于代码中指令数量不同而产生的输入长度不一致问题。
在一些实施例中,为所述汇编指令序列中的各指令:
根据语料库将该指令的操作符和操作数进行标识化;
联接标识化之后的操作符和操作数作为该指令对应的向量。
例如,Seq由多个指令组成,Seq={Sq,q∈[0,l]},其中l是该样本中指令序列 (即Seq)的长度。每一个指令Sq又包括操作符opq和操作数onq。由此可以根据语料库将opq和onq标识化为OPq和ONq,联接OPq和ONq即可作为Sq的向量,例如可以对应获得Vec(S9)-Vec(S11)。
在一些实施例中,调整所述恶意代码样本对应的向量,以及,调整所述特征提取模型的参数是基于所述特征提取模型输出数据的反向梯度信息来调整的。例如可以在训练中,平均池化层、隐藏层的参数以及Vp根据反向梯度信息得到调整,最小化预测概率的交叉熵损失。训练完成后,向量Vp被优化为Vp′,此时Vp′包含了上下文信息及顺序关系,作为该样本的代码语义特征。
在一些实施例中,还包括:将训练完成后的特征提取模型来提取所述恶意代码样本的语义特征;基于提取的所述恶意代码样本的语义特征进行分类,以确定若干所述恶意代码样本的语义特征类别。
具体的,可以在整个数据集上训练完成之后,将平均池化层、隐藏层的参数等固定,作为语义模型,用来提取每个样本的代码语义特征。然后对恶意代码样本的代码语义特征进行聚类。由于恶意代码样本包含了特洛伊木马、蠕虫、病毒、后门、Rootkit、僵尸程序以及广告软件等不同类型的恶意代码。因此本示例中可以对其代码语义特征进行聚类,由此使得恶意代码样本作为同源分析的参考。
在一些实施方式中,基于提取的所述恶意代码样本的语义特征进行分类可以包括:利用聚类算法对所述恶意代码样本的语义特征进行聚类;或者利用分类算法对所述恶意代码样本的语义特征进行分类。
具体的对语义特征进行分类可以采用聚类算法或者分类算法。通过使用聚类算法,对数据集进行聚类,得到恶意代码族群,处于同一个族群中的恶意代码视为具有同源性。前述步骤中列出的(特洛伊木马、蠕虫、病毒、后门、 Rootkit、僵尸程序以及广告软件)7种恶意代码类型可以作为参考,由于每一种类型又包括许多不同的家族,实际聚类得到的族群数往往较多。聚类算法可以选取DBScan、KMeans、KNN等,下面以DBScan为例进行说明。
簇类最少样本数MinPts设置为k,k根据实际数据规模而定。按照步骤(1) 提取所有恶意代码样本的语义特征,根据语义特征计算所有样本的k-dist值,并做递增排序。计算该序列在每个k-dist值处的梯度,将梯度最大的k-dist值作为聚类簇的半径Eps。对每一个样本搜索密度可达的样本:如果样本密度可达的样本数大于k,则将作为一个簇心,其密度可达的样本位于该簇内;否则,则在密度可达的样本中搜索簇心;直到所有样本都位于簇内。此时得到恶意代码的聚类族群。
K-dist值是指一个样本第k个近邻样本与该样本的距离。
密度可达:两个样本a和b,如果a位于b的簇半径内(a∈Eps(b)), 并且|Eps(b)|≥MinPts,则a和b为直接密度可达a→b。如果两个样本a和 d之间存在数据链,a→b→…→d,则a和d为密度可达。
也可以使用分类算法,将数据集中样本按照类型进行标注,按照比例为训练集和测试集,选取一种分类算法,例如SVM、LightGBM、GBDT、神经网络等,使用训练集训练分类模型,测试集可以用于交叉验证。
第二方面,本发明实施例提供一种恶意代码同源分析方法,包括:获取未知恶意代码;利用述的同源分析方法训练获得的特征提取模型来提取所述未知恶意代码的语义特征;为所述语义特征进行分类,以实现对所述未知恶意代码的同源分析。
在实际应用中,要对未知的恶意代码数据集进行同源分析,该未知恶意代码数据集可以是网络、邮件、公开库等任意来源的数据。可以获取未知恶意代码;利用述的同源分析方法训练获得的特征提取模型来提取所述未知恶意代码的语义特征;为所述语义特征进行分类。具体的模型预测和分类方法参见前述,在此不做赘述。
本公开的方法基于所提出的语义模型提取代码特征,包含了前后文语义及顺序关系,能防止代码混淆的干扰,并且能将不定长的指令序列转化成定长的语义特征,解决了由于代码中指令数量不同而产生的输入长度不一致问题。
第三方面,本发明实施例还提供一种恶意代码同源分析装置,包括处理器、存储器及通信总线;所述通信总线用于实现处理器和存储器之间的连接通信;所述处理器用于执行存储器中存储的一个或者多个计算机程序,以实现前述的恶意代码同源分析方法的步骤。
第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现前述的方法的步骤。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本发明各个实施例所述的方法。
上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多形式,这些均属于本发明的保护之内。
Claims (10)
1.一种恶意代码的同源分析方法,其特征在于,包括:
获取恶意代码样本,其中所述恶意代码样本中包括不同类型的恶意代码;
反汇编所述恶意代码样本,以确定对应的汇编指令序列,所述汇编指令序列中包括若干指令,且若干指令的长度可以不同;
设置滑动窗口依序在所述汇编指令序列中滑取子序列,各子序列中至少包括三条指令;
为各滑动窗口中的子序列:
基于该子序列在前的指令和在后的指令对应的向量以及所述恶意代码样本对应的向量,输入特征提取模型进行预测;
基于所述特征提取模型输出的该子序列中其他指令的概率来调整所述恶意代码样本对应的向量,以及,调整所述特征提取模型的参数;
将训练完成后的特征提取模型来提取未知的恶意代码数据的语义特征,以进行恶意代码的同源分析。
2.如权利要求1所述的恶意代码的同源分析方法,其特征在于,还包括:
为所述汇编指令序列中的各指令:
根据语料库将该指令的操作符和操作数进行标识化;
联接标识化之后的操作符和操作数作为该指令对应的向量。
3.如权利要求1所述的恶意代码的同源分析方法,其特征在于,所述特征提取模型采用至少如下的一种网络:RNN,DNN,KNN,SVM。
4.如权利要求1所述的恶意代码的同源分析方法,其特征在于,所述恶意代码样本对应的向量是将所述汇编指令序列表示成向量的形式来获得的。
5.如权利要求1所述的恶意代码的同源分析方法,其特征在于,调整所述恶意代码样本对应的向量,以及,调整所述特征提取模型的参数是基于所述特征提取模型输出数据的反向梯度信息来调整的。
6.如权利要求1-5任一项所述的恶意代码的同源分析方法,其特征在于,还包括:
将训练完成后的特征提取模型来提取所述恶意代码样本的语义特征;
基于提取的所述恶意代码样本的语义特征进行分类,以确定若干所述恶意代码样本的语义特征类别。
7.如权利要求6所述的恶意代码的同源分析方法,其特征在于,基于提取的所述恶意代码样本的语义特征进行分类包括:
利用聚类算法对所述恶意代码样本的语义特征进行聚类;或者
利用分类算法对所述恶意代码样本的语义特征进行分类。
8.一种恶意代码同源分析方法,其特征在于,包括:
获取未知恶意代码;
利用如权利要求1-7任一项所述的同源分析方法训练获得的特征提取模型来提取所述未知恶意代码的语义特征;
为所述语义特征进行分类,以实现对所述未知恶意代码的同源分析。
9.一种恶意代码同源分析装置,其特征在于,包括处理器、存储器及通信总线;
所述通信总线用于实现处理器和存储器之间的连接通信;
所述处理器用于执行存储器中存储的一个或者多个计算机程序,以实现如权利要求1-8中任一项所述的恶意代码同源分析方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至8中任一项所述的恶意代码同源分析方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110825704.2A CN113935032A (zh) | 2021-07-21 | 2021-07-21 | 一种恶意代码的同源分析方法、装置及可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110825704.2A CN113935032A (zh) | 2021-07-21 | 2021-07-21 | 一种恶意代码的同源分析方法、装置及可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113935032A true CN113935032A (zh) | 2022-01-14 |
Family
ID=79274498
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110825704.2A Pending CN113935032A (zh) | 2021-07-21 | 2021-07-21 | 一种恶意代码的同源分析方法、装置及可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113935032A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116089951A (zh) * | 2023-02-24 | 2023-05-09 | 山东云天安全技术有限公司 | 一种恶意代码检测方法、可读存储介质及电子设备 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868108A (zh) * | 2016-03-28 | 2016-08-17 | 中国科学院信息工程研究所 | 基于神经网络的指令集无关的二进制代码相似性检测方法 |
CN107908963A (zh) * | 2018-01-08 | 2018-04-13 | 北京工业大学 | 一种自动化检测恶意代码核心特征方法 |
CN111523117A (zh) * | 2020-04-10 | 2020-08-11 | 西安电子科技大学 | 一种安卓恶意软件检测和恶意代码定位系统及方法 |
-
2021
- 2021-07-21 CN CN202110825704.2A patent/CN113935032A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105868108A (zh) * | 2016-03-28 | 2016-08-17 | 中国科学院信息工程研究所 | 基于神经网络的指令集无关的二进制代码相似性检测方法 |
CN107908963A (zh) * | 2018-01-08 | 2018-04-13 | 北京工业大学 | 一种自动化检测恶意代码核心特征方法 |
CN111523117A (zh) * | 2020-04-10 | 2020-08-11 | 西安电子科技大学 | 一种安卓恶意软件检测和恶意代码定位系统及方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116089951A (zh) * | 2023-02-24 | 2023-05-09 | 山东云天安全技术有限公司 | 一种恶意代码检测方法、可读存储介质及电子设备 |
CN116089951B (zh) * | 2023-02-24 | 2023-07-14 | 山东云天安全技术有限公司 | 一种恶意代码检测方法、可读存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Vinayakumar et al. | Evaluating deep learning approaches to characterize and classify malicious URL’s | |
Ding et al. | Application of deep belief networks for opcode based malware detection | |
CN109784056B (zh) | 一种基于深度学习的恶意软件检测方法 | |
Lu | Malware detection with lstm using opcode language | |
US11025649B1 (en) | Systems and methods for malware classification | |
Tang et al. | Dynamic API call sequence visualisation for malware classification | |
Zhao et al. | A review of computer vision methods in network security | |
Gao et al. | Android malware detection via graphlet sampling | |
US11580222B2 (en) | Automated malware analysis that automatically clusters sandbox reports of similar malware samples | |
CN113255370B (zh) | 基于语义相似度的行业类型推荐方法、装置、设备及介质 | |
Nguyen et al. | Comparison of three deep learning-based approaches for IoT malware detection | |
Kan et al. | Towards light-weight deep learning based malware detection | |
Agrawal et al. | Neural sequential malware detection with parameters | |
Huang et al. | Open source intelligence for malicious behavior discovery and interpretation | |
WO2022100489A1 (en) | System, method and apparatus for malicious software detection | |
Kakisim et al. | Sequential opcode embedding-based malware detection method | |
Manavi et al. | A new method for malware detection using opcode visualization | |
US20220318387A1 (en) | Method and Computer for Learning Correspondence Between Malware and Execution Trace of the Malware | |
CN116432184A (zh) | 基于语义分析和双向编码表征的恶意软件检测方法 | |
Chu et al. | Visualization feature and CNN based homology classification of malicious code | |
AlGarni et al. | An efficient convolutional neural network with transfer learning for malware classification | |
CN113935032A (zh) | 一种恶意代码的同源分析方法、装置及可读存储介质 | |
CN113886821A (zh) | 基于孪生网络的恶意进程识别方法、装置、电子设备及存储介质 | |
CN111797395A (zh) | 恶意代码可视化及变种检测方法、装置、设备及存储介质 | |
CN113312619A (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 |