Communitygithub.com

ghidra-reverse

用于免费/开源逆向工程,支持 Ghidra(无头模式或 GUI)的反编译、交叉引用,并在 IDA 不可用时通过可选的 Ghidra MCP 工作流进行分析。

ghidra-reverse 是什么?

该技能为开发者提供了一个基于 Ghidra 的免费逆向工程解决方案,适用于 IDA Pro 许可证不可用、偏好开源工具或需要进行批量无头分析的场景。它支持完整的逆向工作流,包括项目创建、自动分析、关键函数反编译、符号重命名以及 Plate 注释。关键的区别在于它无缝集成了无头模式(`analyzeHeadless`)用于 CI/CD 或批量处理,并支持可选的 Ghidra MCP 桥接,允许 AI 代理直接通过端口通信拉取反编译结果和交叉引用。该技能通过 `tool-index.md` 自动检测工具路径,并通过 `ghidra-mcp` 进行自举(如果清单支持),从而消除了硬编码路径。它与 `binary-diff` 技能联动,使用 `ghidriff` 进行补丁差异分析,并与动态分析工具(如 Frida/GDB)协作,形成一个完整的逆向工程管道。输出确保仅使用实际安装的 Ghidra 路径以避免错误,并促进通过 CheckList 和日志记录实现可重复的分析步骤。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/zhaoxuya520/reverse-skill/tree/main/skills/ghidra-reverse

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Ghidra 逆向工程

操作要求(读完后立刻执行)

  1. NOW: 读取 ../field-journal/precedent-reverse.md
  2. NOW: 确认需要 Ghidra(无 IDA / 偏好开源 / 批量 headless)
  3. NEXT: 读 ../tool-index.md 查 ghidra / ghidra-mcp 路径
  4. NEXT: 缺工具 → bootstrap ghidra-mcp(若 manifest 支持)或按手动步骤装 Ghidra
  5. ACT: 导入样本 → 自动分析 → 导出关键函数反编译

适用场景

  • 无 IDA 许可证时的主逆向入口
  • 批量 headless 分析 / CI 中反编译
  • Ghidra 脚本(Java/Python Jython/PyGhidra)自动化
  • 与 binary-diff / patch-diff-exploit 的 ghidriff 联动

与 IDA 分工

需求优先
已有 IDA MCP 深挖ida-reverse/
开源 / 批量 / 教学本 skill
仅 CLI 快速侦察radare2/

工作流

1. 项目与自动分析

□ 新建 Project → Import 文件 → Analyze(默认分析器)
□ 记录语言/编译器识别结果与基址
□ 标记入口、导出表、字符串 xref

2. 关键函数

□ 从字符串 / 导入 API 反查
□ Decompile 窗口还原算法
□ 重命名函数/变量;写 Plate comment
□ 需要动态时交接 Frida/GDB(reverse-engineering 动态章)

3. Headless(批量)

# 示例:analyzeHeadless 路径因安装而异,MUST 从 tool-index 取
analyzeHeadless /path/to/project Proj -import sample.bin -postScript ExportDecomp.py

4. MCP(若已配置)

□ 确认 ghidra MCP 端口(常见 8765,以 tool-index 为准)
□ 用 MCP 工具拉反编译 / xrefs,禁止猜端口

工具链

工具用途自举
Ghidra反编译主工具手动 release / 包管理器
ghidra-mcpAI 桥bootstrap 能力名 ghidra-mcp
ghidriff补丁差分见 patch-diff-exploit

参考

  • references/ghidra-cheatsheet.md
  • ../ida-reverse/ ../radare2/ ../binary-diff/

路由上下文

上游: MASTER R22
下游: 动态验证 → Frida/GDB;利用 → pwn-chain
同级: ida-reverse(商业深挖)

任务完成自检

  • 是否基于真实 Ghidra/tool-index 路径?
  • 是否标注函数地址与重命名?
  • 是否有可复现步骤?
  • Checklist / journal?

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

api-security

Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication, authorization, rate-limit, and CI/CD testing.

apk-reverse

在 CLI 环境下做 Android APK 逆向时使用。适用于 APK 解包、Java 反编译、smali 修改、重打包、Frida 动态 Hook,以及按需切换到 so/native 分析。优先使用本机已安装的 jadx、apktool、frida、adb、ida-reverse、radare2。

attack-chain

Use for authorized multi-stage attack-path planning and orchestration when a task spans reconnaissance, initial access, privilege escalation, lateral movement, or impact assessment. Route single-stage tasks directly to their specialist skill.

binary-diff

|

binary-ninja-reverse

Use for authorized binary analysis in Binary Ninja, including HLIL/MLIL/LLIL inspection, strings/imports/exports, cross-references, types, patch review, Python API automation, and optional Binary Ninja MCP or localhost HTTP integration.

browser-automation

|

browser-extension-reverse

Use for authorized reverse engineering of browser extensions (Chrome/Firefox) including manifest analysis, background workers, and extension-based credential or traffic logic recovery.

case-review

Reviews a reverse-skill case package for scope readiness, Evidence to Finding to Path traceability, work item coverage, timeline references, and optional artifact hash integrity before report handoff.

cloud-k8s

Use for authorized cloud, container, and Kubernetes security assessment including metadata SSRF, IAM misconfig, container escape paths, and cluster RBAC review.

code-audit

Use for authorized source-code security review and SAST workflows including Semgrep, CodeQL patterns, dangerous API hunting, and fix verification.

ctf-sandbox

Thin PRIMARY for CTF / AWD / 靶场 multi-type orchestration. Hands off to the sidecar CTF-Sandbox-Orchestrator. Use when the user says CTF, AWD, 靶场, or 比赛题 and no more specific pwn/APK/IDA route already won.

database-security

Use for authorized database security assessment covering PostgreSQL/MySQL/MSSQL/Mongo/Redis exposure, authz, UDF/command paths, and misconfiguration review.

diagram-generator

generate, refine, validate, and render diagrams from natural language, notes, code snippets, schemas, tables, or existing diagram source. use for flowcharts, swimlanes, sequence diagrams, state diagrams, er diagrams, class diagrams, architecture/c4-style diagrams, dependency graphs, gantt charts, mind maps, user journeys, sankey-style flows, org charts, network graphs, and other visual models. supports mermaid by default, graphviz dot for complex graph layout, plantuml for uml-heavy engineering diagrams, and svg output when direct markup is more reliable.

digital-forensics

Use for authorized digital forensics including memory dumps, disk timelines, PCAP investigation, artifact triage, and IR evidence preservation.

docs-generator

|

dotnet-reverse

.NET / C# 二进制逆向。当目标是 .NET assembly(PE 头含 CLR、.exe/.dll 托管程序)、C# 编译产物(含 NativeAOT)、红队 Sharp* 工具(Rubeus / SharpHound / SharpHound 等)、.NET 混淆程序(ConfuserEx / SmartAssembly / Babel / Eazfuscator)、.NET loader / info-stealer / 套壳 malware 时使用。优先用 dnSpyEx + de4dot,需要 AI 直接操作时联动 dnSpy MCP。不用于纯 native 二进制(走 reverse-engineering / ida-reverse)。

edr-bypass-re

|

email-security

Use for authorized email security review including phishing analysis, header authentication (SPF/DKIM/DMARC), BEC patterns, and mailbox token abuse research.

firmware-pentest

|

go-rust-reverse

Use for reverse engineering stripped Go and Rust binaries including runtime recognition, pclntab/moduel data recovery, panic strings, and idiomatic decompilation recovery.

相关技能