基于深度学习的恶意软件检测

简介: 基于深度学习的恶意软件检测

深度神经网络可以有效地挖掘原始数据中的潜在特征,而无需大量数据预处理和先验经验。神经网络在计算机视觉、语音识别和自然语言处理方面取得了一系列的成功,当然,成功的原因是多方面的,其中的一个因素就是神经网络具有从诸如像素或单个文本字符之类的原始数据中学习特征的能力。


  • Malware Detection by Eating a Whole EXE(2018 AAAIW)


  • Malware detection using 1-dimensional convolutional neural networks( 2019 EuroS&PW)


  • Lemna: Explaining deep learning based security applications(2018 CSS BP)


  • 基于深度学习的安全应用提出高精度的解释,该方法提出了基于fused lasso增强的混合回归模型,解决了现有的解释技术无法处理特征依赖和非线性局部边界问题。LEMNA可以帮助安全分析人员用来理解分类器行为,排除分类错误等。


  • Activation analysis of a byte based deep neural network for malware classification (2019 S&PW)


  • Character-level Convolutional Networks for Text Classification (2015 NIPS)


  • NLP预处理参考


  • Explaining Vulnerabilities of Deep Learning to Adversarial Malware Binaries


  • 对基于MalConv字节的恶意软件分类器进行了分析


  • 几乎所有对MalConv模型最有影响的激活都发生在PE文件的头中,这是因为它使用了一个单一的门卷积层和全局池。


  • TESSERACT: Eliminating Experimental Bias in Malware Classification across Space and Time (2019 S&P)



  • Adversarial Malware Binaries: Evading Deep Learning for Malware Detection in Executables


  • Malconv优化



  • 开发了一种新的时间最大池方法,使得所需的内存对序列长度T保持不变。这使得MalConv的内存效率提高了116倍,在原始数据集上训练的速度提高了25.8倍,同时消除了MalConv的输入长度限制



二、MalConv模型


Malware Detection by Eating a Whole EXE(2018 AAAIW)


98884087bb2a33c9f4502bcf431ce802.png




  • 计算量和内存用量能够根据序列长度而高效地扩展
  • 我们能够通过使用门控卷积体系结构和可训练的输入字节的嵌入向量表示来最大化网络的可训练参数数量来实现了上面的第一个目标
  • 通过使用更大的步幅和更大的卷积滤波器大小来控制卷积层激活单元所占用的内存单元数量
  • 在检查整个文件的时候能同时考虑到本地和全局上下文
  • 在卷积层后面添加了全局最大池化层
  • 一种解释方法是,门控卷积层能够识别恶意软件的本地指标,对全连接层最大池化处理后,使得系统能够评估整个文件中这些指标的相对强度,从而找出重要的全局组合
  • 在分析标记为恶意软件的时候能够提供更好的解释能力
  • 挑战
  • 恶意软件中的字节包含的信息具有多态性。上下文中的任何特定字节既可以表示为人类可读的文本,也可以表示为二进制代码或任意对象(如图像等)。此外,其中的某些内容可能是经过加密处理的,这样的话,它们对神经网络来说基本上就是随机的
  • 二进制文件的内容表现出多种类型的空间相关性。函数中的代码指令在空间上具有内在的相关性,但这种相关性与函数调用和跳转命令之间存在不连续性。
  • 将每个字节作为一个序列中的一个单元,我们处理的是一个200万时间步长的序列分类问题。据我们所知,这远远超过了以往任何基于神经网络的序列分类器的输入长度。为判别性特征非常稀疏的输入序列的所有两百万个时间步建立一个唯一的标签就成为一个极具挑战性的机器学习问题
  • 可解释性
  • 类激活映射CAM
  • 希望自己的神经网络对分类的结果具有一定的可解释性,以节约分析师的精力和时间。本文的思想是受到[Zhou et al. 2016]论文中的类激活映射(CAM)技术的启发而获得灵感的。对于良性和恶意软件中的每一个类别,我们都会为卷积层中最活跃的应用位置上每个过滤器的相对贡献生成一个映射。Learning Deep Features for Discriminative Localization (CVPR 2016)

b98510f4a36ea17827f16e436ddeec24.png


积分梯度 Axiomatic Attribution for Deep Networks

Captum


