Skip to main content
QUICK REVIEW

[論文レビュー] Malware Detection by Eating a Whole EXE

Edward Raff, Jon Barker|arXiv (Cornell University)|Oct 25, 2017
Advanced Malware Detection Techniques参考文献 40被引用数 60
ひとこと要約

この論文では、1D畳み込みニューラルネットワークを用いて、500ステップのカーネルを用いて長距離パターンを捉えることで、rawなPE実行可能ファイルのバイト列としての入力を処理し、マルウェアを検出する深層学習モデルであるMalConvを紹介する。このモデルは、2MBに達する大きなバイナリにおいても高い精度を達成し、動的解析や手動による特徴量設計に依存せずに、解釈可能で局所的な悪意ある挙動の領域を同定する。

ABSTRACT

In this work we introduce malware detection from raw byte sequences as a fruitful research area to the larger machine learning community. Building a neural network for such a problem presents a number of interesting challenges that have not occurred in tasks such as image processing or NLP. In particular, we note that detection from raw bytes presents a sequence problem with over two million time steps and a problem where batch normalization appear to hinder the learning process. We present our initial work in building a solution to tackle this problem, which has linear complexity dependence on the sequence length, and allows for interpretable sub-regions of the binary to be identified. In doing so we will discuss the many challenges in building a neural network to process data at this scale, and the methods we used to work around them.

研究の動機と目的

  • 動的実行や手動による特徴量設計に依存せずに、rawなバイナリバイト列から直接マルウェアを検出する機械学習モデルの開発を目的とする。
  • PEファイルに一般的に見られる極めて長いシーケンス(最大200万ステップ)を深層ニューラルネットワークで処理する課題に対処することを目的とする。
  • マルウェア分類に寄与するバイナリ内の解釈可能で局所的な領域を同定し、モデルの透明性を高めることを目的とする。
  • ゼロデイや多様化マルウェアに対して効果が薄い、従来のシグネチャベースの検出法や動的解析の限界を克服することを目的とする。
  • 大規模なバイナリシーケンスの学習を可能にしつつ、過学習やメモリのボトルネックを回避するアーキテクチャ選択の検討を目的とする。

提案手法

  • 入力として、事前処理やパースを施さずに、PEファイルのrawなバイトシーケンスを扱い、各バイトをシーケンス内のトークンとして扱う。
  • 学習可能な8次元の埋め込み層が、各バイト(0–255)を密なベクトル表現にマッピングし、意味的・構造的パターンを捉える。
  • カーネルサイズ500、ストライド500、フィルタ数128の1D畳み込み層が、シーケンス全体にわたる局所的パターン検出を実行し、効率的な空間圧縮を実現する。
  • 情報の流れを制御し、長大なシーケンスにおける学習安定性を向上させるために、ゲート付き畳み込みユニット(ゲート付き畳み込み)が用いられる。
  • 時間的マックスプーリングをシーケンス全体に適用し、次元削減と分類に最も重要な特徴の抽出を実現する。
  • 最終的に128次元の全結合層とソフトマックス関数を経て、マルウェア分類確率が得られる。

実験結果

リサーチクエスチョン

  • RQ1ドメイン特化の特徴量設計を一切行わず、rawなバイトシーケンスから直接マルウェアを検出できる深層ニューラルネットワークは、実際に有効に機能するか?
  • RQ2通常のNLPや信号処理タスクとは著しく長い(最大200万ステップ)シーケンスの学習に、どのようなアーキテクチャ的選択が有効であるか?
  • RQ3ゲート付き畳み込みと特定のプーリング戦略の使用は、大規模なバイナリファイルにおける一般化性能を向上させ、過学習を低減するか?
  • RQ4精度と解釈可能性の観点から、シンプルなベースラインや既存のマルウェア検出手法と比較して、このモデルの性能はどのように差がつくか?
  • RQ5モデルは、悪意ある挙動を予測する上で寄与する、局所的かつ解釈可能なバイナリ内の領域を同定できるか?

主な発見

  • MalConvは、最大2MBの長さのrawなPEファイルを効果的に処理し、未学習のマルウェアサンプルにおいても高い検出精度を達成した。
  • シンプルなベースラインや、全バイナリを処理できなかった過去の試みと比較して、本モデルのアーキテクチャの有効性が示された。
  • より広い畳み込みフィルタ(カーネルサイズ500)と少ない層数の構成が、他の分野のトレンドとは対照的に、より優れた性能を発揮した。
  • バッチ正則化は学習を阻害することが判明し、最終的なアーキテクチャから除外された。
  • モデルは、マルウェア分類に寄与する解釈可能で局所的なバイナリ領域を同定でき、後続の解析で不審なコードセグメントを特定可能にした。
  • SGDにネステロフモーメンタムを適用した手法が、Adam や RMSProp といったアダプティブ最適化手法を上回り、最良の学習収束と一般化性能を達成した。

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

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

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

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