没有合适的资源?快使用搜索试试~ 我知道了~
DeepMalNet:静态PE恶意软件检测评估
⃝⃝可在www.sciencedirect.com在线ScienceDirectICT Express 4(2018)255www.elsevier.com/locate/icteDeepMalNet:评估浅层和深层网络的静态PE恶意软件检测维纳亚库马尔河Soman K.P.计算工程和网络中心(CEN),Amrita工程学院,Coimbatore,Amrita Vishwa Vidyapeetham,印度接收日期:2018年9月4日;接受日期:2018年在线发售2018年11月8日摘要本文主要评估浅层和深层网络静态检测恶意Windows可移植可执行(PE)文件的有效性。这使用了最近发布的,标记和基准数据集,EMBER恶意软件基准数据集。当深度网络被参数化时,参数是基于在各种实验试验中比较各种网络参数和网络拓扑的性能来选择的。深度模型的这种选择的有效配置的实验运行多达1000个epoch,学习率在0.01和0.5之间变化。与浅网络相比,深网络的观察结果更高。c2018韩国通信与信息科学研究所(KICS)。Elsevier B.V.的出版服务。这是一个开放获取CC BY-NC-ND许可证下的文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。关键词:静态分析;恶意和良性二进制文件和深度网络1. 介绍互联网的出现使当代社会发生了革命性的变化。另一方面,它给了攻击者一个机会,攻击互联网及其应用程序使用恶意软件或恶意软件。存在用于恶意软件检测的各种方法。基于签名的恶意软件检测是行业和组织中最常用的方法。这完全无法检测新的恶意软件或现有恶意软件的变体。在[1]中,Pandas Lab报告称,反病毒引擎检测到的恶意软件中有27%是在2015年首次遇到的此外,每当基于签名的安全套件看到新的恶意软件时,开发人员必须手动分析它并为其分配签名在此之前,攻击者将从受损的系统中受益。机器学习有能力检测新的或现有恶意软件的变体。由于公开可用数据集的限制,没有探索使用机器学习的恶意软件检测。在[2]中讨论了所涉及*通讯作者。电子邮件地址:r vinayakumar@cb.amrita.edu(Vinayakumar R.)。同行评审由韩国通信和信息科学研究所(KICS)负责https://doi.org/10.1016/j.icte.2018.10.006在良性和恶意软件二进制文件收集和标记中。传统的机器学习算法依赖于特征。为了从二进制文件中提取各种功能,使用了静态和动态恶意软件检测。静态恶意软件检测是最常用的方法之一,其目的是在不执行样本的情况下将样本区分为良性或恶意软件。它对原始二进制文件进行操作,并导致分析混淆和加密文件的各种问题。动态恶意软件检测在受控环境中执行二进制文件并监视其行为。最常用的运行时行为是系统调用,网络流量信息和其他[3这会消耗更多的时间,并且被认为是资源密集型任务。虽然,静态恶意软件检测不是安全套件中的重要阶段,但它仍然可以在执行之前检测恶意文件[6]。深度学习是经典机器学习的复杂模型,也是神经网络的高级模型。最近几天,深度学习技术在各种网络安全任务上取得了优异的成绩[7]。这也被应用于恶意软件检测。在[4]中,使用随机投影和神经网络的组合进行大规模恶意软件分类。他们使用API的三元组2405-9595/c2018韩国通信和信息科学研究所(KICS)。出版社:Elsevier B.V.这是一篇基于CC BY-NC-ND许可证的开放获取文章(http://creativecommons.org/licenses/by-nc-nd/4.0/)。=∈:→:→∈256Vinayakumar河和Soman K.P./ICT Express 4(2018)255调用,单个系统API调用和进程中标识的空终止模式采用随机在[3]中,提出了基于语言模型的恶意软件检测,通过传递原始指令而不是依赖于特征工程。语言模型是递归神经网络(RNN)或回声状态网络(ESN)。这获得了时域特征,然后进行逻辑回归分类。在[5]之后,评估了其他深度学习方法的有效性,如长短期记忆(LSTM)和卷积神经网络(CNN)。在[2]中,提出了用于恶意软件分类的两层深度神经网络(DNN),其特征来自可移植可执行(PE)文件的结构和头信息。在[8]中,提出了用于恶意软件分类的多任务深度学习架构使用动态分析从二进制文件中提取的功能。他们遵循[3]的特征选择方法来减少数据的维度。在[9]中,比较了使用LightGBM训练的基线梯度提升决策树模型与MalConv的性能,Ember模型的性能优于MalConv [10]。他们报告说,所提出的模型的性能可以通过仔细遵循超参数优化来提高。他们还将数据集合,其中包括功能以及原始二进制文件和相关代码,以供进一步研究。在另一个研究方向上,原始二进制文件被传递到DNN中,以捕获用于区分良性和恶意二进制文件的最佳特征表示[10,11]。接下来,在这项工作中,深度神经网络(DNN)(深度网络)被用于静态PE恶意软件检测。为了进行比较研究,考虑了浅层网络(经典机器学习分类器)。本文件其余部分组织如下。第2节讨论了深度神经网络(DNN)的背景细节。第3节包括数据集的描述,实验和建议的架构。结果见第4节。最后在第五节中给出了结论和未来的工作方向.2. 背景本节主要简要介绍深度神经网络(DNN)架构的基础知识。多层感知器(MLP)是一种经典的神经网络,它由3层或3层以上的人工神经元组成。这叫做单位。这3层分别是输入层、隐藏层和输出层。当数据高度复杂时,有可能增加隐藏层的数量。因此,隐藏层的数量是参数化的,并依赖于数据的复杂性。层中的单元一起向前传递信息或信号,而不依赖于过去的输入,这被称为非循环图。MLP可以写为O:R p×R q,其中p和q是输入向量x x1,x2,.的大小。. . ,xp−1,xp和输出向量O(x)。在数学上,每个隐藏层H1,i的计算可以表示如下。H Ii(x)=f(wiTx+bi)(1)H IIR di −1R di,fRR,wiR d×di−1和b R di,f是元素非线性函数。当网络由l个隐藏层组成时,它们的组合表示通常可以定义为:H I(x)=H II(H II−1(H II−2(···(H I1(x)))))(2)这种将隐藏层堆叠在彼此之上的方式通常被称为深度神经网络(DNN)。隐藏层定义神经网络的深度,最大神经元定义神经网络的宽度。每个隐藏层都使用ReLU作为非线性激活函数。这有助于减少消失状态和误差梯度问题[12]。3. 实验所有经典的机器学习算法都是使用Sckit-learn实现的[13]。深度神经网络(DNN)是使用TensorFlow [14]作为Keras高级框架[15]的后端实现的。所有实验都在单个Nvidia GK110BGL Tesla k40中的GPU支持的TensorFlow3.1. 数据集用 于 实 验 的 数 据 集 是 Ember [9] 。 这 是 可 用 于 研 究Windows可移植可执行(PE)文件的恶意软件检测的最大数据集之一这些特征的详细信息见[9]。该数据集包含1.1M二进制文件,其中包括300 K恶意,300 K良性,300K未标记的训练和100 K恶意,100 K良性的测试。由于内存和计算资源的限制,这项工作随机考虑的数据集的子集该子集包含25035个良性文件和24965个恶意文件用于训练25094个良性文件和24906个恶意文件进行测试。3.2. 确定网络参数最佳参数对恶意软件检测率有直接影响,因为深度神经网络(DNN)是参数化函数。进行了各种配置的实验,以找出参数的最佳值,如学习率,单元数,激活函数和网络结构,如隐藏层的数量。最初,我们使用中等大小的DNN,它包含一个输入层,隐藏递归层和一个输出层。输入层包含2350个神经元,隐藏层包含50个单元,输出层包含1个神经元。隐层神经元与输出神经元、输入神经元与隐层神经元之间的对训练和测试数据中的值进行归一化。对于网络参数,例如范围[100-800]内的单元数,进行了两次试验。使用adam作为优化器,二进制交叉熵作为损失函数,所有实验运行500个epochs,批量大小为64。与其他DNN架构相比,具有700个单元的DNN表现出良好的性能恶意软件检测率遵循700个单位的类似检测率,维纳亚库马尔河和Soman K.P. / ICT Express 4(2018)255-258257层,10个隐藏层和一个输出层。输入层包含2,350个神经元。输出层包含1个神经元。有关建议的DNN架构的结构和配置细节的详细信息,请参见。1提出的DNN由全连接层、批归一化层和丢弃层组成。全连接层中的单元与后续层中的每个其他单元都有连接。在完全连接的层之间使用Dropout(0.01)和Batch Normalization,以避免过度拟合并加快DNN模型训练。dropout随机删除神经元及其连接在我们的替代架构中,即使在大量样本上训练,深度网络也可以很容易地过拟合训练数据而无需正则化最终的全连接层遵循sigmoid激活函数。使用二进制交叉熵估计预测损失。Fig. 1. DeepMalNet概述DNN中的单位数量从700增加到800。此外,DNN在较少的时期内在DNN中运行700个单元的实验对于其余的实验,我们决定使用700个单位。在训练过程中,为了找到一个合适的学习率,对学习率在[0.01-0.5]范围内进行了三次实验。实验结果表明,该算法在较低的学习率下具有较高的恶意软件检测率为了实现可接受的恶意软件检测性能,较低的学习率需要更多的时期。考虑到训练时间、计算成本和恶意软件检测率,我们决定在剩下的实验中使用0.01的实验使用不同的激活函数运行,例如sigmoid、tanh、ReLU、elu和SeLU。与其他激活函数相比,ReLU的性能很好。此外,ReLU,ELU和SeLU的性能更接近。ReLU解决了消失和梯度问题,此外,与其他非线性激活函数相比,它更快。此外,sigmoid和tanh等激活函数减慢了反向传播中的梯度下降。为了为我们的输入数据找到最佳的网络结构,使用了具有1-10层拓扑结构的DNN。我们对上述整个网络拓扑结构进行了2次试验。每次试验运行400个epoch。在250个epoch内,我们观察到大多数深度学习架构都能学习输入数据的正常类别模式。为了学习恶意类别数据,epoch的数量不同。为了达到最佳精度,复杂结构的最后,与其他DNN拓扑结构相比,10层网络的DNN表现良好。3.3. DeepMalNet架构4. 结果在测试实验期间,各种经典的机器学习分类器(浅网络),例如逻辑回归(LR)、朴素贝叶斯(NB)、k最近邻(KNN)、决策树(DT)、随机森林(RF)、具有线性(SI)和rbf核(Sr)的SVM。DNN在EMBER数据集上进行训练,然后用于评估来自同一数据集的先前未见过的数据。几个统计指标与ROC曲线一起估计所有模型的ROC曲线见。1DNN模型显示最高AUC为0.9983。特征在经典机器学习方法中扮演着重要的角色。使用各种机器学习分类器评估这些特征。此外,使用DNN因为它们可以有更多的层,这意味着数据被映射到更高的维度,其中数据被正确分类。表1中报告了各种经典机器学习算法和DNN的详细评估结果。使用不同数量的参数和不同数量的DNN层来评估DNN的每个模型。在所有情况下,与传统 的 机 器 学 习 分 类 器 相 比 , DNN 表 现 良 好 。 使 用LightGBM 作 为 机 器 学 习 算 法 的 梯 度 提 升 决 策 树(GBDT)模型的基线方法将所提出的方法应用于整个数据集,并从Ember中的大量特征中找到最佳特征,将被视为未来工作的重要方向之一。5. 结论和今后的工作本文全面分析和比较了深度神经网络(DNN)和各种经典的机器学习算法用于静态恶意软件检测。所提出的方法表明,DNN的性能良好,非常适合解决使用静态PE特征的恶意软件检测问题。DNN的实验具有更多层数的DNN通常调用它,因为更多数量的参数有助于捕获信息图1示出了一个概览 的架构,深-MalNet用于静态PE恶意软件检测。它包含一个输入1 https://github。com/vinayakumarrr/dnn-embererr.258Vinayakumar河和Soman K.P./ICT Express 4(2018)255表1各种经典机器学习和DNN模型的详细结果。模型精度精度召回F1得分LR0.5440.5230.9930.685NB0.5310.5160.9770.675KNN0.9420.9460.9380.942DT0.9630.9580.9690.963AB0.8340.8630.7940.827RF0.9690.9780.9590.968Sr0.5290.5140.9850.676SL0.5350.5170.9980.682DNN0.9890.9970.9800.989更好,并产生更好的结果。大量的样本 这是DNN能够比任何其他经典机器学习分类器表现得更好的原因之一。虽然DNN表现良好,但这种方法依赖于特征工程机制来提取静态PE特征。在未来,而不是依赖于原始特征工程方法来提取静态PE特征,恶意软件的样本本身可以传递到深度学习算法中以学习最佳特征表示,因此任何新的恶意软件都可以打开,这可以简单地用现有模型重新训练。这仍然是今后工作的重要方向之一。利益冲突作者声明,本文中不存在利益冲突引用[1] M.洛佩兹,所有记录的恶意软件中有27%出现在2015年和2016年。[2] J. Saxe , K. Berlin , Deep neural network based malware detectionusingtwo dimensional binary program features,《恶意软件和不需要的软件》,MALWARE,2015年第10届国际会议,IEEE,2015年,第10页。11-20[3] B. Athiwaratkun,J.W. Stokes,恶意软件分类与LSTM和GRU语言模型和字符级CNN,在:声学,语音和信号处理,ICASSP,2017年IEEE国际会议,IEEE,2017年,pp。2482-2486[4] G.E. Dahl , J.W. 斯 托克 斯湖Deng ,D. Yu , Large-scale malwareclassifica-tionusing random projects and neural networks , in :Acoustics , SpeechandSignal Processing , ICASSP , 2013 IEEEInternational Conference on,IEEE,2013,pp. 3422-3426[5] R. 帕斯 卡努Stokes ,H. Sanossian ,M. Marinescu ,A. Thomas ,Malware classification with recurrent networks , in : Acoustics ,SpeechandSignal Processing , ICASSP , 2015 IEEE InternationalConference on,IEEE,2015,pp. 1916-1920年。[6] F. 科恩,计算机病毒:理论与实验,计算机。安全性 6(1)(1987)22-35。[7] R. Vinayakumar,P. Poornachandran,K.索曼,基于域名系统数据分析的网络威胁态势感知可扩展框架,载于:工程应用中的大数据,施普林格,2018年,第10页。113-142[8] W.黄建伟<英>香港实业家。Stokes,Mtnet:用于动态恶意软件分类的多任务神经网络,在:入侵和恶意软件检测国际会议,以及漏洞评估,Springer,2016年,pp. 399-418[9] H.S. Anderson,P. Roth,Ember:用于训练静态PE恶意软件机器学习模型的开放数据集,2018,arXiv预印本arXiv:1804.0463 7。[10] E. 放 大 图 片 作 者 : J. 布 兰 登 湾 卡 坦 扎 罗 角 Nicholas , Malwaredetection by eating a whole exe , 2017 , arXiv preprintarXiv : 1710.09435.[11] M. Krc ál,O.M.lovec,M.巴莱克岛Jašek,Deep co n volutionary malw areclassifiers can learn from raw executables and labels only ,2018。[12] X. 格 洛 特 , A 。 博 德 斯 岛 Bengio , Deep sparse rectifier neuralnetworks,in:Proceedings of the Fourteenth International Conferenceon Artificial Intelligence and Statistics,2011,pp. 315-323[13] F.佩德雷戈萨湾Varoquaux,A. Gramfort,V. Michel,B.蒂里翁岛Grisel,M.作者声明:R. Weiss,V. Dubbillet,et al.,Scikit-learn:Machine learning in python,J. Mach.学习.第12(10)(2011)号决议第2825-2830段。[14] M. Abadi,P. Barham,J. Chen,Z. Chen,中国山核桃A. Davis,J.Dean , M. Devin , S. 盖 马 瓦 特 湾 欧 文 , M 。 Isard 等 人 ,TensorFlow:一个用于大规模机器学习的系统,in:OSDI,vol.16,2016,pp. 265-283。[15] F. Chollet等人,Keras(2015,2017).
下载后可阅读完整内容,剩余1页未读,立即下载
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://profile-avatar.csdnimg.cn/default.jpg!1)
cpongm
- 粉丝: 4
- 资源: 2万+
上传资源 快速赚钱
我的内容管理 收起
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
会员权益专享
最新资源
- 电力电子与电力传动专业《电子技术基础》期末考试试题
- 电力电子技术期末考试题:电力客户与服务管理专业
- 电力系统自动化《电力电子技术》期末考卷习题精选
- 电力系统自动化专业《电力电子技术》期末考试试题
- 电子信息专业《电子技术》期末考试试题解析
- 电子与信息技术专业《电子技术》期末考试试题概览
- 电子信息工程《电子技术》期末考卷习题集
- 电子信息工程专业《电子技术》期末考试试题解析
- 电子信息工程《电工与电子技术》期末考试试题解析
- 电子信息工程专业《电子技术基础》期末考试计算题解析
- 电子技术期末考试题试卷(试卷B)——电子技术应用专业
- 电子科技专业《电力电子技术》期末考试填空题精选
- 2020-21秋《电力电子技术》电机电器智能化期末试题解析
- 电气工程及其自动化专业《电子技术》期末考试题(卷六)
- 电气工程专业《电子技术基础》期末考试试题解析
- 电气自动化专业《电子技术》期末考试试题解析
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
安全验证
文档复制为VIP权益,开通VIP直接复制
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)