CN108718310B - 基于深度学习的多层次攻击特征提取及恶意行为识别方法 - Google Patents
基于深度学习的多层次攻击特征提取及恶意行为识别方法 Download PDFInfo
- Publication number
- CN108718310B CN108718310B CN201810481076.9A CN201810481076A CN108718310B CN 108718310 B CN108718310 B CN 108718310B CN 201810481076 A CN201810481076 A CN 201810481076A CN 108718310 B CN108718310 B CN 108718310B
- Authority
- CN
- China
- Prior art keywords
- attack
- code
- data
- malicious
- layer
- 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.)
- Active
Links
- 230000006399 behavior Effects 0.000 title claims abstract description 62
- 238000000605 extraction Methods 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 title claims abstract description 50
- 238000013135 deep learning Methods 0.000 title claims abstract description 36
- 230000007123 defense Effects 0.000 claims abstract description 39
- 238000013499 data model Methods 0.000 claims abstract description 26
- 238000012549 training Methods 0.000 claims abstract description 21
- 238000012545 processing Methods 0.000 claims abstract description 9
- 230000006870 function Effects 0.000 claims description 24
- 238000003062 neural network model Methods 0.000 claims description 18
- 230000001537 neural effect Effects 0.000 claims description 7
- 230000000007 visual effect Effects 0.000 claims description 6
- 238000001514 detection method Methods 0.000 abstract description 9
- 238000004458 analytical method Methods 0.000 description 17
- 239000011159 matrix material Substances 0.000 description 10
- 230000008569 process Effects 0.000 description 8
- 230000003068 static effect Effects 0.000 description 8
- 230000000875 corresponding effect Effects 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000005206 flow analysis Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- POXUQBFHDHCZAD-MHTLYPKNSA-N (2r)-2-[(4s)-2,2-dimethyl-1,3-dioxolan-4-yl]-3,4-dihydroxy-2h-furan-5-one Chemical compound O1C(C)(C)OC[C@H]1[C@@H]1C(O)=C(O)C(=O)O1 POXUQBFHDHCZAD-MHTLYPKNSA-N 0.000 description 1
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001149 cognitive effect Effects 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000001066 destructive effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000009931 harmful effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 210000003205 muscle Anatomy 0.000 description 1
- 210000005036 nerve Anatomy 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
- H04L63/145—Countermeasures against malicious traffic the attack involving the propagation of malware through the network, e.g. viruses, trojans or worms
-
- 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
-
- 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/566—Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
-
- 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
- H04L63/1416—Event detection, e.g. attack signature detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Health & Medical Sciences (AREA)
- Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Physics & Mathematics (AREA)
- Virology (AREA)
- Computing Systems (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Linguistics (AREA)
- Biophysics (AREA)
- Biomedical Technology (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Molecular Biology (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于深度学习的多层次攻击特征提取及恶意行为识别方法,属于网络安全技术领域,包括利用深度学习方法对攻击行为数据库中的恶意代码进行训练,以构建恶意代码的攻击数据模型;基于攻击数据模型对网络层中的待测代码进行处理,得到待测代码的网络层数据特征;对物理层中的待测代码进行特征提取,得到待测代码的物理层数据特征;结合网络层数据特征和物理层数据特征,确定待测代码是否为恶意代码。本发明通过结合网路层数据特征和物理层数据特征对代码进行识别,有效的满足了***防御性高的要求,保证了***防御可靠性。有效的提高恶意代码检测准确率的同时有效的控制了***检测时间的消耗。
Description
技术领域
本发明涉及网络安全技术领域,特别涉及基于深度学习的多层次攻击特征提取及恶意行为识别方法。
背景技术
恶意代码具有破坏被感染电脑数据、运行具有入侵性或破坏性的程序、破坏被感染电脑数据的安全性和完整性等危害作用,成为个人、企业信息泄露的主要原因。
在恶意代码分析方面,现有的动态行为捕获的方法能够角全面地分析僵尸网络的行为操作,但是其***开销大、分析周期长。现有的静态反汇编方式获取僵尸网络函数调用图,比较指令信息与函数调用相似性的方法,由于一个恶意软件的函数调用图平均有上千个节点,尽管可以通过剪枝方式去掉其中一些无关节点,但仍存在大量噪声,因此其分析结果不够精确,防御性能不可靠。而且,无论是动态行为捕获方式还是静态反汇编方式,分析时所使用的各类特征都是人工预定义的特征,这些特征是否全面、是否正确完全是由人工预定来决定的,主观性较强。
发明内容
本发明的目的在于提供基于深度学习的多层次攻击特征提取及恶意行为识别方法,以兼顾可靠性和实时性的对恶意代码进行识别。
为实现以上目的,本发明采用基于深度学习的多层次攻击特征提取及恶意行为识别方法,包括如下步骤:
利用深度学习方法对攻击行为数据库中的恶意代码进行训练,以构建恶意代码的攻击数据模型,该攻击行为数据库中的恶意代码是事先通过静态分析、动态分析过的恶意代码;
基于攻击数据模型对网络层中的待测代码进行处理,得到待测代码的网络层数据特征;
对物理层中的待测代码进行特征提取,得到待测代码的物理层数据特征;
结合网络层数据特征和物理层数据特征,确定待测代码是否为恶意代码。
优选地,所述利用深度学习方法对攻击行为数据库中的恶意代码进行训练,以构建恶意代码的攻击数据模型,包括:
将所述攻击行为数据库中的恶意代码的必要攻击特征转换为约束条件;
根据约束条件构建恶意代码的攻击目标函数;
利用非线性迭代算法对攻击目标函数进行求解,得到恶意代码的攻击向量;
根据恶意代码的攻击向量构建所述攻击数据模型。
优选地,所述在网络层中,基于攻击数据模型对待测代码进行处理,得到待测代码的网络层数据特征,包括:
将所述待识别恶意代码行为作为所述攻击数据模型的输入,得到所述待识别恶意代码行为对应的网络层攻击向量;
将网络层攻击向量作为预先构建的神经网络模型的输入,得到网络层数据特征。
优选地,还包括:
对所述网络层数据特征进行匹配处理,并根据匹配结果将待测代码划分为正常代码、恶意代码以及未知代码。
优选地,所述在物理层中,对待测代码进行特征提取,得到待测代码的物理层数据特征,包括:
在防御等级要求高且防御实时性要求低时,采用基于主动机的攻击特征提取方法对所述正常代码的物理层数据和所述未知代码的物理层数据进行特征提取,分别得到正常代码的物理层数据特征和未知代码的物理层数据特征;
在防御等级要求高且防御实时性要求高时,采用基于主动机的攻击特征提取方法对所述未知代码的物理层数据进行特征提取,得到未知代码的物理层数据特征。
优选地,还包括:
在防御等级要求和防御实时性要求都低时,将所述待测代码的网络层数据特征与攻击特征数据库中的攻击特征进行比较;
在待测代码的网络层数据特征与攻击特征数据库中的攻击特征相匹配时,确定所述待测代码是否为恶意代码,该特征数据库中攻击特征为所述攻击行为数据库中恶意代码的特征。
优选地,所述预先构建的神经网络模型的构建过程包括:
将k个受限的波尔兹曼机堆叠成一个深度信念网络,k是正整数;
通过无监督方式对深度信念网络的第一层受限的波尔兹曼机中每个神经单元的数据特征分类参数进行训练;
将第一层受限的波尔兹曼机的隐藏层作为第二层的可视化层以对第二层受限的波尔兹曼机中每个神经单元的数据特征分类参数进行训练,依次向顶层完成对每层受限的波尔兹曼机参数的训练,得到神经网络模型的初始参数;
利用具有诱捕特征标签的数据对所述初始参数进行监督训练,确定每层受限的波尔兹曼机中神经单元的权重参数及相邻网络层之间的亲密度,构建所述神经网络模型。
优选地,所述将网络层攻击向量作为预先构建的神经网络模型的输入,得到网络层数据特征,包括:
在所述神经网络模型中,遍历待测代码中的可疑代码序列与***中记录的恶意代码序列,对两序列中的每个字符进行匹配,得到匹配结果;
遍历匹配结果,将最长的公共子序列作为网络层数据特征。
优选地,所述结合网络层数据特征和物理层数据特征,确定待测代码是否为恶意代码,包括:
将网络层数据特征和物理层数据特征分别与所述攻击特征数据库中的特征进行比较;
判断网络层数据特征是否与所述攻击特征数据库中的特征相匹配,以及判断物理层数据特征是否与所述攻击特征数据库中的特征相匹配;
在至少一个比较结果为相匹配时,确定待测代码是否为恶意代码。
优选地,还包括:
将所述确定为恶意代码的待测代码作为新增数据,添加至所述攻击行为数据库中,对所述攻击行为数据库进行更新;
利用深度学习方法对更新后的攻击行为数据库中的恶意代码进行训练,以对攻击数据模型进行更新。
与现有技术相比,本发明存在以下技术效果:本发明利用深度学习功能训练已知的恶意代码,得到恶意代码的特征,构建恶意代码的攻击数据模型,加强了***识别恶意代码的能力。在未知代码入侵***时,对未知代码进行识别即特征提取,判断未知代码的特征是否与恶意代码的特征相匹配,初步判断该未知代码是否是恶意代码。然后结合***不同的防御等级,对未知代码的物理层数据进行特征提取,有效的结合物理层数据的特征,确定未知代码是否为恶意代码。通过并行多层次特征提取的攻击防御方法,以最大程度的保证恶意代码识别的准确性。
附图说明
下面结合附图,对本发明的具体实施方式进行详细描述:
图1是基于深度学习的多层次攻击特征提取及恶意行为识别方法的流程示意图;
图2是多层次深度学习的全局模型图;
图3是静态、动态特征提取示意图;
图4是未结合物理层分析的攻击防御模型图;
图5是结合物理层分析和参数协调的攻击防御模型图。
具体实施方式
为了更进一步说明本发明的特征,请参阅以下有关本发明的详细说明与附图。所附图仅供参考与说明之用,并非用来对本发明的保护范围加以限制。
本实施例方案的基本思想是:在***受到待测代码入侵时,在待测代码通过网络的端到端传输过程中,在网络层中采用深度学习中的神经网络来提取网络层数据的特征,还采用基于物理主机的特征提取方法对待测代码在物理层的数据进行特征提取,根据***防御等级的要求,结合网络层数据特征和物理层数据特征确定待测代码的类别。下面结合具体技术方案进行说明:
如图1所示,本实施例公开了基于深度学习的多层次攻击特征提取及恶意行为识别方法,包括如下步骤S1至S4:
S1、利用深度学习方法对攻击行为数据库中的恶意代码进行训练,以构建恶意代码的攻击数据模型;
需要说明的是,该攻击行为数据库中的恶意代码是通过现有的静态分析和动态分析得到的。然后利用深度学习方法对这些已知的恶意代码进行训练,构建出的攻击数据模型,可加强恶意代码的识别能力和准确度。
S2、基于攻击数据模型对网络层中的待测代码进行处理,得到待测代码的网络层数据特征;
S3、对物理层中的待测代码进行特征提取,得到待测代码的物理层数据特征;
S4、结合网络层数据特征和物理层数据特征,确定待测代码是否为恶意代码。
需要说明的是,对同一待测代码分别在网络层中和物理层中进行特征提取,通过结合网络层数据特征和物理层数据特征,在***防御性要求较高时,可有效的保证恶意代码识别的准确性,提高***防御可靠性。
作为进一步的说明,上述步骤S1中构建恶意代码的攻击数据模型的具体过程为:
(1)构建约束条件:
首先对***中现有的攻击行为数据库中的恶意代码数据进行分析,得到恶意代码自身的必要攻击特征,本实施例中将恶意代码自身的必要攻击特征具体化如下:
特征1:攻击者对攻击***的网络拓扑结构具有一定的掌握;
特征2:攻击者对攻击***的检测机制存在一定的预知;
特征3:攻击者通过修改攻击***周围相关数据使自身的攻击收益达到最大。
以攻击***为智能电网为例,恶意代码自身的必要攻击特征具体化如下:
特征1:攻击者对智能电网中的网络拓扑结构具有一定的掌握;
特征2:攻击者对智能电网的检测机制存在一定的预知;
特征3:攻击者通过修改周围邻居电表测量数据使自身的攻击收益达到最大。
上述的三种攻击特征具有一定的普遍性,默认这三种特征为已知特征,将其转换为约束条件,具体为:
其中,a表示某一个阶段的攻击向量,H表示攻击者利用的雅克比矩阵(表示电力的拓扑结构H∈Rm×n),表示攻击评估的阈值,|| ||表示范数,T表示攻击向量a的转置。M、N表示操作者进行数据传输时使用的向量,本实施例M、N采用对角向量表示如下:
需要说明的是,不管攻击者执行怎样的改变,攻击本身的行为信号都会检测出来,若要保证攻击的隐秘性,攻击者必须要考虑这三个约束条件,因此该约束条件具有普遍性。
(2)通过约束条件对攻击目标函数进行约束:
根据约束条件将攻击目标函数表示为拉格朗日乘子,如下:
L(a,λ1,λ2,λ3)=U(a)+λ1 Th1(a)+λ2 Th2(a)+λ3 Tg(a),
其中,U(ak)表示攻击者的目标函数,dk表示每次迭代的更新权值,ak表示目标函数中使用的k次迭代中的攻击向量,表示二阶偏导数,L(αk,λk)表示第k次迭代中的攻击目标函数,表示一节偏导数,λk分别为拉格朗日乘子法中的三个函数权重λ1、λ2、λ3在非线性迭代算法中第k次迭代所取的具体数值。
(3)利用非线性迭代算法以及特征约束条件下的攻击目标函数,求出可以表示攻击行为的攻击向量。恶意代码的攻击向量的迭代算法检测过程为:
(3-1)首先确定初始的参数值a0,λ0,以及矩阵H的初始化状态定值H0,H0是m×n矩阵,并且在给定的范围内选择参数η∈(0,0.5),τ∈(0,1);
(3-2)判断是否满足约束条件,如果满足继续执行步骤(3-3),否则停止计算;
(3-3)通过转化的规划子问题求解出dk值;
(3-4)将攻击向量αk的初始值α0=1带入如下公式:
判断是否满足,若是则认为该参数取值可以使用,执行步骤(3-5),
否则对攻击向量αk进行更新。αk更新满足公式αk=τkαk,其中τk∈(0,τ)。
(3-5)当攻击向量αk满足约束条件以后,开始计算攻击向量ak的迭代值ak+1=ak+αkdk。
作为进一步地说明,上述步骤S2:在网络层中,基于攻击数据模型对待测代码进行处理,得到待测代码的网络层数据特征,具体包括:
将所述待识别恶意代码行为作为所述攻击数据模型的输入,得到所述待识别恶意代码行为对应的网络层攻击向量;
将网络层攻击向量作为预先构建的神经网络模型的输入,得到网络层数据特征。
具体地,神经网络模型的构建过程为:
将k个受限玻尔兹曼机通过堆叠的方式,可以构成一个深度信念网络,深度信念网络受限通过无监督方式对第一层受限的玻尔兹曼机中每个神经单元的数据特征分类参数进行训练,在以第一层受限玻尔兹曼机的隐藏层作为第二层的可视化层对第二层设定的特征参数进行训练,如此不断向上完成对每一层受限玻尔兹曼机中参数的训练,得到特征提取模型的初始参数。
然后利用具有诱捕特征标签的数据来对模型的初始参数进行有监督的训练,达到对初始参数的微调,从而确定最终每一层中神经单元的权重参数以及相邻网络层之间的亲密程度,至此构建出神经网络模型。
其中,神经网络中受限玻尔兹曼机的能量函数可以表示为:
其中,vj表示可视层向量v的第j个元素,hi表示隐藏层向量h的单位元素,wij表示可视层与隐藏层单元之间权重矩阵的元素,n表示隐藏层数量,m表示可视层中单位元的数量。cj与di分别表示可视层与隐藏层之间各个元素占有的偏重,然后通过给定的隐藏层的权值来计算出分布在各个隐藏层单元中攻击特征识别的条件概率:
其中,sigm表示曲线函数,sigm(x)=1/(1+e-x)。
同理,已知可视层各个单元所占有的权重值可以计算出在可视层中的各个单元攻击特征识别的条件概率:
在进行初始训练之后,为了防止数据标签发生欠拟合或者过拟合的现象,需要对神经网络中的各个可视层与隐藏层的权重进行新一轮的更新。其中,可视层与隐藏层之间各个单元权重更新矩阵表示为:
wij=wij-R(<hivj>m-<hivj>n)
其中,< >表示求得的期望值,R表示学习的速率。
相应的各个隐藏层与可视层之间的偏置更新可以表示为:
通过不断的参数更新,最终形成针对训练数据的神经网络参数,来保证攻击识别的准确率。
具体地,采用基于最长公共子序列的提取方法,将神经网络模型输出的字符串序列与攻击***中记录的攻击特征进行比较和匹配,最终选出最长的公共子序列作为最能代表攻击行为的攻击特征。该方法提取特征可极大的缩减攻击的识别时间。提取过程为:
定义1:对于序列P={p1,p2,...,pm}和Q={q1,q2,...,qn},若存在一个序列L={L1,L2,...,Lt}满足L∈X,L∈Y且没有其他满足条件的子序列长度大于L,则序列L为P和Q的最长公共子序列。
定义2:对于长度为m的序列X和长度为n的序列Y,需要一个m×n的矩阵辅助完成。该矩阵记录两个字符串中字符之间的匹配情况,因此定义存储空间为C,Cij表示序列X的第i个字符与序列Y的第j个字符。
具体匹配过程如下:
(1)遍历序列X和序列Y,对序列中的每一个字符进行匹配,匹配时需要遵循以下规则:
(2)匹配完成后,遍历匹配结果,找出存储空间中对角线全部为1的最大子矩阵,该子矩阵所对应的字符序列即为所要求的最长公共子序列。
如果神经网络模型中输出的字符串序列,并没有和数据库中具有相匹配的特征信息,那么就可以认为该攻击为未知攻击,并将神经网络模型当中输出最长的字符序列作为该未知攻击的攻击特征。
作为进一步的说明,在上述步骤S3:在物理层中,对待测代码进行特征提取,得到待测代码的物理层数据特征中,采用基于主机的攻击特征提取方法即白盒提取,提取过程与现有技术中的提取过程相同,即先将发起攻击的恶意程序反编译为汇编指令,然后通过跟踪分析汇编指令,找出攻击的指令片段,再从中提取攻击特征。
作为进一步地说明,上述步骤S4:结合网络层数据特征和物理层数据特征,确定待测代码是否为恶意代码。其具体过程为:
将网络层数据特征和物理层数据特征分别与所述攻击特征数据库中的特征进行比较,攻击特征数据库中的特征为攻击行为数据库中恶意代码的特征;
判断网络层数据特征是否与所述攻击特征数据库中的特征相匹配,以及判断物理层数据特征是否与所述攻击特征数据库中的特征相匹配;
在至少一个比较结果为相匹配时,确定待测代码是否为恶意代码。
需要说明的是,本实施例中通过网络层数据特征和物理层数据特征结合,提高了待测代码识别的准确性,适用于防御要求等级高的***,充分提高了***的防御可靠性。
作为进一步地说明,在上述步骤S2:在网络层中,基于攻击数据模型对待测代码进行处理,得到待测代码的网络层数据特征。之后还包括如下步骤:
对所述网络层数据特征进行匹配处理,并根据匹配结果将待测代码划分为正常代码、恶意代码以及未知代码。
其中,正常代码指的是判断为无攻击威胁的代码;恶意代码指的是判断为具有攻击威胁的代码;未知代码指的是不是正常代码也不是恶意代码的“灰色地带”,需要进一步判别的代码。
作为进一步地说明,本实施例将网络层数据特征识别的代码类别作为初步识别结果,然后根据***防御性和实时性的要求,按照代码类别实现不同响应,具体为:
在防御等级要求高且防御实时性要求低时,采用基于主动机的攻击特征提取方法对所述正常代码的物理层数据和所述未知代码的物理层数据进行特征提取,分别得到正常代码的物理层数据特征和未知代码的物理层数据特征;
在防御等级要求高且防御实时性要求高时,采用基于主动机的攻击特征提取方法对所述未知代码的物理层数据进行特征提取,得到未知代码的物理层数据特征;
在防御等级要求和防御实时性要求都低时,将所述待测代码的网络层数据特征与攻击特征数据库中的攻击特征进行比较,在待测代码的网络层数据特征与攻击特征数据库中的攻击特征相匹配时,确定所述待测代码是否为恶意代码。
需要说明的是,如果网络层数据特征与攻击特征数据库中的特征不匹配时,可重新对网络层的待测代码进行特征提取,如果网络层数据特征与攻击特征数据库中的特征仍不匹配,则视该待测代码为未知代码。
需要说明的是,本实施例对网络层中的待测代码进行分类,根据***防御性等级及防御实时性的要求,对相应类别代码的进行分析,比如在***实时性要求较高时,只在物理层对未知代码进行特征提取,既减少时间耗费,又可在整体上减少***防御延迟。在***防御要求较高时,在物理层对未知代码和正常代码进行特征提取,通过结合网路层数据特征和物理层数据特征对代码进行识别,有效的满足了***防御性高的要求,保证了***防御可靠性。因此,本实施例方案可以有效的提高恶意代码检测准确率的同时有效的控制了***检测时间的消耗。
作为进一步地说明,对恶意代码的检测过程还包括:
将所述确定为恶意代码的待测代码作为新增数据,添加至所述攻击行为数据库中,对所述攻击行为数据库进行更新;
利用深度学习方法对更新后的攻击行为数据库中的恶意代码进行训练,以对攻击数据模型进行更新。
需要说明的是,本实施例通过将识别为恶意代码的待测代码增加至攻击行为数据库中,以对攻击行为数据库中存储的恶意代码进行更新,进而对攻击数据模型进行更新,如此迭代更新,以提高网络层数据特征提取的准确性,提高恶意代码识别的准确率。
下面以电网中的待测代码检测过程为例,对本实施例方案进行进一步说明:
如图2所示,对于输入的已知攻击类型的历史数据集,我们首先进行数据预处理工作,包括在对输入数据集进行了攻击向量提取,生成告警事件序列,即将每个已知的攻击行为经过攻击向量提取后,执行相应的攻击特征提取,提取到的最长序列即生成为对应的告警事件序列。
结合电网网络中已知的可能出现的告警事件列表,为了有效使用告警时间日志集,首先对告警事件按攻击目的进行分类并序列编号。其中,对每一种告警事件event都属于一个告警事件类型type,而每个告警事件类型type都包含一种或多种告警事件event。告警事件分类表描述了一个告警事件的潜在影响程度以及范围,每种事件类别之间的影响是相对独立的,但对于一个实际中的异常行为,绝大多数情况下都会包含多种事件分类,来构成一种复杂行为描述。综上所述,依据多步攻击常见的三个阶段,可以将告警事件分为如下三个类型type,如告警事件分类表表1所示:
表1
本发明提出的防御过程具体可以分为四个阶段:
(1)如图3所示,提取基础的静态、动态特征:在不运行软件代码程序的前提下,分析软件程序中可能存在的漏洞,研究基于污点分析的符号执行分析技术,通过白名单,路径搜索优化,不相关状态清除等方法优化静态分析技术,提高效率。进一步地,研究基于控制流图的静态分析技术,通过控制流分析,数据流分析,指针分析深度。其中,静态分析,动态分析皆为传统的攻击特征提取方法,只作为攻击特征提取的一个参照,故不细讲。
(2)把提取的特征以及恶意代码二进制代码、反汇编后的汇编代码作为总的输入,提交到深度学习算法去获取恶意代码判定用的特征。
(3)最后根据不同的防御的可靠性和延迟性的要求,采用对应的服务响应,包括如下:
Ⅰ)利用深度学习提取攻击特征的优势,实现“点、线、面”不同层次网络的安全状态精确感知和全方位监控,并对网络安全态势进行动态预警,在网络层进行分析通过研究多协议流量监听、网络安全要素集成中间件、基于通信流量和业务逻辑的通信行为建模等技术,形成完整的溯源数据产生工具,实现对终端通信流量的异常识别,并进一步通过对连接关系、流量类型、访问时序等关键网络安全要素进行审计,关联与挖掘嵌入式终端网络攻击威胁的发生情况。
Ⅱ)当深度学习将未知的攻击特征进行提取以后,按照最长字符匹配划分为攻击和未知攻击,如果对于安全性能要求较高,而对实时性要求不高的***如图5,那么将对正常行为和未知行为在物理层的数据特性利用深度学习再次进行攻击特征提取,分析提取后的攻击特征,固件内部代码解码与信息预处理为了解决由于采用未知压缩算法,而使得终端固件内部的程序代码或数据难以获取的问题,通过二进制代码格式,识别其操作***和文件格式,从中提取指令集、编译优化选项、加载基址等信息,利用已知的二进制文件信息,训练学习机,对未知的嵌入式终端固件内部的程序代码进行分析,实现自动处理固件的二进制代码文件信息。再将网络层攻击特征参数取值和物理层特征参数取值进行综合分析,最后确定是否为攻击行为。
Ⅲ)当***对于安全性能要求较高如图4,并且对防御的实时性要求同样较高时,则只对网络层中提取的行为分类中的未知行为的物理层数据进行特征判断,结合网络层与物理层的特征参数取值进行综合分析,即经过深度学习进行特征分析后会存在一个和规定界限的阈值的参数值相比对,确定攻击行为。
Ⅳ)当***对于安全性能要求不高,并且对防御的实时性要求同不高时,则不启用认知识别,即网络层中使用深度学习判别的攻击行为类型即为最终的攻击行为类型。
本方案与现有提取特征方法对比如表2所示:
表2
如表2所示,分别展示了IASA,Muscle,IMuscle以及本实施例中基于深度学习的提取方法,对四种提取特征方法进行比较,可以发现对于同一攻击类型的最具有代表性的最长序列特征:“GET~*~~HTTP/1.1\r\n*;~*\nHost~*\r\n*;~*\r\nHost;~*\Xff\xBF*\r\n”,本实施例提出的基于深度学习的恶意代码识别方法在提取时间上以及提取准确率上都高于另外的三种提取方法。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (7)
1.一种基于深度学习的多层次攻击特征提取及恶意行为识别方法,其特征在于,包括:
利用深度学习方法对攻击行为数据库中的恶意代码进行训练,以构建恶意代码的攻击数据模型;
基于攻击数据模型对网络层中的待测代码进行处理,得到待测代码的网络层数据特征;
对所述网络层数据特征进行匹配处理,并根据匹配结果将待测代码划分为正常代码、恶意代码以及未知代码;
对物理层中的待测代码进行特征提取,得到待测代码的物理层数据特征,具体包括:
在防御等级要求高且防御实时性要求低时,采用基于主动机的攻击特征提取方法对所述正常代码的物理层数据和所述未知代码的物理层数据进行特征提取,分别得到正常代码的物理层数据特征和未知代码的物理层数据特征;
在防御等级要求高且防御实时性要求高时,采用基于主动机的攻击特征提取方法对所述未知代码的物理层数据进行特征提取,得到未知代码的物理层数据特征;
结合网络层数据特征和物理层数据特征,确定待测代码是否为恶意代码,具体包括:
在防御等级要求和防御实时性要求都低时,将所述待测代码的网络层数据特征与攻击特征数据库中的攻击特征进行比较;
在待测代码的网络层数据特征与攻击特征数据库中的攻击特征相匹配时,确定所述待测代码是否为恶意代码。
2.如权利要求1所述的基于深度学习的多层次攻击特征提取及恶意行为识别方法,其特征在于,所述利用深度学习方法对攻击行为数据库中的恶意代码进行训练,以构建恶意代码的攻击数据模型,包括:
将所述攻击行为数据库中的恶意代码的必要攻击特征转换为约束条件;
根据约束条件构建恶意代码的攻击目标函数;
利用非线性迭代算法对攻击目标函数进行求解,得到恶意代码的攻击向量;
根据恶意代码的攻击向量构建所述攻击数据模型。
3.如权利要求1所述的基于深度学习的多层次攻击特征提取及恶意行为识别方法,其特征在于,所述基于攻击数据模型对网络层中的待测代码进行处理,得到待测代码的网络层数据特征,包括:
将所述待测代码作为所述攻击数据模型的输入,得到所述待测代码对应的网络层攻击向量;
将网络层攻击向量作为预先构建的神经网络模型的输入,得到网络层数据特征。
4.如权利要求3所述的基于深度学习的多层次攻击特征提取及恶意行为识别方法,其特征在于,所述预先构建的神经网络模型的构建过程包括:
将k个有限的波尔兹曼机堆叠成一个深度信念网络,k是正整数;
通过无监督方式对深度信念网络的第一层受限的波尔兹曼机中每个神经单元的数据特征分类参数进行训练;
将第一层受限的波尔兹曼机的隐藏层作为第二层的可视化层以对第二层受限的波尔兹曼机中每个神经单元的数据特征分类参数进行训练,依次向顶层完成对每层受限的波尔兹曼机参数的训练,得到神经网络模型的初始参数;
利用具有诱捕特征标签的数据对所述初始参数进行监督训练,确定每层受限的波尔兹曼机中神经单元的权重参数及相邻网络层之间的亲密度,构建所述神经网络模型。
5.如权利要求4所述的基于深度学习的多层次攻击特征提取及恶意行为识别方法,其特征在于,所述将网络层攻击向量作为预先构建的神经网络模型的输入,得到网络层数据特征,包括:
在所述神经网络模型中,遍历待测代码中的可疑代码序列与***中记录的恶意代码序列,对两序列中的每个字符进行匹配,得到匹配结果;
遍历匹配结果,将最长的公共子序列作为网络层数据特征。
6.如权利要求1所述的基于深度学习的多层次攻击特征提取及恶意行为识别方法,其特征在于,所述结合网络层数据特征和物理层数据特征,确定待测代码是否为恶意代码,包括:
将网络层数据特征和物理层数据特征分别与攻击特征数据库中的特征进行比较,该特征数据库中攻击特征为所述攻击行为数据库中恶意代码的特征;
判断网络层数据特征是否与所述攻击特征数据库中的特征相匹配,以及判断物理层数据特征是否与所述攻击特征数据库中的特征相匹配;
在至少一个比较结果为相匹配时,确定待测代码是否为恶意代码。
7.一种如权利要求1-6任一项所述的基于深度学习的多层次攻击特征提取及恶意行为识别方法,其特征在于,在确定所述待测代码为恶意代码时,还包括:
将确定为恶意代码的所述待测代码作为新增数据,添加至所述攻击行为数据库中,对所述攻击行为数据库进行更新;
利用深度学习方法对更新后的攻击行为数据库中的恶意代码进行训练,以对攻击数据模型进行更新。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810481076.9A CN108718310B (zh) | 2018-05-18 | 2018-05-18 | 基于深度学习的多层次攻击特征提取及恶意行为识别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810481076.9A CN108718310B (zh) | 2018-05-18 | 2018-05-18 | 基于深度学习的多层次攻击特征提取及恶意行为识别方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108718310A CN108718310A (zh) | 2018-10-30 |
CN108718310B true CN108718310B (zh) | 2021-02-26 |
Family
ID=63899978
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810481076.9A Active CN108718310B (zh) | 2018-05-18 | 2018-05-18 | 基于深度学习的多层次攻击特征提取及恶意行为识别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108718310B (zh) |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109508458B (zh) * | 2018-10-31 | 2023-05-26 | 北京国双科技有限公司 | 法律实体的识别方法及装置 |
CN109766693A (zh) * | 2018-12-11 | 2019-05-17 | 四川大学 | 一种基于深度学习的跨站脚本攻击检测方法 |
CN109873826B (zh) * | 2019-02-28 | 2022-05-27 | 中国人民解放军战略支援部队信息工程大学 | 一种基于动态反馈的渗透路径规划方法及*** |
CN110061982B (zh) * | 2019-04-02 | 2021-06-29 | 广州大学 | 一种基于强化学习的对抗智能攻击安全传输方法 |
CN110290101B (zh) * | 2019-04-15 | 2021-12-07 | 南京邮电大学 | 智能电网环境中基于深度信任网络的关联攻击行为识别方法 |
CN110390354B (zh) * | 2019-07-01 | 2021-08-27 | 华北电力科学研究院有限责任公司 | 深度网络防御能力的预测方法及装置 |
CN110855683B (zh) * | 2019-11-18 | 2021-08-10 | 东北电力大学 | 一种对电力信息物理***进行攻击检测及重构的方法 |
CN111143835B (zh) * | 2019-11-18 | 2021-12-31 | 深圳供电局有限公司 | 基于机器学习的电力计量***业务逻辑非侵入式防护方法 |
CN110868421A (zh) * | 2019-11-19 | 2020-03-06 | 泰康保险集团股份有限公司 | 恶意代码的识别方法、装置、设备及存储介质 |
CN113127866B (zh) * | 2019-12-31 | 2023-08-18 | 奇安信科技集团股份有限公司 | 恶意代码的特征码提取方法、装置和计算机设备 |
CN111208731B (zh) * | 2020-01-12 | 2022-05-24 | 东北电力大学 | 一种对电力信息物理***进行攻击检测及重构的方法 |
CN113472721B (zh) * | 2020-03-31 | 2022-12-06 | 华为技术有限公司 | 一种网络攻击检测方法及装置 |
CN113496033B (zh) * | 2020-04-08 | 2024-07-12 | 腾讯科技(深圳)有限公司 | 访问行为识别方法和装置及存储介质 |
CN111488585B (zh) * | 2020-04-17 | 2023-06-27 | 北京墨云科技有限公司 | 一种用于漏洞检测的基于深度学习的攻击向量生成方法 |
CN111797401B (zh) * | 2020-07-08 | 2023-12-29 | 深信服科技股份有限公司 | 一种攻击检测参数获取方法、装置、设备及可读存储介质 |
CN114091019A (zh) * | 2020-12-03 | 2022-02-25 | 奇安信科技集团股份有限公司 | 数据集构建、恶意软件识别、识别模型构建方法及装置 |
CN112565272B (zh) * | 2020-12-09 | 2022-05-17 | 中国人民解放军国防科技大学 | 双层网络最小斯坦纳树阻断方法、装置和计算机设备 |
CN112883995A (zh) * | 2020-12-30 | 2021-06-01 | 华北电力大学 | 基于集成学习的闭源电力工控***恶意行为识别方法及装置 |
CN113141360B (zh) * | 2021-04-21 | 2022-06-28 | 建信金融科技有限责任公司 | 网络恶意攻击的检测方法和装置 |
CN113596020B (zh) * | 2021-07-28 | 2023-03-24 | 深圳供电局有限公司 | 一种智能电网虚假数据注入攻击漏洞检测方法 |
CN114095260A (zh) * | 2021-11-22 | 2022-02-25 | 广东电网有限责任公司 | 一种电网异常流量检测方法、装置、设备及计算机介质 |
CN114978654B (zh) * | 2022-05-12 | 2023-03-10 | 北京大学 | 一种基于深度学习的端到端通信***攻击防御方法 |
CN115033895B (zh) * | 2022-08-12 | 2022-12-09 | 中国电子科技集团公司第三十研究所 | 一种二进制程序供应链安全检测方法及装置 |
CN115580492B (zh) * | 2022-12-07 | 2023-05-16 | 深圳市乙辰科技股份有限公司 | 基于网络设备的智能化网络安全防护方法及*** |
CN117336068A (zh) * | 2023-10-16 | 2024-01-02 | 北京安博通科技股份有限公司 | 基于网关设备的数据报文处理方法、装置及设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102711099A (zh) * | 2012-06-20 | 2012-10-03 | 上海电机学院 | 可抵抗干扰攻击的安全路由方法及*** |
CN103379099A (zh) * | 2012-04-19 | 2013-10-30 | 阿里巴巴集团控股有限公司 | 恶意攻击识别方法及*** |
CN106850675A (zh) * | 2017-03-10 | 2017-06-13 | 北京安赛创想科技有限公司 | 一种网络攻击行为的确定方法及装置 |
CN107194251A (zh) * | 2017-04-01 | 2017-09-22 | 中国科学院信息工程研究所 | Android平台恶意应用检测方法及装置 |
CN107392025A (zh) * | 2017-08-28 | 2017-11-24 | 刘龙 | 基于深度学习的恶意安卓应用程序检测方法 |
CN108040073A (zh) * | 2018-01-23 | 2018-05-15 | 杭州电子科技大学 | 信息物理交通***中基于深度学习的恶意攻击检测方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10169581B2 (en) * | 2016-08-29 | 2019-01-01 | Trend Micro Incorporated | Detecting malicious code in sections of computer files |
-
2018
- 2018-05-18 CN CN201810481076.9A patent/CN108718310B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103379099A (zh) * | 2012-04-19 | 2013-10-30 | 阿里巴巴集团控股有限公司 | 恶意攻击识别方法及*** |
CN102711099A (zh) * | 2012-06-20 | 2012-10-03 | 上海电机学院 | 可抵抗干扰攻击的安全路由方法及*** |
CN106850675A (zh) * | 2017-03-10 | 2017-06-13 | 北京安赛创想科技有限公司 | 一种网络攻击行为的确定方法及装置 |
CN107194251A (zh) * | 2017-04-01 | 2017-09-22 | 中国科学院信息工程研究所 | Android平台恶意应用检测方法及装置 |
CN107392025A (zh) * | 2017-08-28 | 2017-11-24 | 刘龙 | 基于深度学习的恶意安卓应用程序检测方法 |
CN108040073A (zh) * | 2018-01-23 | 2018-05-15 | 杭州电子科技大学 | 信息物理交通***中基于深度学习的恶意攻击检测方法 |
Non-Patent Citations (2)
Title |
---|
Deep Neural Networks for Automatic Android Malware Detection;Shifu Hou et al;;《2017 IEEE/ACM International Conference on Advances in Social Networks Analysis and Mining (ASONAM)》;20170803;第803-810页 * |
基于行为的恶意代码检测方法研究;杨晔;《中国优秀硕士学位论文全文数据库 信息科技辑(月刊 ) 》;20170315;第I138-213页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108718310A (zh) | 2018-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108718310B (zh) | 基于深度学习的多层次攻击特征提取及恶意行为识别方法 | |
CN113961922B (zh) | 一种基于深度学习的恶意软件行为检测与分类*** | |
CN111783442A (zh) | 入侵检测方法、设备和服务器、存储介质 | |
CN111600919B (zh) | 智能网络应用防护***模型的构建方法和装置 | |
CN111143838B (zh) | 数据库用户异常行为检测方法 | |
CN106411921A (zh) | 基于因果贝叶斯网络的多步攻击预测方法 | |
CN112492059A (zh) | Dga域名检测模型训练方法、dga域名检测方法、装置及存储介质 | |
CN112738014A (zh) | 一种基于卷积时序网络的工控流量异常检测方法及*** | |
Gonaygunta | Machine learning algorithms for detection of cyber threats using logistic regression | |
Chen et al. | Applying convolutional neural network for malware detection | |
CN116305119A (zh) | 基于预测指导原型的apt恶意软件分类方法和装置 | |
CN111400713A (zh) | 基于操作码邻接图特征的恶意软件族群分类方法 | |
Harbola et al. | Improved intrusion detection in DDoS applying feature selection using rank & score of attributes in KDD-99 data set | |
CN117692242A (zh) | 一种基于图谱分析的网络攻击路径分析方法 | |
CN110290101B (zh) | 智能电网环境中基于深度信任网络的关联攻击行为识别方法 | |
CN116545679A (zh) | 一种工业情境安全基础框架及网络攻击行为特征分析方法 | |
Stokes et al. | Detection of prevalent malware families with deep learning | |
Wan et al. | State-based control feature extraction for effective anomaly detection in process industries | |
Mesadieu et al. | Leveraging Deep Reinforcement Learning Technique for Intrusion Detection in SCADA Infrastructure | |
CN117521042B (zh) | 基于集成学习的高危授权用户识别方法 | |
Ling et al. | Graph Attention Mechanism-Based Method for Tracing APT Attacks in Power Systems | |
Kumar et al. | Fuzzy inference based feature selection and optimized deep learning for Advanced Persistent Threat attack detection | |
CN117610002B (zh) | 基于多模态特征对齐的轻量化恶意软件威胁检测方法 | |
Nour et al. | Optimizing intrusion detection in industrial cyber-physical systems through transfer learning approaches | |
CN116579337B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |