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は、制御フローパattersを用いてバイトコードおよびネイティブコードマルウェアの両方を検出する、Android向けネイティブコードレベルで動作する静的解析ベースのマルウェア検出システムであり、初めての試みである。99.16%の検出率、1.3%の偽陽性率、1サンプルあたり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.

研究の動機と目的

  • 既存のバイトコードレベルの分析ツールでは検出できない、ネイティブコードに埋め込まれたマルウェアの増加する脅威に対処すること。
  • オブスクリュケーション技術によって回避されるシグネチャベースおよびAPIコールベースの検出手法の限界を克服すること。
  • ネイティブコードとバイトコードの両方を分析可能な、プラットフォームに依存しない自動マルウェア検出システムを構築すること。
  • 一般的なオブスクリュケーション技術に対して強い制御フローパターンに注目することで、マルウェア検出へのオブスクリュケーションの影響を低減すること。
  • 制御フローデータの意味的分析を通じてシグネチャサイズと処理時間を最適化し、リアルタイム検出を可能にすること。

提案手法

  • DroidNativeは、意味的でオブスクリュケーションに対して耐性のある制御フローパターンを抽出・分析することで、ネイティブコードに対する静的解析を実施する。
  • 自動化とプラットフォーム非依存性を実現するため、検出ルールを表現するドメイン固有言語であるMAIL(Malware Analysis and Inspection Language)を採用する。
  • マルウェア変種におけるオブスクリュケーションの影響を低減するために、ACG(APIコールグラフ)およびSWOD(意味的重み付き外れ値検出)の2つの技術を活用する。
  • Androidランタイム(ART)を用いてバイトコードをネイティブコードにコンパイルすることで、バイトコードおよびネイティブコードの両方のコンponentに対して統一的な解析を可能にする。
  • 制御フローパターンを用いて、高精度を維持しながら分析時間を短縮する、コンactで効率的なシグネチャを生成する。
  • 性能の妥当性を検証するため、2240個のAndroidサンプルからなるデータセットを用い、n-fold交差検証を実施する。

実験結果

リサーチクエスチョン

  • RQ1静的解析ベースのマルウェア検出システムは、既存のツールが検出できないネイティブコードに埋め込まれたAndroidマルウェアを効果的に検出できるか?
  • RQ2シグネチャベースやAPIコールベースの手法と比較して、制御フローパターン分析は、オブスクリュケートされたマルウェア変種の検出においてどの程度有効か?
  • RQ3統合された検出フレームワークは、ネイティブコードとバイトコードの両方を高精度かつ低偽陽性率で分析できるか?
  • RQ4ドメイン固有言語(MAIL)の使用が、マルウェア検出における自動化およびプラットフォーム非依存性をどの程度向上できるか?
  • RQ5提案されたシステムは、多様なマルウェア変種をカバーしながらも、高精度を維持したままリアルタイム性能を達成できるか?

主な発見

  • DroidNativeは2240個のAndroidサンプルからなるデータセットで99.16%の検出率を達成し、8.33%から93.22%の範囲にとどまる商用および学術的ツールを著しく上回っている。
  • 1.3%の偽陽性率を報告しており、悪意あるアプリケーションと良性アプリケーションを正確に区別できることを示している。
  • 従来のマルウェア変種に対しては99.48%の検出率を達成しており、オブスクリュケーションに対して高い耐性を示している。
  • 平均検出時間は1サンプルあたり26.87秒であり、比較対象のシステム[50]と比較して約6.5倍速い。
  • DroidNativeは、ネイティブコードレベルでのマルウェア検出を実施する、知られている最初のシステムであり、ネイティブおよびバイトコードコンponent両方のマルウェア検出を可能にしている。
  • 制御フローパターンとMAIL言語の使用により、効率的で自動化され、プラットフォーム非依存のマルウェアシグネチャ生成が可能となり、最小限のパフォーマンスオーバーヘッドで実現されている。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。