三、Malconv-Adversarial 模型


  • Adversarial Malware Binaries: Evading Deep Learning for Malware Detection in Executables
  • https://github.com/yuxiaorun/MalConv-Adversarial
  • 第一篇攻击基于字节序列的白盒攻击算法
  • 在文件末尾增加字节来产生对抗样本
  • 2020 Machine Learning Security Evasion Competition [github]
  • 一个关于恶意软件对抗样本的比赛
  • SecML Malware plupin
  • Partial DOS Header manipulation, formulated by Demetrio et al.
  • Explaining Vulnerabilities of Deep Learning to Adversarial Malware Binaries
  • Padding attack, formulated by Kolosnjaji et al.
  • Adversarial Malware Binaries: Evading Deep Learning for Malware Detection in Executables
  • GAMMA, formulated by Demetrio et al.
  • Functionality-preserving Black-box Optimization of Adversarial Windows Malware
  • FGSM padding + slack formulated by Kreuk et al. and Suciu et al.
  • Deceiving End-to-End Deep Learning Malware Detectors using Adversarial Examples
  • Exploring Adversarial Examples in Malware Detection
  • Content shifting and DOS header extension formulated by Demetrio et al.
  • Adversarial EXEmples: A Survey and Experimental Evaluation of Practical Attacks on Machine Learning for Windows Malware Detection


四、针对对抗样本的防御方法


相关文章
|
2月前
|
机器学习/深度学习 监控 TensorFlow
使用Python实现深度学习模型:智能农业病虫害检测与防治
使用Python实现深度学习模型:智能农业病虫害检测与防治
191 65
|
20天前
|
机器学习/深度学习 并行计算 PyTorch
图像检测【YOLOv5】——深度学习
Anaconda的安装配置:(Anaconda是一个开源的Python发行版本,包括Conda、Python以及很多安装好的工具包,比如:numpy,pandas等,其中conda是一个开源包和环境管理器,可以用于在同一个电脑上安装不同版本的软件包,并且可以在不同环境之间切换,是深度学习的必备平台。) 一.Anaconda安装配置. 1.首先进入官网:https://repo.anaconda.com,选择View All Installers. 2.打开看到的界面是Anaconda的所以安装包版本,Anaconda3就代表是Python3版本,后面跟的是发行日期,我选择了最近的2022
53 28
|
6天前
|
机器学习/深度学习 数据采集 网络安全
使用Python实现深度学习模型:智能网络安全威胁检测
使用Python实现深度学习模型:智能网络安全威胁检测
26 5
|
19天前
|
机器学习/深度学习 计算机视觉
深度学习之农作物病害检测
基于深度学习的农作物病害检测利用卷积神经网络(CNN)、生成对抗网络(GAN)、Transformer等深度学习技术,自动识别和分类农作物的病害,帮助农业工作者提高作物管理效率、减少损失。
40 3
|
24天前
|
机器学习/深度学习 传感器 监控
红外小目标检测:基于深度学习
本文介绍了红外小目标检测技术的优势、基本原理及常用方法,包括背景抑制、滤波、模型和深度学习等,并探讨了多传感器融合的应用。通过一个基于深度学习的实战案例,展示了从数据准备到模型训练的全过程。最后,文章展望了该技术在军事、安防、交通等领域的广泛应用及未来发展趋势。
|
2月前
|
机器学习/深度学习 监控 算法
基于深度学习网络的人员行为视频检测系统matlab仿真,带GUI界面
本仿真展示了基于GoogLeNet的人员行为检测系统在Matlab 2022a上的实现效果,无水印。GoogLeNet采用创新的Inception模块,高效地提取视频中人员行为特征并进行分类。核心程序循环读取视频帧,每十帧执行一次分类,最终输出最频繁的行为类别如“乐队”、“乒乓球”等。此技术适用于智能监控等多个领域。
55 4
|
2月前
|
机器学习/深度学习 数据采集 算法
基于深度学习网络的USB摄像头实时视频采集与火焰检测matlab仿真
本项目使用MATLAB2022a实现基于YOLOv2的火焰检测系统。通过USB摄像头捕捉火焰视频,系统实时识别并标出火焰位置。核心流程包括:视频采集、火焰检测及数据预处理(图像标准化与增强)。YOLOv2模型经特定火焰数据集训练,能快速准确地识别火焰。系统含详细中文注释与操作指南,助力快速上手。
|
3月前
|
机器学习/深度学习 运维 监控
使用Python实现深度学习模型:智能安防监控与异常检测
【7月更文挑战第26天】 使用Python实现深度学习模型:智能安防监控与异常检测
51 6
|
3月前
|
机器学习/深度学习 算法 vr&ar
深度学习之人脸关键点检测
人脸关键点检测的主要任务是识别并定位人脸图像中的特定关键点,例如眼睛的角点、眉毛的顶点、鼻子的底端、嘴角等。这些关键点不仅能提供面部结构的几何信息,还可以用于分析表情、识别个体,甚至检测面部姿势。
55 2
|
3月前
|
机器学习/深度学习 文字识别 自然语言处理
深度学习之文本框检测
基于深度学习的文本框检测(Text Box Detection)是一项重要的计算机视觉任务,旨在从图像中自动检测和定位文本区域。它在光学字符识别(OCR)、自动文档处理、交通标志识别等领域具有广泛的应用。
45 2
下一篇
无影云桌面