批处理归一化的多损失孪生网络的恶意软件检测
文章目录
- 前言
- 一、介绍
- 二、相关工作
- 三、模型框架
- 四、实验分析
- 4.1参数选择
- 4.2 单样本准确率
- 4.3 ROC曲线
- 五、总结
- 参考文献
前言
目前基于深度学习的恶意软件检测方法通常需要训练大量的带有标签的样本或已经现有的恶意软件家族,对检测未知恶意软件能力有限。为了解决这一问题,本文提出了一个名为“批处理归一化的多损失孪生网络”模型,其可以在稀少的样本中达到很好的检测效率。我们的模型利用批处理归一化和多损失函数解决过拟合问题,使用小样本,造成二值交叉熵损失导致的梯度消失问题,增加特征嵌入空间提高检测精度。本文将原始二进制文件转化为恶意软件灰度图,通过生成用于训练的正负对与孪生网络结合。
一、介绍
恶意软件现如今是网络安全行业亟待解决的问题。现代部署的安全软件利用机器学习方便准确和及时的识别恶意软件。然而这些机器学习模型算法需要成千上万的已知恶意样本进行训练[1]。大多数现实场景中,通常很难获得大量带有适当标签的恶意软件样本,如果是多态代码的新变体之前从未见过。
原始字节序列分析一直被认为最有前途的方法[2-4]。因此提出一种原始可执行技术的“恶意软件可视化”方法。文献[5]利用动态分析的二进制文件转化为灰度图根据图像纹理布局相似性进行分类。
在数据论证的基础上,提出了小样本神经网络模型,该模型充分利用先验信息,提高模型在更多约束输入样本下的性能。文献[6-7]提出一种仅基于恶意样本进行分类的网络模型,检测时不涉及到正常样本。由于这些模型往往忽略类间的嵌入空间,由于可执行文件的变化部分可能导致同一恶意软件图像特征嵌入空间中距离较大,因此精度性能受限制。
因此本文的贡献如下:
- 将可执行文件转化为灰度图输入到基于单样本的孪生神经网络中。
- 本文的模型经过调整可以适用在少量数据集上,通过数据增强适当设置网络参数,添加批处理归一化避免使用少量数据导致的过拟合。
- 利用多重损失函数改进孪生网络中特征嵌入空间。使得特征嵌入空间中,属于同一类的每一个正负对之间距离变小。
二、相关工作
文献[8]利用多个CNN来检测恶意软件,包括使用基于整流线性单元(ReLU)激活函数增加稀疏性和防止过拟合。
文献[9]研究深度神经网络(DNN)在恶意程序分类中的研究。首先训练一个循环神经网络来提取恶意软件行为特征,然后进一步训练卷积神经网络(CNN)来对从RNN中提取的特征生成特征图像进行分类。
三、模型框架
整体框架图
可执行文件转图像
网络结构图
四、实验分析
4.1参数选择
4.2 单样本准确率
4.3 ROC曲线
五、总结
本文提出一种新的基于单样本的恶意软件检测神经网络模型。有效解决了传统模型无法检测未知恶意软件问题,进一步优化特征空间。在孪生网络中加入Spatial Pyramid Pooling层,它允许卷积网络取任意大小的图像,避免恶意代码的信息丢失。通过添加这一层,可以通过空间池区域调整特征图的任意大小,使其与完全连通层匹配的输出大小适当成比例。
目前提出的模型有一些局限性。例如,我们提出的模型不能正确地分类一个多态恶意软件(即通过改变或移动代码的某些部分来伪装成一个新的恶意软件),但可以将其识别为一个新的恶意软件。提出的数据论证策略所产生的合成数据的有效性并没有得到充分的检验,以确保合成数据是否捕获了真实恶意软件的特征。此外,如果原始数据被修改,尤其是原始恶意软件样本为原始二进制文件格式时,我们目前的模型很容易被误分类以对抗攻击。
参考文献
[1] Z. Cui, F. Xue, X. Cai, Y . Cao, G.-G. Wang, and J. Chen, ‘‘Detection
of malicious code variants based on deep learning,’’IEEE Trans. Ind.
Informat., vol. 14, no. 7, pp. 3187–3196, Jul. 2018.
[2] M. Krčál, O. Švec, M. Bálek, and O. Jašek, ‘‘Deep convolutional malware
classifiers can learn from raw executables and labels only,’’ inProc. ICLR,
2018, pp. 1–4.
[3] E. Raff, J. Barker, J. Sylvester, R. Brandon, B. Catanzaro, and
C. K. Nicholas, ‘‘Malware detection by eating a whole EXE,’’ inProc.
Workshops 32nd AAAI Conf. Artif. Intell., 2018, pp. 1–6.
[4] B. Kolosnjaji, A. Demontis, B. Biggio, D. Maiorca, G. Giacinto, C. Eckert,
and F. Roli, ‘‘Adversarial malware binaries: Evading deep learning for
malware detection in executables,’’ inProc. 26th Eur . Signal Process. Conf.
(EUSIPCO), Sep. 2018, pp. 533–537.
[5] L. Nataraj, S. Karthikeyan, G. Jacob, and B. S. Manjunath, ‘‘Malware
images: Visualization and automatic classification,’’inProc. 8th Int. Symp.
Vis. Cyber Secur . (VizSec), 2011, p. 4.
[6] M. Kalash, M. Rochan, N. Mohammed, N. D. B. Bruce, Y . Wang, and
F. Iqbal, ‘‘Malware classification with deep convolutional neural net-
works,’’inProc. 9th IFIP Int. Conf. New Technol., Mobility Secur . (NTMS),
Feb. 2018, pp. 1–5.
[7] R. Pascanu, J. W. Stokes, H. Sanossian, M. Marinescu, and A. Thomas,
‘‘Malware classificationwithrecurrentnetworks,’’inProc. IEEE Int. Conf.
Acoust., Speech Signal Process. (ICASSP), Apr. 2015, pp. 1916–1920.
[8] W. Wang, M. Zhao, and J. Wang, ‘‘Effective Android malware detection
with a hybrid model based on deep autoencoder and convolutional neural
network,’’J. Ambient Intell. Hum. Comput., vol. 10, no. 8, pp. 3035–3043,
Aug. 2019.
[9] S. Tobiyama, Y . Yamaguchi, H. Shimada, T. Ikuse, and T. Yagi, ‘‘Malware detection with deep neural network using process behavior,’’ inProc. IEEE 40th Annu. Comput. Softw. Appl. Conf. (COMPSAC), vol. 2, Jun. 2016,pp. 577–582.
批处理归一化的多损失孪生网络的恶意软件检测相关推荐
- 单样本学习与孪生网络
@miracle 在 单样本学习(One shot learning)和孪生网络(Siamese Network) 中说: 孪生网络与伪孪生网络 Siamese network就是"连体的神 ...
- 人机交互系统(1.2) ——深度神经网络(孪生网络)
一.前言 深度神经网络通常比较擅长从高维数据中学习,例如图像或者语言,但这是建立在它们有大量标记的样本来训练的情况下.然而,人类却拥有单样本学习的能力--如果你找一个从来没有见过小铲刀的人,给他一张小 ...
- Fully-Convolutional Siamese Networks for Object Tracking基于全卷积孪生网络的目标跟踪算法SiameseFC
1.论文相关 Bertinetto, Luca, et al. "Fully-convolutional siamese networks for object tracking." ...
- 【CV】SiamFC:用于目标跟踪的全卷积孪生网络
论文名称:Fully-Convolutional Siamese Networks for Object Tracking 论文下载:https://arxiv.org/abs/1605.07648 ...
- 独家 | 利用孪生网络,Keras,Tensorflow比较图片相似度
作者:Adrian Rosebrock 翻译:张一然 校对:wwl 本文约3700字,建议阅读8分钟. 在本文中,您将学习如何使用孪生网络和深度学习库Keras / TensorFlow比较两个图像的 ...
- 孪生网络图像相似度_生成对抗网络的进步多大,请看此文
全文共4175字,预计学习时长8分钟 最近,多项研究采用了生成对抗网络(Generative Adversarial Networks, 简称GANs)这一技术来生成分辨率为1024x1024的高清图 ...
- 【深度学习】孪生网络(Siamese Network)的模式和训练过程
[深度学习]孪生网络(Siamese Network)的模式和训练过程 文章目录 1 概述 2 Siamese network 孪生神经网络 3 孪生神经网络和伪孪生神经网络分别适用于什么场景呢? 4 ...
- MatConvnet中集成的损失函数(孪生网络的思考)
参看网址:https://www.baidu.com/?tn=94855285_hao_pg 这篇博客主要记载了利用MatCovnet实现孪生网络的一些问题,最核心的就是两个分支如何并到一起?反向传播 ...
- Siamese Network (应用篇2) :孪生网络用于图像块匹配 CVPR2015
参考论文:Zagoruyko S, Komodakis N. Learning to compare image patches via convolutional neural networks[J ...
最新文章
- jquery文件上传控件 Uploadify
- Android Studio一直处于Building的解决方法
- 【企业管理】价值创造的来源
- 从3个科技公司里学到的57条经验(转)
- ArcGIS制图之地形图制作
- 朱晔的互联网架构实践心得S2E6:浅谈高并发架构设计的16招
- 倒车入库- 通过后视镜调整方向盘
- 如何成为一个很厉害的人(时间之尺)
- DEC6713开发板的摸索(1)
- 毕业设计_Android短信查询及加密系统_短信查询
- 软件定义汽车的关键—车载操作系统
- 电阻色环转换为阻值对照表
- 工作之路---记录LZ如何在两年半的时间内升为PM
- 如何写好PRD(产品需求文档)+范例
- 华为鸿蒙公测尝鲜,华为鸿蒙尝鲜测试正式开始,分三种形式
- INSERT插入表记录
- jQuery实现点击文本框弹出热门标签的提示示例
- HTTP 状态消息 200 302 304 403 404 500 分别表示什么?
- 基于highway的数据采集
- 分享手机游戏制作各阶段的注意事项
热门文章
- 个人简历自我介绍求职PPT模板
- html播放视频不清晰,视频模糊看不清怎么办 如何将模糊视频轻松变清晰
- ObjectType HOOK干涉注册表操作(bypass Icesword,gmer,NIAP,etc.)
- 目标检测算法的评价指标
- 陶泓达:3/9黄金低位震荡,今日走势分析及操作思路
- Excel界地震 微软宣布 跨4代人34岁的 VLOOKUP 退休
- ANR机制及问题分析
- android studio 自带模拟器进行 Root 及 Xposed安装
- emeditor python_EmEditor Professional( 文档编辑器 )中文版分享
- python爬取豌豆荚中的详细信息并存储到SQL Server中