CN112329013A - 一种基于图卷积网络和主题模型的恶意代码分类的方法 - Google Patents

一种基于图卷积网络和主题模型的恶意代码分类的方法 Download PDF

Info

Publication number
CN112329013A
CN112329013A CN201910715247.4A CN201910715247A CN112329013A CN 112329013 A CN112329013 A CN 112329013A CN 201910715247 A CN201910715247 A CN 201910715247A CN 112329013 A CN112329013 A CN 112329013A
Authority
CN
China
Prior art keywords
graph
malicious code
convolution network
function
malicious
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
Application number
CN201910715247.4A
Other languages
English (en)
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.)
Sichuan University
Original Assignee
Sichuan 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 Sichuan University filed Critical Sichuan University
Priority to CN201910715247.4A priority Critical patent/CN112329013A/zh
Publication of CN112329013A publication Critical patent/CN112329013A/zh
Pending legal-status Critical Current

Links

Images

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/24133Distances to prototypes
    • G06F18/24137Distances to cluster centroïds
    • G06F18/2414Smoothing the distance, e.g. radial basis function networks [RBFN]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

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

Abstract

本发明提出一种基于图卷积网络和主题模型的恶意代码同源性方法。本方法可以自动地从恶意代码中提取函数调用图和函数指令分布,使用图卷积网络对函数调用图进行嵌入,使用主题模型对指令分布进行变换和降维。主要包括以下几个步骤:(1) 提取恶意代码的函数调用图;(2) 提取恶意代码的函数指令分布;(3) 选取最佳的主题数量;(4) 将函数指令分布变换为函数主题分布;(5) 将函数主题分布和函数调用图输入到分类模型中,训练模型;(6) 将训练好的模型用于判定对恶意代码的家族分类。

Description

一种基于图卷积网络和主题模型的恶意代码分类的方法
技术领域
本发明涉及机器学习与网络安全技术领域。
背景技术
近年来,全球网络安全攻防博弈态势日趋严峻,各种利用恶意代码谋取政治、经济等利益的攻击事件层出不穷。当前的恶意代码存在几个特点:
1)恶意代码的数量保持急剧增长的趋势;
2)绝大多数恶意代码属于已知恶意代码家族;
3)大多数同一家族的恶意代码存在某种共性。
根据以上几点可以得出结论,通过提取特征对恶意代码进行家族分类可以实现对绝大多数恶意代码的同源性判定。目前恶意代码的同源性分析技术包括动态分析和静态分析两大类。静态分析技术具有分析速度快,无须运行的优点。目前常用的恶意代码静态特征包括结构特征,指令特征,函数特征和数据特征等几类。函数调用图是常用的结构特征,可以体现出程序的设计特点。但目前传统的函数调用图匹配方法计算复杂度非常高。此外,反汇编指令也是恶意代码同源性分析中常用的特征。但指令的数量较多,存在一些冗余指令。鉴于此种情况,本发明提出一种基于图卷积网络和主题模型的恶意代码同源性分析方法,降低恶意代码函数调用图的匹配复杂度,提高同源性分析效果。
发明内容
本发明提出一种基于图卷积网络和主题模型的恶意代码同源性方法。本方法可以自动地从恶意代码中提取函数调用图和函数指令分布,使用图卷积网络对函数调用图进行嵌入,使用主题模型对指令分布进行变换和降维。本方法通过构建神经网路,实现对恶意代码的家族分类,具体技术方案如下。
提出一种基于图卷积网络和主题模型的恶意代码同源性分析方法,所述方法包括。
A.提取恶意代码的函数调用图,并存储为邻接矩阵,提取恶意代码中每个函数的指令分布。
B.利用图卷积网络实现对函数调用图邻接矩阵的卷积,得到节点嵌入矩阵,通过注意力机制对节点嵌入加权求和得到函数调用图的图嵌入。
C.利用主题模型对恶意代码的指令分布进行变换和降维,得到恶意代码的函数主题分布,使用自适应最大池化得到恶意代码的主题分布。通过比较分类效果选取最佳的主题数量。
D.将图嵌入和恶意代码主题分布相连后作为恶意代码的特征向量,输入到全连接层和Softmax层得到恶意代码家族分类的结果。
附图说明
为了进一步阐述本发明的实现目标、实现方法和特性,将结合附图进行详细描述。
图1是一个展示本发明提出的方法的具体实现的总体流程图。
图2 是一个说明本发明中注意力机制实现的示意图。
图3 是一个说明本发明中自适应最大池化实现的示意图。
具体实施方式
本发明是基于图卷积网络和主题模型对恶意代码进行家族分类,主要针对windows系统下的PE格式的恶意代码。首先提取恶意代码的函数调用图和函数指令分布,然后输入到分类模型进行家族分类。分类模型包括多层图卷积网络,注意力层,主题层,池化层,全连接层和Softmax层。为了进一步阐述本发明的具体实施方式,将结合附图加以详细的说明。本发明提出一种基于图卷积网络和主题模型的恶意代码同源性分析方法,可以降低函数调用图的匹配复杂度。
提取恶意代码的函数调用图:首先遍历恶意代码的所有函数,去除IDA无法解析的函数和孤立的函数。孤立函数是指没有被其他函数调用且没有调用其他函数的一类函数。初始化全为0的邻接矩阵,遍历所有函数的调用函数,并将邻接矩阵对应元素置1。
提取恶意代码的函数指令分布:首先遍历恶意代码的所有函数,获取函数的起止点,获取函数中的每条指令,去除操作数,保留操作码,保存每个函数的操作码出现的次数。
获取最佳的主题数量:抽取一部分恶意代码的函数指令分布,将每一个函数的主题分布看作一个文本,使用one-hot进行编码,将主题数量的范围设置为1-24,训练主题模型,获取每个函数的主题分布。将每个恶意代码的所有函数主题分布输入到分类模型中,不使用函数调用图,观察不同主题数量对分类结果的影响,选择最佳的主题数量。
获取函数主题分布:使用最佳的主题数量,重新训练主题模型,调整迭代次数,将每个恶意代码的函数主题分布存储为json文件。
训练分类模型:图卷积网络会计算函数调用图的节点嵌入,注意力机制由节点嵌入得到图嵌入。自适应最大池化可以由恶意代码的函数主题分布得到恶意代码的主题分布。
恶意代码分类:选定与训练集不存在交叉的恶意代码测试集,测试分类模型的效果,并与已有的方法进行对比。

