Skip to main content
QUICK REVIEW

[论文解读] Feature-level Malware Obfuscation in Deep Learning

Keith Dillon|arXiv (Cornell University)|Feb 10, 2020
Advanced Malware Detection Techniques参考文献 24被引用 5
一句话总结

本文提出了一种新型的恶意软件混淆技术,通过向恶意软件中注入良性特征(如 Intents、Permissions 和 API 调用)来逃避基于深度学习的检测。通过在增强数据上训练深度神经网络,模型对这类攻击表现出较强的鲁棒性,其中基于 API 的特征相比仅使用 Intents 或 Permissions 的方法显著更稳健,在混淆攻击下显著降低了误报率。

ABSTRACT

We consider the problem of detecting malware with deep learning models, where the malware may be combined with significant amounts of benign code. Examples of this include piggybacking and trojan horse attacks on a system, where malicious behavior is hidden within a useful application. Such added flexibility in augmenting the malware enables significantly more code obfuscation. Hence we focus on the use of static features, particularly Intents, Permissions, and API calls, which we presume cannot be ultimately hidden from the Android system, but only augmented with yet more such features. We first train a deep neural network classifier for malware classification using features of benign and malware samples. Then we demonstrate a steep increase in false negative rate (i.e., attacks succeed), simply by randomly adding features of a benign app to malware. Finally we test the use of data augmentation to harden the classifier against such attacks. We find that for API calls, it is possible to reject the vast majority of attacks, where using Intents or Permissions is less successful.

研究动机与目标

  • 研究深度学习模型在恶意软件检测中对特征级别混淆的脆弱性。
  • 评估数据增强在增强模型对注入良性特征至恶意软件的混淆攻击抵抗力方面的有效性。
  • 比较不同静态特征(API 调用、Intents 和 Permissions)在面对此类混淆时的鲁棒性。
  • 探索是否可训练模型使其对良性特征的存在保持不变,同时保持检测准确性。

提出的方法

  • 在静态 Android 应用特征(API、Intents、Permissions)上训练了一个包含 20 个全连接层、每层 1024 个单元的深度前馈神经网络。
  • 通过从干净应用中随机添加良性特征到恶意软件样本,生成混淆后的恶意软件样本,同时保持其功能完整性。
  • 通过在原始样本与混淆样本的混合数据上重新训练模型,实现数据增强,以提升鲁棒性。
  • 使用二元交叉熵损失函数,配合 ReLU 激活函数和 Adam 优化算法,并在保留的测试集上评估模型性能。
  • 通过在干净和混淆测试集上的准确率、假负率(FNR)和假正率(FPR)评估性能。
  • 比较不同特征类型(仅 API、Intents + Permissions、全部三种)下的模型性能,以评估特征的鲁棒性。

实验结果

研究问题

  • RQ1深度学习模型在通过向恶意软件中注入良性特征实现的特征级别混淆下有多脆弱?
  • RQ2通过使用混淆样本进行对抗性训练的数据增强,能否显著降低此类攻击下的假负率?
  • RQ3在恶意软件检测中,哪种静态特征——API 调用、Intents 还是 Permissions——对混淆最具鲁棒性?
  • RQ4在数据增强训练下,模型在保持干净数据上基线性能的同时,对混淆攻击的鲁棒性能达到何种程度?

主要发现

  • 向恶意软件中随机注入良性特征导致假负率急剧上升,表明标准深度学习模型对这类混淆具有高度脆弱性。
  • 仅使用 Intents 或 Permissions 作为特征时,混淆攻击下性能表现差,假负率显著高于基于 API 的模型。
  • 基于 API 的模型表现出强鲁棒性,在使用数据增强训练后,其在混淆测试集上的性能接近基线水平。
  • 结合所有特征类型(API、Intents、Permissions)并配合数据增强,显著提升了模型的鲁棒性,几乎在干净数据上达到基线准确率。
  • 使用 API 特征时,经混淆数据训练的模型在混淆测试集上的假负率低于 10%,表明其对特征级别混淆具有强大抵抗力。
  • 本研究证明,数据增强可有效使深度网络对良性特征数量保持不变,作为专注于恶意信号的非对称检测器。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。