Skip to content
KitploitKITPLOIT
工具漏洞利用博客
Log in
提交
工具漏洞利用博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

订阅源联系隐私© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
security-harness — 面向 AI 编码代理的多代理静态应用安全审查框架:映射代码库、搜寻漏洞类别、串联并验证发现结果,并输出 SARIF、JSON 和 PDF 报告。 | Kitploit
工具/GitHubGitHub/dmdhrumilmistry/security-harness
静态分析漏洞扫描器静态代码分析 (SAST)漏洞分析代码分析安全虚拟化Web安全渗透测试DevSecOps秘密检测供应链安全AI 安全
41113838天前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
GitHubdmdhrumilmistry/security-harness

security-harness

面向 AI 编码代理的多代理静态应用安全审查框架:映射代码库、搜寻漏洞类别、串联并验证发现结果,并输出 SARIF、JSON 和 PDF 报告。

查看仓库
分享

安全测试框架

一个面向 Claude Code(以及后续其他 AI 代理)的多代理应用安全审查框架。一个路由技能会调度到完整的攻击性安全流水线,该流水线会映射代码库、利用按类别划分的知识库搜寻漏洞、将发现串联成升级路径、验证真实影响,并报告为 README / JSON / SARIF / 文档 / PDF。

范围:此框架对您拥有或获授权测试的代码执行静态分析(源代码审查、数据流追踪、PoC/载荷构造)。它不会攻击实时第三方系统。

包含内容```

security-harness/ # a plugin marketplace └── plugins/security-harness/ ├── skills/ │ ├── sh-router # single entry point - routes any appsec request │ ├── sh-security-review # the pipeline orchestrator (Stages 0-5) │ └── sh-kb-* (15) # per-vuln-class knowledge bases ├── agents/ │ ├── sh-recon # map: Graft graph + stack/SBOM/CVE + attack surface │ ├── sh-hunter # find: source→sink hunting, one per class (parallel) │ ├── sh-chainer # escalate: combine findings into attack chains │ ├── sh-verifier # confirm: offensive + seceng + dev verification + PoC │ └── sh-reporter # deliver: README/JSON/SARIF/HTML/PDF/doc └── references/ # shared contracts (finding schema, SARIF map, state files, rubrics)

### 覆盖的漏洞类别(`sh-kb-*` 技能)

访问控制(IDOR/BOLA/权限提升) · sqli · xss · ssrf · 注入(命令/代码/SSTI/LDAP) · 认证(会话/JWT)
· 反序列化 · 路径遍历(LFI/RFI) · 密钥 · csrf · xxe · 开放重定向 · 加密 · 竞态条件
· 文件上传。依赖项 CVE/SBOM 由侦察阶段处理。

## 安装

该测试框架面向多个 agent 发布。完整的打包细节和发布
检查清单见 [`docs/DISTRIBUTION.md`](https://github.com/dmdhrumilmistry/security-harness/blob/main/docs/DISTRIBUTION.md)。

**Claude Code** - 将此仓库添加为插件市场并安装该插件:```
/plugin marketplace add dmdhrumilmistry/security-harness
/plugin install security-harness

