[論文レビュー] Droidetec: Android Malware Detection and Malicious Code Localization through Deep Learning
Droidetec は API シーケンスの Skip-Gram API 埋め込みと Bi-LSTM による注意機構を用いて Android マルウェアを検出し、アプリ内の高注意 API の断片をハイライトして悪性コードを局在化します。
Android malware detection is a critical step towards building a security credible system. Especially, manual search for the potential malicious code has plagued program analysts for a long time. In this paper, we propose Droidetec, a deep learning based method for android malware detection and malicious code localization, to model an application program as a natural language sequence. Droidetec adopts a novel feature extraction method to derive behavior sequences from Android applications. Based on that, the bi-directional Long Short Term Memory network is utilized for malware detection. Each unit in the extracted behavior sequence is inventively represented as a vector, which allows Droidetec to automatically analyze the semantics of sequence segments and eventually find out the malicious code. Experiments with 9616 malicious and 11982 benign programs show that Droidetec reaches an accuracy of 97.22% and an F1-score of 98.21%. In all, Droidetec has a hit rate of 91% to properly find out malicious code segments.
研究の動機と目的
- 自動化された、より細かな Android マルウェア検出を二値分類を超えて動機づける。
- DEX バイトコードから意味のある挙動シーケンスを抽出し、プログラム実行を言語のようなシーケンスとしてモデル化する。
- 注意機構を活用して、アプリ内の悪意のあるコード断片を特定・局在化する。
- API 呼び出しパターンに焦点を当てることで、難読化に対して頑健な検出を実現する。
提案手法
- invoke- 命令を用いて DEX ファイルから API 呼出シーケンスを抽出するために APK を前処理する。
- ルートメソッドからの深さ優先呼出し探索を通じて挙動シーケンスを構築する。
- Skip-Gram によって学習された分散埋め込みを用いて API を表現し、API ベクトルを生成する。
- API ベクトル上で注意層を備えた Bi-LSTM を訓練し、アプリをマルウェアまたは正常として分類する。
- アテンション重みを用いてシーケンス表現を計算し、局在化のために k 個の疑いのある API およびメソッドを特定する。
実験結果
リサーチクエスチョン
- RQ1埋め込みと注意機構付き Bi-LSTM によって学習された API 呼出シーケンスは、Android マルウェアを正確に検出できるか?
- RQ2注意機構はアプリのAPIとメソッド内のおそらく悪意のあるコード断片を局在化できるか?
- RQ3Droidetec は異なるマルウェアファミリ間および既存のスキャナーに対してどのように性能を発揮するか?
- RQ4API ベクトル次元が検出精度と効率に与える影響は何か?
主な発見
| 方法 | 精度 | F1スコア | 偽陽性率 |
|---|---|---|---|
| Droidetec | 97.22% | 98.21% | 2.11% |
| Droid-Sec [22] | 96.50% | 95.34% | 3.69% |
| Zhao’s [23] | 91.92% | 90.50% | 9.48% |
| API usage | 83.25% | 81.56% | 16.71% |
| Permissions | 73.11% | 70.71% | 26.72% |
- Droidetec は評価データセット上で 97.22% の精度と 98.21% の F1 スコア、2.11% の FPR を達成する。
- 手法はアプリ内の悪意のコード断片を特定するヒット率が約 91% に達する。
- 検出指標ではDroidetecがDroid-SecおよびZhaoらを上回る(Droidetec: 97.22% 精度、98.21% F1;Droid-Sec: 96.50% 精度、95.34% F1;Zhao: 91.92% 精度、90.50% F1)。
- API ベクトル次元は、次元が高いほど精度/再現率が向上するが検証時間が増加するという影響があり、200 次元ベクトルが望ましいバランスを提供する(97.2% 精度、98.2% F1)。
- 注意分布は正常とマルウェア、さらにはファミリ間で異なり、悪性挙動の意味的な差異を可能にする。
より良い研究を、今すぐ始めましょう
論文設計から論文執筆まで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。