[論文レビュー] Wavelet decomposition of software entropy reveals symptoms of malicious code
本論文では、ファイルのセグメントごとのエントロピー変動の異常パターンを特定することで、ソフトウェアエントロピーのウェーブレット分解を用いてマルウェアを検出する手法を提案する。構造的エントロピー変化の程度を定量化する「不審な構造的エントロピー変化スコア」(SSECS)を用いることで、多様なマルウェアでマルウェア検出精度を50.0%から68.7%まで向上させ、文字列およびエントロピー特徴と組み合わせることで、1%未満の誤検出率でほぼ99%のパラサイト的マルウェア検出を達成した。
Sophisticated malware authors can sneak hidden malicious code into portable executable files, and this code can be hard to detect, especially if encrypted or compressed. However, when an executable file switches between code regimes (e.g. native, encrypted, compressed, text, and padding), there are corresponding shifts in the file's representation as an entropy signal. In this paper, we develop a method for automatically quantifying the extent to which patterned variations in a file's entropy signal make it "suspicious." In Experiment 1, we use wavelet transforms to define a Suspiciously Structured Entropic Change Score (SSECS), a scalar feature that quantifies the suspiciousness of a file based on its distribution of entropic energy across multiple levels of spatial resolution. Based on this single feature, it was possible to raise predictive accuracy on a malware detection task from 50.0% to 68.7%, even though the single feature was applied to a heterogeneous corpus of malware discovered "in the wild." In Experiment 2, we describe how wavelet-based decompositions of software entropy can be applied to a parasitic malware detection task involving large numbers of samples and features. By extracting only string and entropy features (with wavelet decompositions) from software samples, we are able to obtain almost 99% detection of parasitic malware with fewer than 1% false positives on good files. Moreover, the addition of wavelet-based features uniformly improved detection performance across plausible false positive rates, both in a strings-only model (e.g., from 80.90% to 82.97%) and a strings-plus-entropy model (e.g. from 92.10% to 94.74%, and from 98.63% to 98.90%). Overall, wavelet decomposition of software entropy can be useful for machine learning models for detecting malware based on extracting millions of features from executable files.
研究の動機と目的
- ポータブル実行可能ファイルにおける構造的エントロピー変動を特定することで、マルウェアを検出すること。
- 暗号化または圧縮されたセグメントを隠しているマルウェアを検出できない従来のエントロピー分析の限界を解消すること。
- エントロピーの平均値や標準偏差を超えた、不審なエントロピー的構造を定量化する特徴量を開発すること。
- ウェーブレットベースのエントロピー特徴量が大規模なマルウェア検出タスクにおける有用性を評価すること。
- ウェーブレット由来の特徴量が、標準エントロピーまたは文字列ベースの特徴量と重複していないことを実証すること。
提案手法
- 各実行可能ファイルを、小さなバイト単位のセグメント上で局所エントロピーを計算することでエントロピー・ストリームとして表現する。
- エントロピー信号を多スケールの分解能成分に分解するためにハールウェーブレット変換を適用する。
- スケールごとの二乗ウェーブレット係数を集約することでウェーブレットエネルギースペクトルを計算し、エントロピー的エネルギー分布を捉える。
- 構造的エントロピー変動の度合いを要約するスカラー特徴量として「不審な構造的エントロピー変化スコア」(SSECS)を導出する。
- 機械学習モデルにおけるマルウェア分類のために、ウェーブレット特徴量を文字列特徴量およびエントロピー特徴量と併用する。
- 実世界の「在来」マルウェアサンプルも含む多様なマルウェアコーパスを用いてモデルを学習・評価し、予測性能を評価する。
実験結果
リサーチクエスチョン
- RQ1ウェーブレット分解によるソフトウェアエントロピーの分析は、従来のエントロピー統計に比べ、マルウェア検出をより効果的に行えるか?
- RQ2「不審な構造的エントロピー変化スコア」(SSECS)は、多様なマルウェアコーパスにおけるマルウェア検出精度をどの程度向上させるか?
- RQ3大規模なパラサイト的マルウェア検出タスクにおいて、ウェーブレットベースのエントロピー特徴量は、標準の文字列およびエントロピー特徴量と比較してどの程度の性能を示すか?
- RQ4マルウェア検出モデルにおいて、ウェーブレット由来の特徴量は、単純なエントロピーまたは文字列ベースの特徴量と重複しているか?
- RQ5エントロピー信号からのウェーブレットエネルギースペクトルは、さまざまな誤検出率において検出性能を向上させることができるか?
主な発見
- SSECS特徴量単体でも、実世界のマルウェアを含む多様なコーパスで、マルウェア検出精度を50.0%から68.7%まで向上させた。
- 大規模なパラサイト的マルウェア検出タスクにおいて、文字列、エントロピー、ウェーブレット特徴量を組み合わせたモデルは、1%未満の誤検出率で98.90%の検出率を達成した。
- ウェーブレットベースの特徴量は、全テスト誤検出率範囲で一貫して検出性能を向上させ、文字列のみのモデル(80.90%から82.97%)および文字列+エントロピーのモデル(92.10%から94.74%、98.63%から98.90%)においても同様の向上を示した。
- 文字列+ウェーブレットモデルにおける全特徴量のうちわずか2.1%を占めるウェーブレット特徴量が、最も影響力のある特徴量の7.0%を占めており、高い予測力を持つことを示している。
- ウェーブレット特徴量は、特徴量セットにおける割合に照らして予想される影響力の約2.5倍の頻度で影響力を持つことが示され、重複していない情報が含まれていることを示唆している。
- ウェーブレットエネルギースペクトルは、平均エントロピーまたは標準偏差では捉えきれない構造的エントロピーのパターンを捉えており、暗号化または圧縮されたセグメントを隠している高度なマルウェアの検出における価値を示している。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。