[論文レビュー] R2-D2: ColoR-inspired Convolutional NeuRal Network (CNN)-based AndroiD Malware Detections
R2-D2は、Dalvikバイトコード(classes.dex)を固定サイズのRGBカラー画像に変換することで、手動での特徴量設計を必要とせず、エンドツーエンドで学習可能なカラーベースの畳み込みニューラルネットワーク(CNN)を提案する。このシステムは829,356個のAndroidアプリで93%の精度と96%の検出率を達成し、1アプリあたり0.5秒の推論時間を実現。また、ランサムウェアやイーサリアムスマートコントラクトの脆弱性の検出にも拡張可能である。
The influence of Deep Learning on image identification and natural language processing has attracted enormous attention globally. The convolution neural network that can learn without prior extraction of features fits well in response to the rapid iteration of Android malware. The traditional solution for detecting Android malware requires continuous learning through pre-extracted features to maintain high performance of identifying the malware. In order to reduce the manpower of feature engineering prior to the condition of not to extract pre-selected features, we have developed a coloR-inspired convolutional neuRal networks (CNN)-based AndroiD malware Detection (R2-D2) system. The system can convert the bytecode of classes.dex from Android archive file to rgb color code and store it as a color image with fixed size. The color image is input to the convolutional neural network for automatic feature extraction and training. The data was collected from Jan. 2017 to Aug 2017. During the period of time, we have collected approximately 2 million of benign and malicious Android apps for our experiments with the help from our research partner Leopard Mobile Inc. Our experiment results demonstrate that the proposed system has accurate security analysis on contracts. Furthermore, we keep our research results and experiment materials on http://R2D2.TWMAN.ORG.
研究の動機と目的
- 2012年の100万件から2016年には1,700万件を超えるまで急増した、モバイルマルウェア全体の99.87%を占めるAndroidマルウェアの増加という脅威に対処する。
- 進化を続けるマルウェアに適応できない、手動による特徴量抽出に依存する従来のマルウェア検出手法の限界を克服する。
- 熟練した専門家による特徴量設計に依存せず、生のバイトコードから自動的に特徴量を学習するエンドツーエンドのディープラーニングシステムを構築する。
- 高い効率性と低遅延を実現し、既知・未知のAndroidマルウェアをリアルタイムで検出できる。
- 同様のアプローチを、Solidityバイトコードをカラー画像に変換し、同じCNNを用いてイーサリアムスマートコントラクトの脆弱性検出に応用する。
提案手法
- バイト値を色チャンネルにマッピングすることで、AndroidのAPKファイル(特にclasses.dex)のDalvikバイトコードを固定サイズのRGBカラー画像に変換する。
- 手動による特徴量設計を不要とし、事前学習済みの畳み込みニューラルネットワーク(CNN)を用いてカラー化された画像から特徴量を自動抽出する。
- 2017年1月から8月にかけて収集した200万個のAndroidアプリ(両方の種類のサンプルを含む)のデータセット上でCNNを学習する。
- トランスファーラーニングとファインチューニング技術を活用し、汎化能力の高いマルウェア検出用にCNNを適応させる。
- TensorFlow Liteを用いてモバイルデバイスにモデルを統合し、リアルタイムのデバイス内検出を実現(R2-D2のモバイル版で実証済み)。
- イーサリアムスマートコントラクトへの応用を拡張するため、Solidityバイトコードをカラー画像に変換し、同じCNNを用いてセキュリティ脆弱性を検出するように学習する。
実験結果
リサーチクエスチョン
- RQ1生のAndroidバイトコードは、マルウェア検出に有用な意味的パターンを保持する視覚的表現に効果的に変換可能か?
- RQ2カラーデコードされたバイトコードで学習したCNNベースのモデルは、手動による特徴量設計を一切行わず、既知・未知のAndroidマルウェアを高い精度で検出可能か?
- RQ3R2-D2システムの性能は、既存の最先端のマルウェア検出手法と比較して、検出率、偽陽性率、推論速度の観点で優れているか?
- RQ4カラーデコードされたマルウェアバイトコードの視覚的パターンは、人間による検査でランサムウェアファミリーを特定可能であり、人間の認識を超える微細な差異をモデルが検出可能か?
- RQ5同様のカラーベースのディープラーニング手法を、イーサリアムスマートコントラクトの脆弱性検出に成功裏に適用可能か?
主な発見
- R2-D2は829,356個のAndroidサンプルで96%の検出率、9%の偽陽性率を達成し、全体の正確さは93%であった。
- 1サンプルあたり0.5秒の処理時間であり、分析に最大175.8秒を要する従来手法と比べて顕著に高速であった。
- 2017年9月に収集した20,035個のマルウェアサンプルの別テストセットでは、18,514個(91.72%の真正陽性率)が検出された。
- 20,313個の健全なサンプルのうち1,799個が誤検出(8.85%の偽陽性率)となり、高い特異性を示した。
- 5,852個のランサムウェアサンプルでは、96.88%の真正陽性検出率を達成し、この高影響力のマルウェアファミリーにおいて優れた性能を示した。
- 本研究では、同じファミリーに属するランサムウェアサンプルが視覚的に類似したパターンを示すことが判明し、迅速な分類が可能であることが示されたが、細分化された区別にはR2-D2モデルの活用が必要である。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。