[論文レビュー] Malware Classification based on Call Graph Clustering
本稿では、近似グラフ編集距離を用いたグラフ類似度の計算と、DBSCAN や k-medoids といったクラスタリング手法の適用により、実際のマルウェアサンプルを対象に、コールグラフのクラスタリングを用いた自動マルウェアファミリー分類手法を提案する。この手法は、マルウェアの変種間における構造的類似性を効果的に特定でき、手動分類との比較で90%の精度を達成する汎用的検出スキームを可能にする。
Each day, anti-virus companies receive tens of thousands samples of potentially harmful executables. Many of the malicious samples are variations of previously encountered malware, created by their authors to evade pattern-based detection. Dealing with these large amounts of data requires robust, automatic detection approaches. This paper studies malware classification based on call graph clustering. By representing malware samples as call graphs, it is possible to abstract certain variations away, and enable the detection of structural similarities between samples. The ability to cluster similar samples together will make more generic detection techniques possible, thereby targeting the commonalities of the samples within a cluster. To compare call graphs mutually, we compute pairwise graph similarity scores via graph matchings which approximately minimize the graph edit distance. Next, to facilitate the discovery of similar malware samples, we employ several clustering algorithms, including k-medoids and DBSCAN. Clustering experiments are conducted on a collection of real malware samples, and the results are evaluated against manual classifications provided by human malware analysts. Experiments show that it is indeed possible to accurately detect malware families via call graph clustering. We anticipate that in the future, call graphs can be used to analyse the emergence of new malware families, and ultimately to automate implementation of generic detection schemes.
研究の動機と目的
- 従来のシグネチャベース検出を回避する、進化を続ける多数のマルウェアバリアントを分類する課題に対処すること。
- コールグラフを高レベルの抽象化として用い、マルウェアサンプル間の構造的類似性を自動的かつスケーラブルに同定する手法を開発すること。
- 実際のマルウェアコールグラフに対してクラスタリングアルゴリズムを適用し、正確なマルウェアファミリー同定を評価すること。
- 個々のサンプルではなく、マルウェアファミリー間の共通する構造的パターンに焦点を当てることで、汎用的検出を可能にすること。
提案手法
- 関数を頂点とし、関数呼び出しを有向エッジとする有向コールグラフとしてマルウェアサンプルを表現する。
- グラフ編集距離を最小化する近似グラフマッチングを用いて、ペアワイズのグラフ類似度を計算し、コールグラフの効率的比較を可能にする。
- k-medoids および DBSCAN クラスタリングアルゴリズムを適用して、構造的に類似したマルウェアサンプルをファミリーごとにグループ化する。
- クラスタリングのコア距離測定として、グラフ編集距離に基づく類似度メトリクスを用い、手動分類による検証を実施する。
- 人間のアナリストによる分類と整合性が最大化されるように、クラスタリングパラメータ(例:DBSCANのRadとMinPts)を最適化する。
- インストーラーではなく、隠されたペイロードを分離・分析することで、コールグラフ抽出を変更し、ドロッパーの検出を改善する。
実験結果
リサーチクエスチョン
- RQ1コードのオブスクリューションや変異が加えられても、コールグラフ表現がマルウェアバリアント間の構造的類似性を効果的に捉えられるか。
- RQ2DBSCAN や k-medoids といったクラスタリングアルゴリズムは、コールグラフ類似度に基づいて、既知のファミリーにマルウェアサンプルをどれほど正確にグループ化できるか。
- RQ3グラフ編集距離の近似処理が、マルウェアファミリー分類の精度にどのような影響を及えるか。
- RQ4提案手法は、顕著な構造的進化を示すマルウェアファミリーの異なる世代を検出および区別できるか。
- RQ5セキュリティアナリストによる手動分類と比較して、本手法は実世界のマルウェアサンプルに対してどれほど効果的に機能するか。
主な発見
- DBSCAN は k-medoids よりもマルウェアファミリー検出において優れた性能を示し、手動分類されたマルウェアファミリーと密接に一致するクラスタを効果的に特定した。
- F-Secureアナリストによる手動分類と比較したところ、本手法は約90%の分類精度を達成した。
- クラスタ16には、異なるマルウェアファミリーに属する同型のコールグラフが含まれており、ペイロードが異なるドロッパーがコールグラフレベルでは区別できないことを示している。
- 複数のファミリーが同一クラスタに含まれる(例:クラスタ2、6)現象は、異なるファミリーに属するサンプルが Rad の距離閾値内にあったことに起因している。
- 本研究では、グラフ編集距離が、近似アルゴリズムを併用することでスケーラビリティが確保できるため、コールグラフ類似度の測定に実用的であると確認された。
- インストーラーではなくペイロードを分析するようにコールグラフ抽出を変更することで、このタイプのマルウェアの検出精度が向上した。
より良い研究を、今すぐ始めましょう
論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。
クレジットカード登録不要
このレビューはAIが作成し、人間の編集者が確認しました。