{
  "added_at": "2026-11-02",
  "additional_evidence_urls": [
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/extension.properties",
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/pom.xml",
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/ui/Provider.java",
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/service/FunctionRewrite.java",
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/utils/PromptBuilder.java",
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/src/main/java/ghidragpt/config/ConfigurationManager.java",
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/.github/workflows/tests.yml",
    "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/LICENSE",
    "https://github.com/weirdmachine64/GhidraGPT/releases/tag/v1.4.0"
  ],
  "category": "agent-workflows",
  "description_en": "Ghidra extension that sends one function’s decompiled C to a hosted or local language model the user selects and streams the answer into a GhidraGPT console. Its three actions, offered in the Decompiler and Listing context menus, explain the function; rewrite it by writing recovered function, parameter and variable names, types, the prototype and inline comments back into the program; or audit it for likely security issues. Every action uses only the current function’s decompiler output, and the README calls audit findings leads to verify rather than sound static analysis.",
  "description_zh": "Ghidra 扩展，把单个函数的反编译 C 代码发送给使用者选定的托管或本地大模型，并将回复流式显示在 GhidraGPT 控制台中。反编译视图和列表视图的右键菜单提供三项操作：解释函数；改写函数，把恢复出的函数名、参数名与变量名、类型、函数原型及行内注释写回程序；以及审查函数中可能存在的安全问题。每项操作只使用当前函数的反编译输出，README 称审查结果只是需要核实的线索，并非严谨的静态分析。",
  "entry_url": "https://awesomerea.org/resources/ghidragpt/",
  "entry_url_zh": "https://awesomerea.org/zh/resources/ghidragpt/",
  "evidence_url": "https://github.com/weirdmachine64/GhidraGPT/blob/364e3f51e97736bea752132a2db06f8c7a6a10e4/README.md",
  "group": "agents",
  "id": "ghidragpt",
  "json_url": "https://awesomerea.org/resources/ghidragpt/record.json",
  "kind": "integration",
  "markdown_url": "https://awesomerea.org/resources/ghidragpt/index.md",
  "markdown_url_zh": "https://awesomerea.org/zh/resources/ghidragpt/index.md",
  "name": "GhidraGPT",
  "name_zh": "GhidraGPT：调用大模型辅助逆向的 Ghidra 扩展",
  "record_type": "resource",
  "relationship": "independent-agent-integration",
  "requirements": [
    "The reviewed main commit is the v1.4.0 release of 2026-07-22, which attaches GhidraGPT-1.4.0.zip. extension.properties declares Ghidra 12.1.2, and the README requires Ghidra 12.1.x, noting that the extension declares compatibility with the Ghidra version it is built against. Building from source needs JDK 21+, Maven and GHIDRA_INSTALL_DIR pointing at a local Ghidra; the zip is then added through Ghidra’s Install Extensions dialog.",
    "Each request sends the function name and its decompiled code, prefixed with instruction addresses for Rewrite together with a list of its variables, to the configured provider: OpenAI, Anthropic, Google Gemini, Cohere, Mistral AI, DeepSeek, Grok, OpenRouter, a local Ollama model or any OpenAI-compatible endpoint. Hosted providers need the user’s own API key, which the README says is stored in config.properties in a .ghidragpt folder under the user’s home directory with XOR obfuscation that is not encryption; every provider except Ollama needs network access.",
    "Rewrite applies the parsed names, types, prototype and comments in Ghidra transactions without a separate confirmation step. The README states that there is no interprocedural or whole-program analysis, so callers, callees and data flow outside the function are not given to the model.",
    "CI downloads Ghidra 12.1.2, sets up JDK 21 and runs Maven unit tests for configuration handling, prompt building and parsing of model responses and rewrite edits; these do not exercise the Ghidra interface or model output.",
    "Apache-2.0 license; the README names Mohamed Benchikh as author. Ghidra and each model provider keep their own licences and terms."
  ],
  "requirements_zh": [
    "所审阅的 main 提交即 2026-07-22 发布的 v1.4.0，该版本附带 GhidraGPT-1.4.0.zip。extension.properties 声明 Ghidra 12.1.2，README 要求 Ghidra 12.1.x，并说明扩展声明的兼容版本就是构建时所用的 Ghidra 版本。从源码构建需要 JDK 21+、Maven，并将 GHIDRA_INSTALL_DIR 指向本地 Ghidra；随后通过 Ghidra 的 Install Extensions 对话框添加生成的 zip。",
    "每次请求都会把函数名及其反编译代码发送给配置的服务商；改写操作还会在每行前标注指令地址，并附上变量列表。可选服务商包括 OpenAI、Anthropic、Google Gemini、Cohere、Mistral AI、DeepSeek、Grok、OpenRouter、本地 Ollama 模型，以及任何兼容 OpenAI 接口的端点。托管服务需使用者自备 API 密钥，README 说明密钥保存在用户主目录下 .ghidragpt 文件夹的 config.properties 中，仅经 XOR 混淆而非加密；除 Ollama 外均需联网。",
    "改写操作在 Ghidra 事务中直接应用解析出的名称、类型、函数原型和注释，没有单独的确认步骤。README 说明它不做跨过程或全程序分析，因此函数之外的调用者、被调用者和数据流都不会提供给模型。",
    "CI 下载 Ghidra 12.1.2、配置 JDK 21，并运行 Maven 单元测试，覆盖配置处理、提示词构建以及模型回复与改写编辑的解析；这些测试不涉及 Ghidra 界面或模型输出。",
    "采用 Apache-2.0 许可证；README 署名作者为 Mohamed Benchikh。Ghidra 和各模型服务商各有其许可与条款。"
  ],
  "targets": [
    "binary"
  ],
  "url": "https://github.com/weirdmachine64/GhidraGPT",
  "verification": "source-reviewed",
  "verified_at": "2026-10-20"
}
