mcpField
H
headless-ghidra-evidence

headless-ghidra-evidence

github.com/bytelandtechnology安全590 次安装25 周前更新
代码仓库

关于 headless-ghidra-evidence

用于无界面 Ghidra 分析中审查第三方库的工作流技能,依据基线和运行时证据记录库版本、源码位置、置信度及函数分类,为后续元数据恢复做准备。

主要功能

  1. 01审查基线与运行时证据
  2. 02记录库版本和置信度
  3. 03追踪原始源码目录
  4. 04分类第三方函数
  5. 05检查 P2 阶段门禁

适用场景

  1. 01识别分析二进制中的库
  2. 02记录源码与版本证据
  3. 03准备函数元数据恢复
  4. 04记录未发现第三方代码的情况

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/bytelandtechnology/headless-ghidra --skill headless-ghidra-evidence

安装后在 Claude Code 中输入/headless-ghidra-evidence确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

planning-brief.md
README.ja-JP.md
README.md
README.zh-CN.md
examples/
evidence-speckit-handoff.md

详细介绍

无头 Ghidra 第三方库 — P2

P2 会审查基线和运行时 YAML,以识别第三方库、记录本地原始源码目录,并为后续元数据丰富工作对函数进行分类。源码下载或获取不属于 CLI 的职责;CLI 会记录 source_path、pristine_path、版本、置信度和证据。

必需的 ghidra-agent-cli 命令

  • ghidra-agent-cli functions list
  • ghidra-agent-cli functions show
  • ghidra-agent-cli imports list
  • ghidra-agent-cli constants list
  • ghidra-agent-cli strings list
  • ghidra-agent-cli vtables list
  • ghidra-agent-cli types list
  • ghidra-agent-cli callgraph list
  • ghidra-agent-cli callgraph callers
  • ghidra-agent-cli callgraph callees
  • ghidra-agent-cli third-party add
  • ghidra-agent-cli third-party none
  • ghidra-agent-cli third-party set-version
  • ghidra-agent-cli third-party list
  • ghidra-agent-cli third-party classify-function
  • ghidra-agent-cli third-party vendor-pristine
  • ghidra-agent-cli execution-log append
  • ghidra-agent-cli gate check --phase P2

输入

  • artifacts/<target-id>/baseline/functions.yaml
  • artifacts/<target-id>/baseline/callgraph.yaml
  • artifacts/<target-id>/baseline/types.yaml
  • artifacts/<target-id>/baseline/constants.yaml
  • artifacts/<target-id>/baseline/vtables.yaml
  • artifacts/<target-id>/baseline/strings.yaml
  • artifacts/<target-id>/baseline/imports.yaml
  • artifacts/<target-id>/runtime/run-manifest.yaml
  • artifacts/<target-id>/runtime/hotpaths/call-chain.yaml
  • 已存在时的 artifacts/<target-id>/third-party/identified.yaml

输出

  • artifacts/<target-id>/third-party/identified.yaml
  • artifacts/<target-id>/third-party/pristine/<library>@<version>/
  • 可选的本地适配变更,位于 artifacts/<target-id>/third-party/compat/<library>@<version>/

完成预期

  • 存在第三方代码时,identified.yaml 至少记录一个置信度为中或更高的库。
  • 审查确认不存在第三方代码时,identified.yaml 记录 libraries: []。
  • 每个记录的第三方库都有本地 source_path,且在 third-party/pristine/ 下有原始目录。
  • 原始源码目录保持不变;本地适配编辑位于 third-party/compat/ 下。
  • 下一阶段拥有足够的版本和函数分类证据,以恢复名称、签名和类型。

约束

  • 不要直接修改基线 YAML 导出文件。
  • 不要声称存在缺乏依据的证据;如有依据,须记录其来源。
  • 对于受支持的基线读取、第三方写入或执行日志记录,不要绕过 ghidra-agent-cli。
  • 如果 CLI 缺少某项能力,不要创建或运行新的 Ghidra 脚本;请暂停并先询问用户。

下一步

  • P2 门禁通过 → headless-ghidra-discovery

评论

支持 Markdown