Skip to main content
QUICK REVIEW

[论文解读] DroidNative: Semantic-Based Detection of Android Native Code Malware

Shahid Alam, Zhengyang Qu|arXiv (Cornell University)|Feb 15, 2016
Advanced Malware Detection Techniques参考文献 37被引用 9
一句话总结

DroidNative 是首个基于静态分析的 Android 恶意软件检测系统,可在原生代码级别运行,利用控制流模式检测字节码和原生代码的恶意软件变种。其检测率达到 99.16%,误报率为 1.3%,每样本平均检测时间为 26.87 秒,优于现有工具在检测混淆恶意软件方面的表现。

ABSTRACT

According to the Symantec and F-Secure threat reports, mobile malware development in 2013 and 2014 has continued to focus almost exclusively ~99% on the Android platform. Malware writers are applying stealthy mutations (obfuscations) to create malware variants, thwarting detection by signature based detectors. In addition, the plethora of more sophisticated detectors making use of static analysis techniques to detect such variants operate only at the bytecode level, meaning that malware embedded in native code goes undetected. A recent study shows that 86% of the most popular Android applications contain native code, making this a plausible threat. This paper proposes DroidNative, an Android malware detector that uses specific control flow patterns to reduce the effect of obfuscations, provides automation and platform independence, and as far as we know is the first system that operates at the Android native code level, allowing it to detect malware embedded in both native code and bytecode. When tested with traditional malware variants it achieves a detection rate (DR) of 99.48%, compared to academic and commercial tools' DRs that range from 8.33% -- 93.22%. When tested with a dataset of 2240 samples DroidNative achieves a DR of 99.16%, a false positive rate of 0.4% and an average detection time of 26.87 sec/sample.

研究动机与目标

  • 为应对 Android 恶意软件日益增长的威胁,特别是那些嵌入在原生代码中的恶意软件,这些恶意软件目前仍无法被现有基于字节码的分析工具检测到。
  • 克服基于签名和 API 调用的检测方法在面对混淆技术时的局限性,这些技术可绕过传统检测机制。
  • 开发一种平台无关、自动化的恶意软件检测系统,能够同时分析原生代码和字节码。
  • 通过聚焦于对常见混淆技术具有鲁棒性的控制流模式,减轻混淆对恶意软件检测的影响。
  • 通过控制流的语义分析优化签名大小和处理时间,实现低延迟检测,从而支持实时检测。

提出的方法

  • DroidNative 通过提取和分析具有语义意义且对混淆具有鲁棒性的控制流模式,对原生代码执行静态分析。
  • 它使用一种领域特定语言 MAIL(恶意软件分析与检查语言)来表达检测规则,从而实现自动化和平台独立性。
  • 该系统采用两种技术——ACG(API 调用图)和 SWOD(语义加权离群检测)——以减轻恶意软件变种中混淆技术的影响。
  • 通过 Android 运行时(ART)将 Android 字节码编译为原生代码,从而实现对字节码和原生代码组件的统一分析。
  • 利用控制流模式生成紧凑高效的签名,在保持高检测准确率的同时减少分析时间。
  • 系统采用 n 折交叉验证,并在包含 2240 个 Android 样本的数据集上评估性能,以验证检测的准确性和效率。

实验结果

研究问题

  • RQ1基于静态分析的恶意软件检测系统能否有效检测嵌入在原生代码中的 Android 恶意软件,而现有工具无法做到?
  • RQ2与基于签名或 API 调用的方法相比,控制流模式分析在检测混淆恶意软件变种方面的有效性如何?
  • RQ3统一的检测框架能否在高准确率和低误报率下同时分析 Android 应用中的原生代码和字节码?
  • RQ4使用领域特定语言(MAIL)在多大程度上能提升恶意软件检测中的自动化水平和平台独立性?
  • RQ5所提出的系统能否在保持对多样化恶意软件变种高检测准确率的同时实现实时性能?

主要发现

  • DroidNative 在 2240 个 Android 样本的数据集中实现了 99.16% 的检测率,显著优于商业和学术工具(检测率范围为 8.33% 至 93.22%)。
  • 该系统报告的误报率为 1.3%,表明其在区分良性与恶意应用程序方面具有极强的精确度。
  • 对于传统恶意软件变种,DroidNative 的检测率达到 99.48%,显示出对混淆技术的极高抗性。
  • 平均检测时间为每样本 26.87 秒,约为对比系统 [50] 的 6.5 倍快。
  • DroidNative 是首个已知在原生代码级别执行恶意软件检测的系统,能够检测原生代码和字节码组件中的恶意软件。
  • 通过使用控制流模式和 MAIL 语言,实现了高效、自动化且平台独立的恶意软件签名生成,性能开销极低。

更好的研究,从现在开始

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

无需绑定信用卡

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