/plugin marketplace add 接受以下任意一种形式:GitHub 的 owner/repo(如上所示)、完整的 git URL (https://github.com/dmdhrumilmistry/security-harness.git),或指向本地克隆的路径 (例如在包含你检出的目录中运行 /plugin marketplace add ./security-harness)。 然后运行 /plugin install security-harness,并在提示时重新加载。

Gemini CLI - 一个原生扩展,清单文件位于仓库根目录:```bash gemini extensions install https://github.com/dmdhrumilmistry/security-harness

**opencode、Codex 或任何 [agentskills.io](https://agentskills.io) agent** - 将技能复制到发现目录中。Codex 还会自动识别 `AGENTS.md`:```bash
git clone https://github.com/dmdhrumilmistry/security-harness
cd security-harness
python3 scripts/sync-agent-skills.py --install agents     # ~/.agents/skills
python3 scripts/sync-agent-skills.py --install opencode   # ~/.config/opencode/skills

Graft 由流水线自动安装并配置。 阶段 0 会在缺失时运行 npm install -g @nanonets/graft(需要 Node/npm),然后运行 graft init <target> --no-agents --no-global 为目标仓库注册 Graft MCP 服务器和新鲜度钩子。图本身(<target>/graft/, 自动加入 gitignore)在侦察阶段构建。如需手动预安装:npm install -g @nanonets/graft。Graft 的 结构化构建是免费的,无需 API 密钥;可选的 --deep LLM 处理在设置时使用 GRAFT_API_KEY / GRAFT_PROVIDER / GRAFT_MODEL。

其他工具也会在缺失时由阶段 0 自动安装(通过机器上现有的任意包管理器 - winget/choco/scoop、brew、apt、npm/pip/go - 参见 references/tooling-setup.md)。安装过程会 有提示,优先采用无需提权的方式,且绝不会阻塞运行:任何无法安装的工具只会被标记为不可用,流水线会 回退处理。阶段 0 只安装用于填补缺失能力组的工具:

  • SBOM:syft · CVE:以下之一 grype (首选)、trivy 或 osv-scanner
  • 报告:wkhtmltopdf 或 pandoc(用于 PDF/DOCX);否则你会得到 report.html(或无头 Chrome PDF)。

所有工具都是可选的 - 如果都没有安装,流水线会优雅降级为原生搜索 + 清单解析。

用法

使用自然语言请求调用路由器:``` /sh-router full security review of ./api /sh-router find SQLi and IDOR in src/ /sh-router just map this codebase # recon only

或直接调用管道:```
/sh-security-review . classes:sqli,access-control,ssrf depth:deep
/sh-security-review . stage:report       # regenerate reports for the latest run

模型与成本控制

每个阶段都运行在与自身认知负荷相匹配的模型上,因此 token 会花在真正影响发现质量的地方,并在机械性工作上节省下来。这是默认设置——无需任何参数。

阶段默认模型
reconsonnet
hunt(按类别)模式类(secrets、crypto、open-redirect、csrf)使用 haiku · 源→汇追踪类(sqli、xss、ssrf、injection、path-traversal、xxe、file-upload、auth)使用 sonnet · 深度逻辑类(access-control、race-conditions、deserialization)使用 opus
chainopus
verifyopus(精度关卡——保持强模型)
reporthaiku

可通过 models: 参数覆盖(同样会经过路由器传递):``` /sh-security-review . # default tiered map above /sh-security-review . models:max # every stage + hunter on opus (max quality, max cost) /sh-security-review . models:cheap # aggressive downshift (trades some verify precision) /sh-security-review . models:verify=opus,hunt=sonnet # per-stage overrides /sh-security-review . models:report=sonnet,hunt.pattern=sonnet # per-hunter-tier override

阶段:`setup, recon, hunt, chain, verify, report`。模型:`opus, sonnet, haiku, inherit`。对于 `hunt`,
单独指定模型会将所有 hunter 都降级为该模型;`hunt.pattern` / `hunt.trace` / `hunt.logic` 则针对某一层级。
其他节省 token 的机制是内置的:recon 只为具有真实攻击面的类生成 hunter,hunter
查询 Graft 图而不是读取整个文件,并且 `findings.json`/SARIF 由
确定性脚本生成,而不是由模型生成。

### 输出

所有内容都位于 `<target>/.security-harness/<run-id>/` 下:

- `recon.md`、`codebase-map.json` - 映射(技术栈、SBOM、CVE、攻击面)。
- `findings.jsonl` → `chains.md` → `verified.jsonl` - 工作状态(参见 `references/state-files.md`)。
- `reports/` - `README.md`、`findings.json`、`results.sarif`、`report.html`、`report.pdf`(+ `report.docx`)。

每个已发布的发现都包含一个 payload、一个 PoC、验证结论、CWE/OWASP id、CVSS 以及
代码级缓解措施。

## Pull request 审查

`sh-pr-review` 审查单个 pull request 而不是整个代码库,将
结果作为内联评论**发布在 PR 本身**,并设置一个 `security/pr-review` commit
状态,分支保护可以强制执行该状态。

**在你自己的机器上运行它,适用于任何你可以读取的 PR。** 安装该插件并询问:```
review https://github.com/acme/api/pull/128
review PR 42
security review this PR

粘贴一个 PR 链接,它就会审查该仓库中的那个 PR,并先将其克隆到临时目录,因为 hunters 会读取文件而不仅仅是补丁。不会向你所工作的仓库写入任何内容。

传入一个纯数字,它会针对你当前所在的仓库进行解析,也就是 git remote 指向的那个仓库。什么都不传,它会取你当前分支对应的开放 PR。

Phase 7 打印发现结果和裁决,并在发布任何内容之前询问——拒绝是正常结果,payload 会留在磁盘上供你稍后发布。

在花费任何分析之前,它会检查你是否真的能写入目标仓库,因此审查别人的项目会提前告诉你发布将返回 403,而不是十分钟后才发现。

有三个特性使它可用作合并门禁而非噪音:

  • 只有 PR 应负责的问题才会使其失败。 每个发现都带有 pr_impact,取值为 introduced、aggravated 或 pre_existing。前两者会阻止;pre_existing 会被报告但从不阻止。因为作者从未编写的代码而阻止合并,正是必需检查被删除的原因,所以当 hunter 在 aggravated 和 pre_existing 之间不确定时,它必须选择 pre_existing。
  • 深度跟随风险。 Triage 首先在 orchestrator 中运行,不使用 subagents。它将变更路径和新增行 sink tokens 映射到与 sh-kb-* 基础相同的 class slugs 上,然后选择一个层级。Tier 0(无安全相关变更)不启动任何东西,但仍会设置状态。Tier 3 运行完整流水线。
  • 重新推送不会造成刷屏。 每条评论都带有一个隐藏指纹,该指纹在不使用行号的情况下计算,因此重新审查只会添加新增内容,并将已修复的内容列为“Resolved since the last review”。
裁决状态何时
failfailure在 --fail-on(默认 medium)或以上存在 introduced 或 aggravated 发现,置信度 >= 80
warnsuccess没有 introduced 或 aggravated;报告 pre-existing 发现
passsuccess无发现,或 triage 在 Tier 0 停止
errorerror审查无法完成

warn 故意报告 success:一个阻止合并的警告就是带有额外步骤的失败,团队会通过移除该检查来应对。error 与 failure 保持区分,因此一次损坏的运行绝不会看起来像它并未发现的漏洞。

审查事件始终是 COMMENT,绝不是 REQUEST_CHANGES 或 APPROVE。提交状态是执行机制,也是分支保护所读取的内容。

范围: 该 skill 写入 pull request 和提交状态,不写入其他任何地方。它不打开 issue,也不在任何外部跟踪器中创建任何内容。

重新审查是增量的

一个 PR 每次推送审查一次,因此第二次审查必须比第一次更便宜,否则该工具就会成为人们会关掉的东西。

去重发生在花费之前,而不是发布之前。 PR 上已有的指纹会在 Phase 1 中读取,并交给 hunters 和 verifier。在最后才发现重复,意味着流水线中最昂贵的模型已经重新确认了一个一直写在 PR 上的结论。这不需要缓存:状态存在于 PR 中,因此它可以在冷机器和 CI 中工作。

本地缓存使其余部分增量。 sh-review-cache 将每次运行的文件哈希、发现和裁决存储在你的操作系统缓存目录下(绝不在仓库中,因为跨仓库审查会在一个会被删除的临时克隆中运行)。下一次审查只重新 hunt 内容实际发生变化的文件,对未变化的发现复用裁决,并且如果 recon map 覆盖的内容没有移动,则复用它。

一次 base-branch 合并不产生任何成本。 将 main 合并到 PR 分支会改变 head SHA,而作者没有写任何东西,但提交状态固定到某个 SHA,因此必需检查会从新的 head 中悄然消失。当 PR 自身的文件逐字节相同并且 base delta 不触及发现所依赖的任何内容时,先前的裁决会被重新盖到新的 SHA 上,完全不启动任何 agents。最后一个条件正是其安全性的来源:一次删除 sanitizer 的 base 合并会让每个 PR 文件保持不变,同时把一行安全代码变成可利用的代码。

失效处理刻意保守,因为安全工具中的陈旧条目不会让它变慢,而会让它出错。缓存键会哈希每个 sh-kb-* 知识库,因此 KB 更新会使每个缓存发现失效——缓存的“clean”绝不能压制那次更新本要捕获的发现。模型身份、skill 版本、文件内容和 7 天 TTL 也都会使其失效,未指定的模型会被视为未命中。

--no-cache 禁用它,--refresh-cache 重新建立基线,run.md 按阶段记录启动了、复用了和跳过了什么,因此一个悄悄停止命中的缓存是可见的,而不是被假定的。

发布,以及内容写入何处

审查和提交状态默认发布。 一次已计算但从未交付的审查帮不了任何人。--confirm 在发布前恢复提示,--dry-run 不发送任何内容,--no-status 发布审查但不碰提交状态。

下载工具