Repolode
mandiant

mandiant/xrefer

エントリーポイントからの実行パスを追跡し、関連関数をクラスタリングして、Geminiでバイナリの挙動を説明するIDA Proプラグイン。

スター
325
フォーク
44
未解決の Issue
12
最終コミット
12 日前

これは何?

XReferは、リバースエンジニアリング向けの独自ナビゲーション画面を追加する、IDA Pro用のPythonプラグインです。エントリーポイントから実行パスをたどり、バイナリを関連する関数のクラスタにまとめ、後続の挙動やアーティファクトを強調表示することで、アナリストが素早く全体像を把握できるようにします。

VMRayやCAPEのサンドボックスによるAPIトレース、capaの解析結果、ユーザー定義の間接xrefなど、外部データを取り込むことができ、追加のコンテキストを示すパスグラフも表示します。クラスタには関数のラベルを付けることもできます。設定、デフォルトまたはカスタムのエントリーポイント解析、除外リストは、IDAのEditメニューから管理できます。

LLM機能は任意です。有効にすると、XReferはGoogleのGeminiモデルや、設定した他のエンドポイントと連携し、コード間の関係を自然言語で説明します。これらの機能では、API、文字列、関数間の関係など、解析データの一部を外部サービスに送信するため、機密性の高いサンプルでは無効にできます。

主な機能

  • 01エントリーポイントから実行パスをたどり、バイナリの挙動を把握します。
  • 02関連する関数をクラスタリングしてラベルを付け、ナビゲーションを効率化します。
  • 03VMRayやCAPEのAPIトレース、capaの出力、ユーザー定義のxrefを取り込みます。
  • 04追加のコンテキストを示すパスグラフを提供します。
  • 05Geminiやその他のLLMエンドポイントを使って、自然言語による説明を任意で生成します。

ユースケース

  • IDA Pro上で未知のマルウェアサンプルをトリアージする。
  • カスタムのエントリーポイントを指定して、DLLやライブラリを解析する。
  • サンドボックスのAPIトレースやcapaの解析結果を、静的解析で得たコードパスと関連付ける。

クイックスタート

  1. 1

    hcliでプラグインと依存関係をインストールします

    hcli install xrefer
  2. 2

    IDAを再起動し、[Edit]→[XRefer]からXReferを開きます

使う前に知っておきたいこと

  • 実行には商用逆アセンブラのIDA Proが必要です。
  • asciinetの依存関係としてJavaが必要なため、JavaをPATHに設定する必要があります。
  • 無効にしない限り、LLM機能はAPI、文字列、関数間の関係などの解析データをGoogle Geminiなどの外部サービスに送信します。

収録されている特集

トピック

よくある質問

xrefer とは?
エントリーポイントからの実行パスを追跡し、関連関数をクラスタリングして、Geminiでバイナリの挙動を説明するIDA Proプラグイン。 XReferは、リバースエンジニアリング向けの独自ナビゲーション画面を追加する、IDA Pro用のPythonプラグインです。エントリーポイントから実行パスをたどり、バイナリを関連する関数のクラスタにまとめ、後続の挙動やアーティファクトを強調表示することで、アナリストが素早く全体像を把握できるようにします。
xrefer は無料で使えますか?ライセンスは?
xrefer は Apache-2.0 ライセンスのオープンソースです。商用製品で使う前にライセンス条件を確認してください。
xrefer は今もメンテナンスされていますか?
活発にメンテナンス中。xrefer の最終コミットは 2026年10月26日 です。
xrefer は何に使えますか?
IDA Pro上で未知のマルウェアサンプルをトリアージする。 カスタムのエントリーポイントを指定して、DLLやライブラリを解析する。 サンドボックスのAPIトレースやcapaの解析結果を、静的解析で得たコードパスと関連付ける。
xrefer のインストール方法は?
hcliでプラグインと依存関係をインストールします: hcli install xrefer IDAを再起動し、[Edit]→[XRefer]からXReferを開きます
xrefer はどこで入手できますか?
ソースコードとインストール手順は GitHub にあります:https://github.com/mandiant/xrefer

概要はプロジェクトの README をもとに AI が生成しています。GitHub の数値は毎日更新されます。

関連プロジェクト