cellebrite-labs/ghidra-rpc

A Ghidra agentic reverse engineering skill.

何を解決するか

Large Language Models (LLMs) が Ghidra — プロフェッショナルなソフトウェアリバースエンジニアリングツールキット — への構造化されたインターフェースを提供することで、自律的なリバースエンジニアリングを可能にします。これにより、LLMの提案を手動で Ghidra の操作に変換する人間の介入が不要になります。

動作方法

このプロジェクトは PyGhidra を使用して Ghidra を永続的なバックグラウンドデーモンとして実行します。Ghidra の機能を、構造化された JSON を返すコマンドラインインターフェース (CLI) を通じて公開します。AIコーディングアシスタント(Claude Code や Cursor など)はデーモンにシェルコマンドを発行し、JSON の結果を分析してさらなる操作を実行できます。デーモンが「ウォーム」状態を維持しているため、バイナリは一度だけロードされ、コマンド間で解析状態が保持されます。

対象ユーザー

AIエージェントを使ってコンパイル済みバイナリの分析を自動化するセキュリティ研究者、脆弱性分析者、開発者。

特徴

  • 包括的なリバースエンジニアリング機能: 関数のデコンパイル、コールグラフのトレース、シンボルのリネーム、データ構造の定義をサポート。
  • バイナリ差分: BSim を使用してビルドのバージョン管理と関数のマッチングが可能。
  • 永続的な状態: AI が行ったすべての変更(コメント、リネーム、パッチなど)は Ghidra プロジェクトに保存され、Ghidra GUI でも確認可能。
  • エージェント統合: シェルコマンドを実行できる AI アシスタント専用に設計されています。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト