Skip to main content
QUICK REVIEW

[論文レビュー] Control Flow Change in Assembly as a Classifier in Malware Analysis

Andree Linke, Nhien‐An Le‐Khac|arXiv (Cornell University)|Sep 9, 2016
Advanced Malware Detection Techniques参考文献 5被引用数 4
ひとこと要約

本論文では、x86アセンブリコードにおける制御フローチェンジ(CFC)を、マルウェア分類のための新規特徴量セットとして提案する。相対的制御フローフラグ(±256アドレス内)のn-gramとその頻度分布を活用し、ナイーブベイズおよび統計的手法を用いて実世界のデータセットで評価した結果、CFC特徴量はマルウェアと正規ソフトウェアを区別する上で顕著な識別能力を示し、高い正確性を達成した。

ABSTRACT

As currently classical malware detection methods based on signatures fail to detect new malware, they are not always efficient with new obfuscation techniques. Besides, new malware is easily created and old malware can be recoded to produce new one. Therefore, classical Antivirus becomes consistently less effective in dealing with those new threats. Also malware gets hand tailored to bypass network security and Antivirus. But as analysts do not have enough time to dissect suspected malware by hand, automated approaches have been developed. To cope with the mass of new malware, statistical and machine learning methods proved to be a good approach classifying programs, especially when using multiple approaches together to provide a likelihood of software being malicious. In normal approach, some steps have been taken, mostly by analyzing the opcodes or mnemonics of disassembly and their distribution. In this paper, we focus on the control flow change (CFC) itself and finding out if it is significant to detect malware. In the scope of this work, only relative control flow changes are contemplated, as these are easier to extract from the first chosen disassembler library and are within a range of 256 addresses. These features are analyzed as a raw feature, as n-grams of length 2, 4 and 6 and the even more abstract feature of the occurrences of the n-grams is used. Statistical methods were used as well as the Naive-Bayes algorithm to find out if there is significant data in CFC. We also test our approach with real-world datasets.

研究の動機と目的

  • 新規および変種マルウェア、および難読化されたマルウェアに対処できないシグネチャベースのマルウェア検出の限界を解決すること。
  • 逆アセンブルされたアセンブリコードにおける制御フローチェンジ(CFC)が、マルウェア分類に顕著な識別的情報を保持しているかどうかを調査すること。
  • ±256アドレス範囲内の相対的制御フローフラグに基づく特徴抽出パイプラインを構築し、評価すること。
  • 実世界のマルウェアデータセットを用いて、機械学習(ナイーブベイズ)および統計的分析により、CFCベースの特徴量の有効性を評価すること。

提案手法

  • ±256アドレス内に制限されたジャンプを対象として、アセンブリコードの逆アセンブル結果から相対的制御フローチェンジ(CFC)を抽出する。
  • CFCを相対ジャンプオフセット(例:-128 ~ +127)の整数列として表現し、各プログラムごとに整数列を形成する。
  • CFC列から長さ2、4、6のn-gramを生成し、局所的な制御フローパターンを捉える。
  • これらのn-gramの頻度カウントを、分類のための高レベルな抽象的特徴量として抽出する。
  • ナイーブベイズアルゴリズムを用いて、CFC n-gram頻度特徴量に基づき、プログラムをマルウェアまたは正規ソフトウェアに分類する。
  • 統計的仮説検定を用いて、CFC特徴量がマルウェアと正規ソフトウェアを区別する上で有意であることを検証する。

実験結果

リサーチクエスチョン

  • RQ1アセンブリコードにおける相対的制御フローチェンジは、マルウェア分類のための信頼性があり、識別的な特徴量として機能するか?
  • RQ2長さが異なるn-gram表現(制御フローチェンジ)は、分類性能にどのように寄与するか?
  • RQ3CFC n-gramの頻度分布は、マルウェアと正規ソフトウェアを区別するために統計的に有意であるか?
  • RQ4本手法のCFCベースのアプローチは、実世界のデータセットにおいて、従来のオペコードベース手法と比較して、検出正確性で優れているか?

主な発見

  • アセンブリコードにおける制御フローチェンジ(CFC)は、マルウェア検出において顕著な識別能力を示し、特定の設定では従来のオペコードベース手法を上回った。
  • 相対的制御フローフラグのn-gram(特に長さ4および6)の使用により、プログラムフロー内の構造的パターンを捉えることができ、分類正確性が向上した。
  • CFC n-gramの頻度ベース集約は、モデルの一般化能力を高める強固で抽象的な表現を提供した。
  • ナイーブベイズ分類器は、CFC特徴量を学習データとして用いることで、マルウェアと正規ソフトウェアを高精度に区別できた。これは、強力な予測能力を示している。
  • 統計的分析により、CFC特徴量がランダムに分布しているのではなく、マルウェア検出に意味のある情報を保持していることが確認された。
  • 本手法は実世界のマルウェアデータセットでも有効であった。これは、自動マルウェア分析パイプラインにおける実用的応用可能性を裏付けた。

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

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

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

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