Claims (8)

1.一种基于图卷积网络和主题模型的恶意代码分类方法,其特征在于包括以下步骤:
步骤一:提取恶意代码的函数调用图;
步骤二:提取恶意代码的函数指令分布;
步骤三:选取最佳的主题数量;
步骤四:将函数指令分布变换为函数主题分布;
步骤五:将函数主题分布和函数调用图输入到分类模型中,训练模型;
步骤六:将训练好的模型用于判定对恶意代码的家族分类。
2.根据权利要求1所述的基于图卷积网络和主题模型的恶意代码分类方法,其特征在于步骤一中函数调用图提取方法,提取过程中去除了孤立函数,并直接将函数调用图存储为邻接矩阵。
3.根据权利要求1所述的基于图卷积网络和主题模型的恶意代码分类方法,其特征在于步骤二中获取函数指令分布时,可以仅对操作码进行计数,节省了存储空间。
4.根据权利要求1所述的基于图卷积网络和主题模型的恶意代码分类方法,其特征在于步骤四中在选取最佳的主题数量时,采用了实验验证的方式。
5.根据权利要求1所述的基于图卷积网络和主题模型的恶意代码分类方法,其特征在于步骤三中将主题模型应用与恶意代码的分类。
6.根据权利要求1所述的基于图卷积网络和主题模型的恶意代码分类方法,其特征在于步骤五自适应最大池化获取恶意代码的主题分布,避免了数据大小不同对分类模型带来的不良影响。
7.根据权利要求1所述的基于图卷积网络和主题模型的恶意代码分类方法,其特征在于步骤五使用了图卷积网络和注意力机制获得函数调用图的图嵌入,降低了图形匹配复杂度,保证了图形匹配的准确率。
8.根据权利要求1所述的基于图卷积网络和主题模型的恶意代码分类方法,其特征在于步骤五使用已训练的模型对恶意代码进行分类,具有很快的分类速度。
CN201910715247.4A 2019-08-05 2019-08-05 一种基于图卷积网络和主题模型的恶意代码分类的方法 Pending CN112329013A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910715247.4A CN112329013A (zh) 2019-08-05 2019-08-05 一种基于图卷积网络和主题模型的恶意代码分类的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910715247.4A CN112329013A (zh) 2019-08-05 2019-08-05 一种基于图卷积网络和主题模型的恶意代码分类的方法

