JusticeRage/Gepetto

IDA plugin which queries language models to speed up reverse-engineering

解決的問題

逆向工程由 IDA Pro 反編譯產生的程式碼,通常需要手動重命名變數並加入註解,才能理解函數的功能,過程十分繁瑣。Gepetto 透過使用大型語言模型(LLMs)分析與解釋 IDA Pro 反編譯出的函數邏輯,自動完成此過程。

工作原理

作為 IDA Pro 的 Python 插件,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 等本地模型執行器。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案