Skip to main content
QUICK REVIEW

[論文レビュー] EMULATOR vs REAL PHONE: Android Malware Detection Using Machine Learning

Mohammed K. Alzaylaee, Suleiman Y. Yerima|arXiv (Cornell University)|Mar 31, 2017
Advanced Malware Detection Techniques参考文献 19被引用数 38
ひとこと要約

本稿では、エミュレータベースの検出における限界、特にエミュレータ回避技術を克服するため、実機での動的解析を用いた機械学習ベースのAndroidマルウェア検出システムを提案する。Pythonツールを実装し、物理端末からの実行時特徴量を抽出し、実機ベースの解析がエミュレータに比べて顕著に優れた検出性能を示すことを実証した—最大92.6%のF-measureを達成。エミュレータに比べて23.8%多くのアプリが正常に解析可能であった。

ABSTRACT

The Android operating system has become the most popular operating system for smartphones and tablets leading to a rapid rise in malware. Sophisticated Android malware employ detection avoidance techniques in order to hide their malicious activities from analysis tools. These include a wide range of anti-emulator techniques, where the malware programs attempt to hide their malicious activities by detecting the emulator. For this reason, countermeasures against antiemulation are becoming increasingly important in Android malware detection. Analysis and detection based on real devices can alleviate the problems of anti-emulation as well as improve the effectiveness of dynamic analysis. Hence, in this paper we present an investigation of machine learning based malware detection using dynamic analysis on real devices. A tool is implemented to automatically extract dynamic features from Android phones and through several experiments, a comparative analysis of emulator based vs. device based detection by means of several machine learning algorithms is undertaken. Our study shows that several features could be extracted more effectively from the on-device dynamic analysis compared to emulators. It was also found that approximately 24% more apps were successfully analysed on the phone. Furthermore, all of the studied machine learning based detection performed better when applied to features extracted from the on-device dynamic analysis.

研究の動機と目的

  • 仮想化環境でエミュレータ回避技術を用いて検出を回避する増加する脅威であるAndroidマルウェアに対処すること。
  • エミュレータに比べて実機での動的解析が、マルウェア検出に向けた特徴抽出をより効果的に行えるかどうかを調査すること。
  • 実際のAndroid端末から抽出した特徴量を用いた機械学習ベースの検出フレームワークの開発と評価すること。
  • 複数の機械学習アルゴリズム(例:ランダムフォレスト、SVM)が、エミュレータ環境と実機環境の両方でどのように性能を発揮するかを比較すること。
  • 実機ベースの動的解析が、不完全なハードウェアエミュレーションやアプリクラッシュ率の上昇といったエミュレータの欠陥をどのように軽減できるかを示すこと。

提案手法

  • 物理Android端末からの実行時特徴量を自動抽出するためのカスタムPythonベースのツールを開発した。
  • システムは、実機のスマートフォン上でアプリを実行中に、システムコール、ネットワーク活動、センサー使用量などの特徴量を収集する。
  • Androidマルウェアゲノムプロジェクトの1,222個のマルウェアサンプルを用いて、比較評価を実施した。
  • ランダムフォレスト、ナイーブベイズ、マルチレイヤーパーセプトロン、シンプルロジスティクス、J48、PART、SVM(線形)の7つの機械学習分類器を、エミュレータと実機両方の特徴量に対して訓練およびテストした。
  • 各モデルの性能を、F-measure、真正陽性率(TPR)、偽陽性率(FPR)といった標準指標を用いて評価した。
  • 特徴抽出成功率とクラッシュ率を分析し、解析環境の信頼性を評価した。

実験結果

リサーチクエスチョン

  • RQ1実際のAndroid端末からの動的特徴抽出は、エミュレータからの抽出に比べて、より優れたマルウェア検出性能をもたらすか?
  • RQ2マルウェアに内蔵されたエミュレータ回避技術は、エミュレータベースの解析の有効性をどの程度低下させるか?
  • RQ3実機とエミュレータの両方で、動的解析の成功度(すなわち、アプリの完全実行)はどのように比較されるか?
  • RQ4ランダムフォレストやSVMといった機械学習モデルは、実機から抽出した特徴量とエミュレータから抽出した特徴量のどちらでより良い性能を発揮するか?
  • RQ5どの具体的な特徴量が、実機ではエミュレータよりも効果的に捉えられるか?

主な発見

  • 実機ではエミュレータに比べて約23.8%多くのマルウェアサンプルが正常に解析可能であり、解析の信頼性がより高いことを示している。
  • 実機ベースの動的解析は、エミュレータベースの解析よりもより効果的な特徴量を抽出でき、すべての機械学習モデルで検出性能が向上した。
  • ランダムフォレスト分類器は、実機から抽出した特徴量を用いて、92.6%のF-measure、93.1%のTPR、92.0%のFPRを達成し、最高の検出性能を示した。
  • テストされたすべての機械学習アルゴリズムが、実機から抽出した特徴量を用いた場合に、エミュレータから抽出した特徴量を用いた場合よりも優れた性能を発揮した。
  • 本研究は、実機がエミュレータよりも正確で安定した動的マルウェア解析環境を提供することを確認した。これにより、エミュレータ回避技術の影響が軽減された。
  • 結果から、エミュレータベースの解析は、不完全なハードウェアおよびOSエミュレーションに起因して本質的に制限されており、アプリクラッシュ率の上昇と特徴量の正確性の低下を引き起こすことが示唆された。

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

論文設計から論文執筆まで、研究時間を劇的に削減しましょう。

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

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