Publications (1)

Publication Number Publication Date
CN112329013A true CN112329013A (zh) 2021-02-05

Family

ID=74319347

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910715247.4A Pending CN112329013A (zh) 2019-08-05 2019-08-05 一种基于图卷积网络和主题模型的恶意代码分类的方法

Country Status (1)

Country Link
CN (1) CN112329013A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360912A (zh) * 2021-08-09 2021-09-07 四川大学 恶意软件检测方法、装置、设备及存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054149A (zh) * 2009-11-06 2011-05-11 中国科学院研究生院 一种恶意代码行为特征提取方法
CN108959924A (zh) * 2018-06-12 2018-12-07 浙江工业大学 一种基于词向量和深度神经网络的Android恶意代码检测方法
CN109889436A (zh) * 2019-02-20 2019-06-14 北京航空航天大学 一种社交网络中垃圾邮件发送者的发现方法
US20190188390A1 (en) * 2017-12-15 2019-06-20 Mastercard International Incorporated Security vulnerability analytics engine
CN112182568A (zh) * 2019-07-02 2021-01-05 四川大学 基于图卷积网络和主题模型的恶意代码分类

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102054149A (zh) * 2009-11-06 2011-05-11 中国科学院研究生院 一种恶意代码行为特征提取方法
US20190188390A1 (en) * 2017-12-15 2019-06-20 Mastercard International Incorporated Security vulnerability analytics engine
CN108959924A (zh) * 2018-06-12 2018-12-07 浙江工业大学 一种基于词向量和深度神经网络的Android恶意代码检测方法
CN109889436A (zh) * 2019-02-20 2019-06-14 北京航空航天大学 一种社交网络中垃圾邮件发送者的发现方法
CN112182568A (zh) * 2019-07-02 2021-01-05 四川大学 基于图卷积网络和主题模型的恶意代码分类

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113360912A (zh) * 2021-08-09 2021-09-07 四川大学 恶意软件检测方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN112182568B (zh) 基于图卷积网络和主题模型的恶意代码分类
CN110516305B (zh) 基于注意机制元学习模型的小样本下故障智能诊断方法
CN109299741B (zh) 一种基于多层检测的网络攻击类型识别方法
CN104063706B (zh) 一种基于surf算法的视频指纹提取方法
CN110992354A (zh) 基于引入自动记忆机制对抗自编码器的异常区域检测方法
CN112784929B (zh) 一种基于双元组扩充的小样本图像分类方法及装置
Chen et al. Image processing operations identification via convolutional neural network
CN109740672B (zh) 多流特征距离融合系统与融合方法
CN110751191A (zh) 一种图像的分类方法及系统
CN116400168A (zh) 一种基于深度特征聚类的电网故障诊断方法及系统
CN113255661A (zh) 一种输电线路涉鸟故障相关鸟种图像识别方法
CN111126155B (zh) 一种基于语义约束生成对抗网络的行人再识别方法
CN111737688B (zh) 基于用户画像的攻击防御系统
CN109617864A (zh) 一种网站识别方法及网站识别系统
CN112329013A (zh) 一种基于图卷积网络和主题模型的恶意代码分类的方法
CN111783688B (zh) 一种基于卷积神经网络的遥感图像场景分类方法
CN111461135B (zh) 利用卷积神经网络集成的数字图像局部滤波取证方法
CN117112991A (zh) 一种基于改进深度残差收缩网络的轴承故障诊断方法
CN114067155B (zh) 基于元学习的图像分类方法、装置、产品及存储介质
CN109308565B (zh) 人群绩效等级识别方法、装置、存储介质及计算机设备
CN111080727B (zh) 彩色图像重构方法及装置、图像分类方法及装置
CN114119971B (zh) 一种语义分割方法、系统和电子设备
CN113034472B (zh) 一种基于梯度网络架构搜索的空域隐写分析方法及系统
CN117708643B (zh) 一种基于融合序列特征的桥梁监测异常数据的识别方法及系统
CN113505783B (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
WD01 Invention patent application deemed withdrawn after publication
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20210205