中文

一种用于 Android 恶意软件检测与恶意代码定位的多视图上下文感知方法

密码学与安全 2017-04-11 v2 人工智能 软件工程

摘要

现有的 Android 恶意软件检测方法使用多种特征(如安全敏感 API、系统调用、控制流结构和信息流),并结合机器学习分类器以实现准确检测。每个特征集都提供了应用行为的一个独特语义视角(或视图),具有固有的优势与局限性。这意味着,某些视图更易于检测特定攻击,但可能不适合表征其他若干攻击。大多数现有的恶意软件检测方法仅使用上述特征集中的一个(或选定的少数几个),这阻碍了它们检测绝大多数攻击。针对这一局限性,我们提出了 MKLDroid,这是一个统一框架,系统性地整合应用的多个视图以执行全面的恶意软件检测和恶意代码定位。其基本原理是,虽然恶意软件应用可以在某些视图中伪装自身,但在每个视图中都进行伪装同时保持恶意意图将困难得多。MKLDroid 使用图核从应用的依赖图中捕获结构和上下文信息,并识别每个视图中的恶意代码模式。随后,它采用多核学习(MKL)来寻找视图的加权组合,从而获得最佳检测准确率。除了多视图学习外,MKLDroid 独特且显著的特性是能够在依赖图中定位细粒度的恶意代码部分(例如,方法/类)。通过我们在多个数据集(包括野外应用)上的大规模实验,我们证明 MKLDroid 在准确率方面始终优于三种最先进的技术,同时保持相当的效率。在我们针对重打包恶意软件数据集的恶意代码定位实验中,MKLDroid 能够识别所有恶意类,平均召回率达到 94%。

关键词

引用

@article{arxiv.1704.01759,
  title  = {A Multi-view Context-aware Approach to Android Malware Detection and Malicious Code Localization},
  author = {Annamalai Narayanan and Mahinthan Chandramohan and Lihui Chen and Yang Liu},
  journal= {arXiv preprint arXiv:1704.01759},
  year   = {2017}
}