CN109190703B - 基于dnn的多态蠕虫特征码自动提取方法 - Google Patents
基于dnn的多态蠕虫特征码自动提取方法 Download PDFInfo
- Publication number
- CN109190703B CN109190703B CN201811031199.9A CN201811031199A CN109190703B CN 109190703 B CN109190703 B CN 109190703B CN 201811031199 A CN201811031199 A CN 201811031199A CN 109190703 B CN109190703 B CN 109190703B
- Authority
- CN
- China
- Prior art keywords
- feature
- worm
- codes
- code
- polymorphic
- 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
Images
Classifications
-
- 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/211—Selection of the most significant subset of features
- G06F18/2113—Selection of the most significant subset of features by ranking or filtering the set of features, e.g. using a measure of variance or of feature cross-correlation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/40—Processing or translation of natural language
- G06F40/58—Use of machine translation, e.g. for multi-lingual retrieval, for server-side translation for client devices or for real-time translation
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Evolutionary Biology (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Machine Translation (AREA)
Abstract
一种基于DNN的多态蠕虫特征码自动提取方法,其步骤为:对于DNN的多态蠕虫特征码自动提取,整个过程分为训练DNN模型和提取多态蠕虫特征码两部分。在训练模型阶段,将多态蠕虫有效载荷和其对应的特征码作为输入数据,输入到DNN网络中进行训练,得到DNN网络模型。在提取多态蠕虫特征码阶段,将多态蠕虫有效载荷输入到DNN网络模型,通过Signature Beam Search算法来提取特征码,最终输出多态蠕虫有效载荷对应的特征码。通过上述方法,本发明提供了一种能够快速且准确提取蠕虫特征码的基于DNN的多态蠕虫特征码自动提取方法。
Description
技术领域
本发明涉及一种特征码自动提取方法,尤其是一种基于DNN的多态蠕虫特征码自动提取方法。
背景技术
蠕虫特征码自动提取是指不需要人工帮助,自动从已知的攻击载荷数据中提取特征码的过程。随着DNN在自然语言处理领域的深入研究,DNN在机器翻译中表现出很好的效果。蠕虫有效载荷作为一种特殊的文本数据,由于蠕虫特征码的提取和机器翻译同样是一种多对多的序列任务,因此,我们选择使用DNN进行多态蠕虫特征码自动提取。
发明内容
本发明提出了一种基于DNN的多态蠕虫特征码自动提取方法,对于DNN的多态蠕虫特征码自动提取,整个过程分为训练DNN模型和提取多态蠕虫特征码两部分。在训练模型阶段,将多态蠕虫有效载荷和其对应的特征码作为输入数据,输入到DNN网络中进行训练,得到DNN网络模型。在提取多态蠕虫特征码阶段,将多态蠕虫有效载荷输入到DNN网络模型,通过Signature Beam Search算法来提取特征码,最终输出多态蠕虫有效载荷对应的特征码。
为了实现上述目的,本发明创造采用的技术方案为:基于DNN的多态蠕虫特征码自动提取方法,其特征在于,步骤如下:
1)模型结构:
1.1)定义:
输入为a1,a2,…,aM组成M个ASCII码的序列,这些ASCII码组成大小为|V|=V的词典V;
序列b1,b2,…,bN表示特征码;
集合X表示所有的有效载荷数据,集合Y为所有可能出现的特征码;
根据蠕虫有效载荷的特征码的条件对数概率,评分函数s(a,b)可表示为:s(a,b)=log p(b|a;θ)≈∑p(b|a,bc;θ);其中,表示窗口大小为C的特征码上下文,在bc上做Markov假设,当i<1时,bi为特定的开始符号<s>;通过评分函数可知,对局部条件概率分布建模:p(bi+1|a,bc;θ);采用神经网络机器翻译的做法,将条件概率分布参数化为一个神经网络,其包括一个神经网络语言模型和一个作为条件特征码生成模型的编码器;
2)建立深度神经网络模型:基于标准的前馈神经网络语言模型,构建包含4个隐藏层的深度神经网络模型,对于隐藏层的激活函数,选择使用ReLU;完整的DNN网络模型为:
p(bi+1|bc,a;θ)∝exp(Vh””+W*enc(a,bc)) (2)
h”=relu(U'h') (5)
h”'=relu(U”h”) (6)
h””=relu(U”'h”') (7)
在上述公式中:
enc表示基于Attention编码器,返回一个大小为H的向量,表示多态蠕虫有效载荷和对应特征码的上下文;
D表示ASCII码嵌入的大小;
V表示蠕虫有效载荷组成的字典的大小;
H表示隐藏层中隐藏单元的数量;
C表示特征码中上下文大小;
3)Attention的编码器:
使用Attention的编码器,构造基于多态蠕虫有效载荷和特征码上下文的表示,该编码器中,定义区间[x,y]为特征提取窗口的取值范围,从窗口值中反映出模型对蠕虫有效载荷中关键特征信息的关注程度;
4)提取多态蠕虫特征码:
基于DNN的多态蠕虫特征码自动提取算法,找到一个特征码b'∈Y使得:
利用多态蠕虫有效载荷的特点,在提取特征码时,我们提出一种新的方法——Signature Beam Search算法,用于求解argmax函数;
4.1)使用Signature Beam Search算法求解argmax函数时,采用全局搜索的方式来提取多态蠕虫特征码,在搜索的过程中通过判断预测的ASCII码和前一个已预测的ASCII码在多态蠕虫有效载荷中的位置是否相邻,来选择合适的ASCII码;
4.2)在提取多态蠕虫特征码时,限制特征码中的每个位置有K个候选项,在输出预测的特征码之前,通过对候选的K个特征码的对数概率值进行排序,从而选择出最优的特征码。
所述的步骤3)中:
在编码多态蠕虫有效载荷时,Attention选择固定长度的蠕虫有效载荷上下文进行学习,具体的公式描述如下:
公式中:
Q是注意力窗口的大小;
定义区间[x,y]为特征提取窗口取值范围,当窗口值小于x或者窗口值大于y时,模型无法学习到有效的特征。
所述的步骤4)中:
Signature beam Search算法描述如下:
上述算法中:
b_i1_index表示预测的ASCII码bi+1在有效载荷数据中的索引;
b_i_index表示预测ASCII码bi在有效载荷数据中的索引;
‘257’代表特征之间的分隔符;
bpredict={b1,b2,…,bV}表示在特征码中第i+1处预测的V个ASCII码。
本发明创造的有益效果为:本发明不需要人工分析蠕虫有效载荷,通过上述方法可以自动从蠕虫有效载荷和蠕虫特征码中进行学习,使用DNN能够从训练数据中学习到更复杂的特征,从而快速且准确地进行蠕虫特征码自动化提取。
附图说明
图1:步骤3)中深度神经网络语言模型。
具体实施方式
一种基于DNN的多态蠕虫特征码自动提取方法,步骤为:
1)模型结构:
1.1)定义:
输入为a1,a2,…,aM组成M个ASCII码的序列,这些ASCII码组成大小为|V|=V的词典V;
序列b1,b2,…,bN表示特征码;
集合X表示所有的有效载荷数据,集合Y为所有可能出现的特征码;
根据蠕虫有效载荷的特征码的条件对数概率,评分函数s(a,b)可表示为:s(a,b)=log p(b|a;θ)≈∑p(b|a,bc;θ);其中,表示窗口大小为C的特征码上下文,在bc上做Markov假设,当i<1时,bi为特定的开始符号<s>;通过评分函数可知,对局部条件概率分布建模:p(bi+1|a,bc;θ);采用神经网络机器翻译的做法,将条件概率分布参数化为一个神经网络,其包括一个神经网络语言模型和一个作为条件特征码生成模型的编码器。
2)建立深度神经网络模型:基于标准的前馈神经网络语言模型,构建包含4个隐藏层的深度神经网络模型,对于隐藏层的激活函数,我们选择使用ReLU,该函数的优点在于:在反向传播中,可以缓解梯度消失问题;也可以加快神经网络模型的收敛速度。完整的DNN网络模型为:
p(bi+1|bc,a;θ)∝exp(Vh””+W*enc(a,bc)) (2)
h”=relu(U'h') (5)
h”'=relu(U”h”) (6)
h””=relu(U”'h”') (7)
在上述公式中:
enc表示基于Attention编码器,返回一个大小为H的向量,表示多态蠕虫有效载荷和对应特征码的上下文;
D表示ASCII码嵌入的大小;
V表示蠕虫有效载荷组成的字典的大小;
H表示隐藏层中隐藏单元的数量;
C表示特征码中上下文大小;
图1为深度神经网络语言模型的示意图。其中,a表示多态蠕虫有效载荷,b表示对应的特征码。
3)Attention的编码器:
特征码是多态蠕虫有效载荷的关键信息,它们是由多个连续子字符串组合而成的。因此并不需要全局地考虑整个文本,只需要关注有限数量的字符构成的上下文即可,这样更能捕获到多态蠕虫有效载荷中的关键信息。为了解决这个问题,选择使用基于Attention的编码器,其能构造基于多态蠕虫有效载荷和特征码上下文的表示。在编码多态蠕虫有效载荷时,Attention选择固定长度的蠕虫有效载荷上下文进行学习。具体的公式描述如下:
上述公式中:
Q是注意力窗口的大小。
定义:区间[x,y]是特征提取窗口取值范围。当窗口值小于x或者窗口值大于y时,模型无法学习到有效的特征。
在该编码器中,窗口值能够反映出模型对蠕虫有效载荷中关键特征信息的关注程度。通过研究发现,只有当窗口值在一个固定区间[x,y]内时,模型才能够从蠕虫有效载荷中学习到其中的特征信息。如果窗口值小于x或者窗口值大于y时,模型无法关注到蠕虫有效载荷中的特征信息。因此,我们定义这个窗口区间为特征提取窗口区间。
4)提取多态蠕虫特征码:
对于多态蠕虫特征码的提取问题,基于DNN的多态蠕虫特征码自动提取算法需要找到一个特征码b'∈Y使得:
在机器翻译中生成译文是NP问题(Non-deterministic Polynomial,多项式复杂程度的非确定性问题),但是在提取多态蠕虫特征码时b'的计算代价并不大。在多态蠕虫特征码提取中,有效载荷数据集合所构成的字典V由256个ASCII所组成的;对于多态蠕虫有效载荷来说,其特征码在蠕虫有效载荷数据出现的位置是有序并且依次出现的。也就是说,只有当提取出来的特征码依次出现时,该特征码才是有效的。利用多态蠕虫有效载荷的上述特点,在提取特征码时,提出一种新的方法——Signature Beam Search算法,用于求解argmax函数。
在使用Signature Beam Search算法求解argmax函数时,采用全局搜索的方式来提取多态蠕虫特征码,在搜索的过程中通过判断预测的ASCII码和前一个已预测的ASCII码在多态蠕虫有效载荷中的位置是否相邻来选择合适的ASCII码。在提取多态蠕虫特征码时,限制特征码中的每个位置有K个候选项,在输出预测的特征码之前,通过对候选的K个特征码的对数概率值进行排序,从而选择出最优的特征码。Signature Beam Search算法的最大时间复杂度为O(KNV)。Signature beam Search算法描述如下:
上述算法中:
b_i1_index表示预测的ASCII码bi+1在有效载荷数据中的索引;
b_i_index表示预测ASCII码bi在有效载荷数据中的索引;
‘257’代表特征之间的分隔符;
bpredict={b1,b2,…,bV}表示在特征码中第i+1处预测的V个ASCII码。
Claims (1)
1.基于DNN的多态蠕虫特征码自动提取方法,其特征在于,步骤如下:
1)模型结构:
1.1)定义:
输入为a1,a2,…,aM组成M个ASCII码的序列,这些ASCII码组成大小为|V|=V的词典V;
序列b1,b2,…,bN表示特征码;
集合X表示所有的有效载荷数据,集合Y为所有可能出现的特征码;
根据蠕虫有效载荷的特征码的条件对数概率,评分函数s(a,b)可表示为:s(a,b)=logp(b|a;θ)≈∑p(b|a,bc;θ);其中,表示窗口大小为C的特征码上下文,在bc上做Markov假设,当i<1时,bi为特定的开始符号<s>;通过评分函数可知,对局部条件概率分布建模:p(bi+1|a,bc;θ);采用神经网络机器翻译的做法,将条件概率分布参数化为一个神经网络,其包括一个神经网络语言模型和一个作为条件特征码生成模型的编码器;
2)建立深度神经网络模型:基于标准的前馈神经网络语言模型,构建包含4个隐藏层的深度神经网络模型,对于隐藏层的激活函数,选择使用ReLU;完整的DNN网络模型为:
p(bi+1|bc,a;θ)∝exp(Vh””+W*enc(a,bc)) (2)
h”=relu(U'h') (5)
h”'=relu(U”h”) (6)
h””=relu(U”'h”') (7)
在上述公式中:
enc表示基于Attention编码器,返回一个大小为H的向量,表示多态蠕虫有效载荷和对应特征码的上下文;
D表示ASCII码嵌入的大小;
V表示蠕虫有效载荷组成的字典的大小;
H表示隐藏层中隐藏单元的数量;
C表示特征码中上下文大小;
3)Attention的编码器:
使用Attention的编码器,构造基于多态蠕虫有效载荷和特征码上下文的表示,该编码器中,定义区间[x,y]为特征提取窗口取值范围,从窗口值中反映出模型对蠕虫有效载荷中关键特征信息的关注程度;
4)提取多态蠕虫特征码:
基于DNN的多态蠕虫特征码自动提取算法,找到一个特征码b'∈Y使得:
利用多态蠕虫有效载荷的特点,在提取特征码时,采用Signature Beam Search算法,用于求解argmax函数;
4.1)使用Signature Beam Search算法求解argmax函数时,采用全局搜索的方式来提取多态蠕虫特征码,在搜索的过程中通过判断预测的ASCII码和前一个已预测的ASCII码在多态蠕虫有效载荷中的位置是否相邻,来选择合适的ASCII码;
4.2)在提取多态蠕虫特征码时,限制特征码中的每个位置有K个候选项,在输出预测的特征码之前,通过对候选的K个特征码的对数概率值进行排序,从而选择出最优的特征码;
Signature beam Search算法描述如下:
输入:a,K;a代表有效蠕虫的有效载荷,K代表搜索的大小;
输出:sig;sig代表特征码;
从1到N循环遍历所有特征,对于每个特征从1到K,通过argmax g(bi+1,a,bc)计算其预测的特征值{b1,b2,…,bV},并且再次循环遍历这V个值,当预测的ASCII码bi+1在有效载荷数据中的索引与预测ASCII码bi在有效载荷数据中的索引的值相同时,将bi+1赋值给sig[i][k],并且跳出本次循环,否则继续循环;如果最后循环结束仍然没有满足条件的时候,将sig[i][k]设置为257。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811031199.9A CN109190703B (zh) | 2018-09-05 | 2018-09-05 | 基于dnn的多态蠕虫特征码自动提取方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811031199.9A CN109190703B (zh) | 2018-09-05 | 2018-09-05 | 基于dnn的多态蠕虫特征码自动提取方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109190703A CN109190703A (zh) | 2019-01-11 |
CN109190703B true CN109190703B (zh) | 2021-08-24 |
Family
ID=64914728
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811031199.9A Active CN109190703B (zh) | 2018-09-05 | 2018-09-05 | 基于dnn的多态蠕虫特征码自动提取方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109190703B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11551136B2 (en) * | 2018-11-14 | 2023-01-10 | Tencent America LLC | N-best softmax smoothing for minimum bayes risk training of attention based sequence-to-sequence models |
CN111125703A (zh) * | 2019-12-24 | 2020-05-08 | 沈阳航空航天大学 | 一种基于幂级数rnn的多态网络蠕虫特征码提取 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103501302A (zh) * | 2013-10-12 | 2014-01-08 | 沈阳航空航天大学 | 一种蠕虫特征自动提取的方法及系统 |
CN105247532A (zh) * | 2013-03-18 | 2016-01-13 | 纽约市哥伦比亚大学理事会 | 使用硬件特征的无监督的基于异常的恶意软件检测 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9367685B2 (en) * | 2014-09-30 | 2016-06-14 | Juniper Networks, Inc. | Dynamically optimizing performance of a security appliance |
-
2018
- 2018-09-05 CN CN201811031199.9A patent/CN109190703B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105247532A (zh) * | 2013-03-18 | 2016-01-13 | 纽约市哥伦比亚大学理事会 | 使用硬件特征的无监督的基于异常的恶意软件检测 |
CN103501302A (zh) * | 2013-10-12 | 2014-01-08 | 沈阳航空航天大学 | 一种蠕虫特征自动提取的方法及系统 |
Non-Patent Citations (3)
Title |
---|
A Neural Attention Model for Abstractive Sentence Summarization;Alexander M. Rush et al.;《Computer Science》;20150903;1-11 * |
Adaptive Worm Detection Model Based on Multi Classifiers;Tawfeeq S. Barhoom et.al;《2013 Palestinian International Conference on Information and Communication Technology》;20130625;58-67 * |
基于神经网络的程序行为恶意性判定原型系统的设计与实现;雷家怡;《中国优秀硕士学位论文全文数据库 信息科技辑》;20180615;I140-83 * |
Also Published As
Publication number | Publication date |
---|---|
CN109190703A (zh) | 2019-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110765966B (zh) | 一种面向手写文字的一阶段自动识别与翻译方法 | |
CN110309287B (zh) | 建模对话轮次信息的检索式闲聊对话打分方法 | |
CN107291693B (zh) | 一种改进词向量模型的语义计算方法 | |
CN106502985B (zh) | 一种用于生成标题的神经网络建模方法及装置 | |
CN108984530B (zh) | 一种网络敏感内容的检测方法及检测系统 | |
Liu et al. | A recursive recurrent neural network for statistical machine translation | |
CN113312500B (zh) | 一种面向大坝安全运行的事件图谱构建方法 | |
CN109948152A (zh) | 一种基于lstm的中文文本语法纠错模型方法 | |
CN107273913B (zh) | 一种基于多特征融合的短文本相似度计算方法 | |
CN110110323B (zh) | 一种文本情感分类方法和装置、计算机可读存储介质 | |
CN107836000A (zh) | 用于语言建模和预测的改进的人工神经网络 | |
CN110895559B (zh) | 模型训练、文本处理方法、装置以及设备 | |
CN106502994A (zh) | 一种文本的关键词提取的方法和装置 | |
CN111858932A (zh) | 基于Transformer的多重特征中英文情感分类方法及系统 | |
CN111400494B (zh) | 一种基于GCN-Attention的情感分析方法 | |
CN111680494A (zh) | 相似文本的生成方法及装置 | |
JP6946842B2 (ja) | モデル学習装置、変換装置、方法、及びプログラム | |
US20200279079A1 (en) | Predicting probability of occurrence of a string using sequence of vectors | |
CN105975497A (zh) | 微博话题自动推荐方法及装置 | |
Al Wazrah et al. | Sentiment analysis using stacked gated recurrent unit for arabic tweets | |
CN109190703B (zh) | 基于dnn的多态蠕虫特征码自动提取方法 | |
CN113704416A (zh) | 词义消歧方法、装置、电子设备及计算机可读存储介质 | |
CN112507337A (zh) | 基于语义分析的恶意JavaScript代码检测模型的实现方法 | |
CN114818891A (zh) | 小样本多标签文本分类模型训练方法及文本分类方法 | |
CN113095314A (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 |