前言¶
在 DeepSeek Harness(DSH)里做安全相关任务时,常见做法是临时拼 prompt、手工整理证据,输出格式也不统一,事后难以复现「当时做了什么、依据是什么」。社区插件 bughunt-kit(维护者 0xmrxp)把「声明授权与范围 → 被动证据 → 脱敏与分诊 → 结构化报告」收成一套 Cordis 插件工作流,首版侧重安全的被动分析,而不是 exploit 自动化。下面介绍它的定位、能力与安装用法;事实以 GitHub 仓库 README 与 package.json(当前版本 0.3.0)为准。
这是什么¶
bughunt-kit 是面向 DSH 的「证据优先」插件:在你已获书面授权、自有系统或 bug bounty 明确范围内的前提下,把评估过程约束在已声明的 scope 内,并把收集到的证据整理成可复现、可脱敏的 Markdown 报告。仓库在 SkillHub 目录中归类为工作流;简介为:Authorized web security assessment workflows for DeepSeek Harness。
项目强调 Authorized use only:仅对你拥有、已获书面许可或在赏金计划 scope 内的目标使用。
核心功能(v0.3)¶
当前发行版在 v0.1/v0.2 基础上增加了仅本地、无 RPC 的 Web3 审查模块;原有 Web 评估工具仍保留。
范围与报告(v0.1 起)¶
bughunt.scope:在开始工作前声明授权、目标路径、模式与请求预算。bughunt.analyze-js:对已由用户提供的 JavaScript 文本做端点与 source map 线索提取;不会隐式拉取 URL 或执行 JS。bughunt.report:将已收集证据渲染为结构化 Markdown 报告。- 内置多份 skill(含授权边界、证据分诊、API 清单、漏洞报告等);分析返回前会对「形似密钥」的值做脱敏。
OpenAPI 与 API 边界(v0.2 路线)¶
README 路线图标明 v0.2 方向为 OpenAPI 清单与 API 信任边界审查(与 v0.1 被动证据 MVP 衔接)。
Web3 本地审查(v0.3)¶
bughunt.decode-calldata:从提供的 calldata 解码常见 EVM selector 与参数。bughunt.approval-risk:说明 ERC-20 allowance 与 ERC-721 operator approval 相关暴露面。bughunt.contract-review:返回偏防御性的智能合约检查清单(访问控制、重入、预言机、approval、可升级性、校验、错误与证据等)。bughunt-web3-review:方法论 skill,带严格约束(不签名、不广播、不 exploit)。- Web3 相关工具不使用 RPC,不请求私钥,不签名或提交交易。
整体架构(README 原文):
scope declaration
↓
passive evidence supplied by the user
↓
redaction + structured triage
↓
severity-ranked Markdown report
Cordis bundle 以 additive 方式注册工具与 skill provider,不修改 DSH 核心配置。
安装与启用¶
插件以当前 DSH 进程权限运行;安装前应自行审阅源码、MIT 许可证 与 SECURITY.md。
从本地 checkout 安装(README 示例):
dsh plugin --profile web add ./bughunt-kit
安装后需重启对应 DSH profile,或使用宿主提供的 plugin reload。
已发布包(package.json 声明 dsh.bundle.patch):
dsh plugin --profile web add bughunt-kit
兼容性:package.json 中 dsh.compatibility.dshReleases 标注 0.2.0-rc.2、0.2.1-rc.3 为 compatible;README 说明初始 scaffold 面向 DSH 0.2.1-rc.2 与 Node.js 20+,发版前应更新兼容矩阵并跑 smoke test。peer 依赖包括 @deepseek-ai/cordis ~4.0.5 与 @deepseek-ai/dsh-skill / @deepseek-ai/dsh-tools 等 0.2.1-rc.2 线。
典型用法¶
对话式工作流示例¶
README 给出的示例意图如下(可交给带 bughunt skill 的 DSH 会话):
Use the bughunt-authorized-assessment skill. The target is my local demo fixture.
Register a passive scope, analyze the supplied JavaScript bundle, and produce a
redacted Markdown report. Do not send requests outside the declared scope.
工具边界 intentionally narrow:bughunt.analyze-js 只接受文本;网络侦察与浏览器操作需用户在另行授权的工具与已声明 scope 下自行组合。
本地 Demo¶
仓库提供可复现的本地 fixture 与浏览器录屏 walkthrough;演示路径为自有本地 fixture、被动 scope 注册、证据收集、脱敏、端点分诊与 Markdown 报告生成,不探测公网目标、不含 exploit payload。
启动 demo 服务:
npm run demo:serve
# open http://127.0.0.1:18080 in a browser
# click "Run demo"
用 Playwright 重新生成截图与 GIF:
PLAYWRIGHT_BROWSERS_PATH=/tmp/bughunt-playwright-browsers npm run demo:capture
细节见仓库内 demo/README.md。
适用场景与注意¶
适合:在合法授权前提下,用 DSH 把被动 JS 分析、证据脱敏与报告生成串成可复现流程;v0.3 起可在离线、无链上交互前提下辅助 calldata 解码与合约审查清单。
不适合或需自行补足:插件不提供隐式 HTTP 抓取或 exploit 自动化;超出 scope 的请求不应依赖本插件默认行为完成。
生态说明:DSH 社区目录(如 SkillHub 插件页)为独立站点,与 DeepSeek / 幻方无官方从属关系;安装来源以你信任的 GitHub 仓库或 npm 包为准。
路线图(README):v0.4 计划可选 Web UI 用于评估历史与证据计数;以上为规划项,以仓库后续 tag 为准。
结尾¶
bughunt-kit 把授权 Web 安全评估收成「声明 scope → 用户提供被动证据 → 脱敏分诊 → Markdown 报告」的 DSH 工作流,并在 0.3.0 增加无 RPC 的 Web3 defensive 工具集。进一步说明、CI 状态与 issue 见 GitHub:0xmrxp/bughunt-kit,目录入口见 SkillHub:bughunt-kit。