mcpField
R
REA + Ghidra Toolkit

REA + Ghidra Toolkit

远程服务
github.com其他0今天更新

关于 REA + Ghidra Toolkit

REA + Ghidra Toolkit 是用于经授权的原生 PE32 二进制静态分析的可复用、注重证据的工作流与工具集,尤其适用于 32 位 Delphi 程序。它结合只读清单和 VMT 工具、无头 Ghidra 导出及文档模板,支持可追溯分析。

主要功能

  1. 01可复现的 REA 与 Ghidra 工作流
  2. 02只读 PE32 清单工具
  3. 03Delphi VMT 与 RTTI 指南
  4. 04无头 Ghidra 导出辅助工具
  5. 05分析与交接模板
  6. 06附带工具的合成测试

适用场景

  1. 01启动经授权的 PE32 静态分析
  2. 02检查导入项与二进制清单
  3. 03验证 Delphi VMT 候选项
  4. 04记录发现以供后续分析

MCP 相关

该仓库已列入 MCP Registry,可通过 GitMCP 作为远程流式 HTTP 服务访问。README 未说明向 MCP 客户端公开的具体工具或资源。

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://gitmcp.io/ethanhunt1981/rea-ghidra-toolkit/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

工具

详细介绍

REA + Ghidra Toolkit

REA + Ghidra Toolkit — 以证据为先的分析横幅

GitMCP 文档 Glama MCP 连接器 许可证 Python Ghidra REA


这是一个轻量、依赖精简的工具包,使用 REA 和 Ghidra 对原生二进制文件进行授权静态分析。它刻意构建为可复用的 Agent 知识库,而不是针对某个特定目标的资料堆放处。

分为两层来考虑

  • 此仓库仅包含通用方法、工具和合成测试。
  • 每个特定目标的制品、反编译结果或私有结果都保留在私有分析项目中。

适用范围

该工具包面向 Windows 上的原生、非托管 PE32 二进制文件:

不适用于托管运行时(.NET / Java)、PE32+ 64 位映像(快速解析器特意仅支持 PE32)、将执行代码作为调试工作流,以及任何缺乏充分合法授权的目标。

项目缘由

你可能希望避免每次都从头重建同一套逆向工程工作流。此工具包解答了以下问题:

  • 如何以可追溯的方式开始 PE / Delphi 分析?
  • 如何结合 REA、Ghidra 和小型本地工具,同时避免将推断当作事实?
  • 如何导出并记录结果,以便后续会话能够继续?
  • 哪些错误应该尽早避免,而不是等到后来才发现?

仓库结构

.
├── docs/
│   ├── workflow.md
│   ├── rea-ghidra.md
│   ├── delphi-pe32.md
│   ├── evidence.md
│   ├── troubleshooting.md
│   └── gitmcp.md
├── tools/
│   ├── pe32.py
│   ├── pe_inventory.py
│   └── delphi_vmt.py
├── ghidra/
│   └── scripts/ExportDecompilation.java
├── templates/
│   ├── analysis-log.md
│   └── handover.md
├── tests/
├── assets/
├── AGENTS.md
├── LICENSE
└── llms.txt

内容一览

区域内容推荐后续阅读
🧭 docs/以证据为导向、可复现的工作流和验证规则workflow.md
🩺 tools/只读 PE32 清单和 VMT 辅助工具tools/pe_inventory.py
🧰 ghidra/无头导出辅助工具ExportDecompilation.java
🫙 templates/私有分析和交接模板templates/analysis-log.md
🧪 tests/合成、依赖精简的测试tests/test_pe32.py

快速开始

# From the repository root
python -m tools.pe_inventory "C:\analysis\program.exe"
python -m tools.pe_inventory "C:\analysis\program.exe" --imports --json

# Check a known VMT candidate
python -m tools.delphi_vmt "C:\analysis\program.exe" --vmt 0x00412340

# Heuristic search; always validate candidates in a disassembler
python -m tools.delphi_vmt "C:\analysis\program.exe" --scan

运行合成测试套件:

python -m unittest discover -v

GitMCP

此仓库旨在与 https://gitmcp.io/ethanhunt1981/rea-ghidra-toolkit 配合使用。

此仓库也已列入官方 MCP Registry,标识符为 io.github.ethanhunt1981/rea-ghidra-toolkit(通过 GitMCP 使用可流式传输的 HTTP;元数据位于 server.json)。

OpenCode / 典型 Agent 配置:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "servers": {
      "rea-ghidra-toolkit": {
        "type": "remote",
        "url": "https://gitmcp.io/ethanhunt1981/rea-ghidra-toolkit"
      }
    }
  }
}

OpenCode 命令行命令:

opencode mcp add rea-ghidra-toolkit --global --url https://gitmcp.io/ethanhunt1981/rea-ghidra-toolkit
opencode mcp list

GitMCP

核心原则

观察、推断和未知是三种不同的状态。 看似合理的名称、字符串或 VMT 候选项,还不能证明其行为。使用这些模板,是为了在不同会话中始终明确区分这三者。

许可证

此仓库采用 MIT 许可证。该许可证仅涵盖其中包含的方法论和工具,不涵盖原始二进制文件、特定目标的规范、第三方受保护材料或私有分析结果。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。