Skip to main content
QUICK REVIEW

[論文レビュー] UniASM: Binary Code Similarity Detection without Fine-tuning

Yeming Gu, Hui‐Kuo G. Shu|arXiv (Cornell University)|Oct 28, 2022
Software Engineering Research被引用数 6
ひとこと要約

UniASMは、微調整を必要とせずに、最先端の性能を達成する、UniLMに基づくバイナリコード埋め込みモデルを提案する。豊富な意味的関数表現と2つの新しい事前学習タスクを導入し、クロスコンパイラー、クロス最適化、クロスオブスカリティベンチマークでそれぞれ12.7%、8.5%、22.3%のRecall@1の向上を達成した。

ABSTRACT

Binary code similarity detection (BCSD) is widely used in various binary analysis tasks such as vulnerability search, malware detection, clone detection, and patch analysis. Recent studies have shown that the learning-based binary code embedding models perform better than the traditional feature-based approaches. However, previous studies have not delved deeply into the key factors that affect model performance. In this paper, we design extensive ablation studies to explore these influencing factors. The experimental results have provided us with many new insights. We have made innovations in both code representation and model selection: we propose a novel rich-semantic function representation technique to ensure the model captures the intricate nuances of binary code, and we introduce the first UniLM-based binary code embedding model, named UniASM, which includes two newly designed training tasks to learn representations of binary functions. The experimental results show that UniASM outperforms the state-of-the-art (SOTA) approaches on the evaluation datasets. The average scores of Recall@1 on cross-compilers, cross-optimization-levels, and cross-obfuscations have improved by 12.7%, 8.5%, and 22.3%, respectively, compared to the best of the baseline methods. Besides, in the real-world task of known vulnerability search, UniASM outperforms all the current baselines.

研究の動機と目的

  • 広範なアブレーションスタディを通じて、バイナリコード埋め込みモデルの性能に影響を与える要因を特定すること。
  • 多様なバイナリ変種に一般化可能な、ロバストでゼロショット対応のバイナリコード類似度検出モデルを構築すること。
  • バイナリコード内の複雑な意味的ニュアンスを捉える関数表現技術を設計すること。
  • 新たな事前学習タスクを備えたUniLMベースのアーキテクチャを導入し、バイナリ関数埋め込みを向上させること。
  • 微調整なしで、クロスコンパイラー、クロス最適化、オブスカリティのシナリオにおいて、既存の最先端手法を上回ること。

提案手法

  • バイナリ関数から詳細な低レベル意味を抽出する、豊富な意味的関数表現技術を提案する。
  • バイナリ関数の文脈的埋め込みを学習するためのUniLMベースのアーキテクチャ(UniASM)を導入する。
  • マスク関数モデリングと次関数予測の2つの新しい事前学習タスクを設計し、表現学習を強化する。
  • 下流タスクでの微調整を一切行わず、大規模なバイナリコードコーパス上でモデルを学習する。
  • 自己教師あり学習を用いて、多様なバイナリバイナリ間の構造的・意味的パターンを捉える。
  • 二重ブランチの対照的学習設定を採用し、意味的に類似した関数を一致させるとともに、類似しない関数を分離する。

実験結果

リサーチクエスチョン

  • RQ1バイナリコード埋め込みモデルの性能に影響を与える主な要因は何であるか?
  • RQ2統一言語モデルアーキテクチャは、タスク固有の微調整なしにバイナリ関数の表現を効果的に学習できるか?
  • RQ3豊富な意味的関数表現は、バイナリコードの類似度検出をどのように向上させるか?
  • RQ4事前学習済みのUniLMベースのモデルは、クロスコンパイラー、クロス最適化、オブスカリティのシナリオにおいて、どの程度一般化できるか?
  • RQ5提案されたモデルは、実世界の脆弱性検索タスクにおいて、既存の最先端手法を上回ることができるか?

主な発見

  • クロスコンパイラーにおけるバイナリ類似度検出において、最良のベースライン比でRecall@1が12.7%向上した。
  • クロス最適化レベルの検出において、Recall@1が8.5%向上し、コンパイラー最適化に対して高いロバスト性を示した。
  • クロスオブスカリティシナリオでは、Recall@1が22.3%相対的に向上し、コード変換に対して強い耐性を示した。
  • 実世界の既知の脆弱性検索タスクにおいて、UniASMはすべての現在のベースラインを上回り、実用的価値を確認した。
  • アブレーションスタディにより、豊富な意味的表現と2つの新しい事前学習タスクの両方が、性能向上に顕著な寄与をしていることが確認された。
  • 微調整なしで最先端の結果を達成したため、強力なゼロショット一般化能力が示された。

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

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

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

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