JusticeRage/Gepetto
IDA plugin which queries language models to speed up reverse-engineering
何を解決するか
IDA Proでデコンパイルされたコードの逆工程は、変数名を手動で変更し、関数の動作を理解するためにコメントを追加するという、しばしば退屈な作業です。Gepettoは、大規模言語モデル(LLMs)を使用して、IDA Proでデコンパイルされた関数の論理を分析・説明することで、この作業を自動化します。
動作方法
PythonプラグインとしてIDA Proに統合されたGepettoは、関数のデコンパイルされた疑似コードを指定されたLLMプロバイダーに送信します。モデルはコードを分析し、変数名の提案と機能の説明を返却し、プラグインがその内容をIDA環境に適用します。
対象ユーザー
IDA Pro(バージョン7.6以降)とHex-Raysデコンパイラを使用するセキュリティ研究者、マルウェア分析者、および逆工程担当者。
特徴
- 広範なモデル対応: OpenAI、Anthropic、Google Gemini、Azure、Ollama、Groq、Together、Novita AI、Kluster.aiなど、多数のプロバイダーに対応。
- 即時コード改善: 関数の説明、コメントの追加、より良い変数名の要求に使えるホットキーを提供。
- 拡張可能なプロバイダーシステム: Pythonスクリプトまたはパッケージエントリポイントを通じて、独自のLLMプロバイダーを追加可能。
- CLIインターフェース: IDA内に組み込まれたCLIを提供し、コードに関する直接的な質問をLLMに投げかけることができる。
- ローカルLLM対応: OllamaやLM Studioなどのローカルモデルランナーと互換性あり。
関連
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト
- プロジェクト