关于 headless-ghidra-discovery
headless-ghidra-discovery 是用于 P3 阶段的 Ghidra 函数元数据丰富技能,面向逆向分析流程。它结合第三方证据与运行时调用链,并要求通过 ghidra-agent-cli 串行应用更改。
主要功能
- 01结合第三方证据与运行时调用链
- 02生成函数重命名和签名元数据
- 03校验元数据及热路径
- 04通过 CLI 串行应用并验证更改
- 05记录可复现的分析依据
适用场景
- 01为热路径调用链恢复函数名称和签名
- 02将元数据更改应用到 Ghidra 项目
- 03验证 P3 阶段的门禁条件
安装
复制下面的命令,在终端中运行。
$
npx skills add https:/ / github.com/ bytelandtechnology/ headless-ghidra --skill headless-ghidra-discovery安装后在 Claude Code 中输入/headless-ghidra-discovery确认已加载。
包含的文件
除 SKILL.md 外,安装时一起下载的参考资料和脚本。
README.ja-JP.mdREADME.mdREADME.zh-CN.md详细介绍
无界面 Ghidra 元数据增强 — P3
P3 根据第三方证据和 P1 运行时热点调用链来增强函数元数据。分析工作可以并行进行,但所有对 Ghidra 项目的写入都必须通过串行执行的 ghidra-agent-cli ghidra ... 命令完成。
必需的 ghidra-agent-cli 命令
ghidra-agent-cli workspace state showghidra-agent-cli functions listghidra-agent-cli callgraph callersghidra-agent-cli callgraph calleesghidra-agent-cli metadata enrich-functionghidra-agent-cli metadata validateghidra-agent-cli hotpath validateghidra-agent-cli ghidra apply-renamesghidra-agent-cli ghidra verify-renamesghidra-agent-cli ghidra apply-signaturesghidra-agent-cli ghidra verify-signaturesghidra-agent-cli gate check --phase P3
输入
artifacts/<target-id>/pipeline-state.yamlartifacts/<target-id>/runtime/hotpaths/call-chain.yamlartifacts/<target-id>/third-party/identified.yamlartifacts/<target-id>/baseline/functions.yamlartifacts/<target-id>/baseline/callgraph.yamlartifacts/<target-id>/baseline/types.yaml
输出
artifacts/<target-id>/metadata/renames.yamlartifacts/<target-id>/metadata/signatures.yamlartifacts/<target-id>/metadata/types.yamlartifacts/<target-id>/metadata/constants.yamlartifacts/<target-id>/metadata/strings.yamlartifacts/<target-id>/metadata/apply-records/
退出要求
- 在 P4 开始前,
runtime/hotpaths/call-chain.yaml中的每个函数都必须有明确恢复出的名称和签名。 - 元数据增强 YAML 只能通过 CLI 锁定期间执行的 CLI 命令应用到 Ghidra 项目。
- 增强过程必须能够根据记录的基线、运行时和第三方证据复现。
约束
- 此阶段不得进行反编译。
- 不得改写历史的逐函数输出。
- 对于受支持的状态、基线、调用图、元数据、Ghidra 应用或门禁操作,不得绕过
ghidra-agent-cli。 - 如果 CLI 缺少某项功能,不得创建或运行新的 Ghidra 脚本;请暂停并先询问用户。
下一步
- P3 门禁通过 →
headless-ghidra-batch-decompile
评论
支持 Markdown