mcpField
G
GuardVibe — Security MCP for Vibe Coding

GuardVibe — Security MCP for Vibe Coding

本地服务
github.com/goklab开发工具6今天更新

关于 GuardVibe — Security MCP for Vibe Coding

GuardVibe 是面向使用编码 Agent 构建 Web 应用的本地 MCP 安全服务。它执行确定性的全仓库检查,定期更新 CVE 规则,并可在编写代码前分析提示词。

主要功能

  1. 01624 条安全规则与 39 种工具
  2. 02全仓库安全扫描
  3. 03每日更新的 CVE 版本检查
  4. 04代码生成前检查提示词
  5. 05代码修复建议与 CI 输出

适用场景

  1. 01开发时扫描 AI 生成的 Web 应用代码
  2. 02检查依赖中的易受攻击版本
  3. 03为编码提示词补充安全要求
  4. 04通过 pre-commit 或 CI 阻止不安全变更

MCP 相关

GuardVibe 向兼容 MCP 的编码 Agent 提供安全工具,包括仓库扫描、提示词分析和修复建议。它在本地运行,无需账户或 API 密钥。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"guardvibe": {
"command": "npx",
"args": [
"-y",
"guardvibe"
]
}
}
}
启动命令npx -y guardvibe

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmguardvibe3.66.0

工具

29

收录的工具列表 · 更新于 2 周前

参数类型必填说明
codestring是要分析的代码片段
formatenum否输出格式:markdown(供人阅读)或 json(供 Agent 机器读取)markdown | json
frameworkstring否框架上下文(例如 express、nextjs、fastapi、react、django)
languageenum是代码的编程语言javascript | typescript | python | go | dockerfile | html | sql | shell | yaml | terraform | firestore

详细介绍

GuardVibe

npm version License: Apache-2.0 Node.js CI npm provenance codecov

为 AI 提供它无法胜任的安全基础设施。 无论你的编码 Agent 有多强,它都无法了解训练截止日期之后发布的 CVE,无法确定性地保证每次运行执行相同检查,无法在上下文中容纳整个仓库,也无法客观地审查自己的代码。GuardVibe 具备这四种能力——为 AI 编写的代码提供确定性、跟进训练截止日期后的最新信息、覆盖整个仓库且独立于作者的验证层。

  • 🗓️ 了解 AI 不知道的信息。 每天从 GHSA / OSV.dev / CISA KEV 更新 CVE 规则——GuardVibe 会标记模型训练截止日期之后发布的易受攻击依赖项。(249 条 CVE 规则,使用 npm run intel 每日分流。)
  • 🎯 确定性,而非概率性。 相同代码 = 每次运行都得到相同结果(经过内容哈希)。你的 AI 会猜测;GuardVibe 不会。
  • 🗺️ 看见整个仓库。 对每个路由进行跨文件污点分析和身份验证覆盖检查——捕获 Agent 因上下文狭窄而遗漏的未受保护端点。
  • 🔍 独立的第二双眼睛。 编写代码的东西无法审查自己。GuardVibe 是 AI 编写代码的外部检查器——在 AI 编码时加入循环(实时编辑钩子),而不是事后检查。
  • ⬅️ 新功能:从写下第一行代码之前就开始。 世上所有扫描器——包括审查自身代码的 Agent——都只能在代码存在后采取行动。secure_prompt 则在此之前采取行动:它会分析编码提示词本身,检测其中隐含的技术栈和攻击面,并将按严重程度排序的 GuardVibe 要求嵌入 AI 要执行的提示词中。漏洞会被预防,而不是被发现。过程确定、零次 LLM 调用——如果提示词本身已安全,则原样通过。

为氛围编程打造的安全 MCP。 624 条安全规则、39 个工具,覆盖 AI 生成代码的整个旅程——从提示词本身到生产部署。

适用于 Claude Code、Cursor、Gemini CLI、Codex、VS Code(Copilot)、Windsurf 以及任何兼容 MCP 的编码 Agent。

AI 已经这么强,为什么还需要工具?

“更多规则”从来不是制胜关键——强大的模型早已熟记大多数安全规则。它无法做到的是保持确定性、了解训练截止日期之后发布的 CVE、在上下文中容纳整个仓库,或客观地审查自己刚编写的代码。这四个缺口是结构性的;模型再怎么进步也无法弥补。GuardVibe 正是填补这些缺口的那一层——在 AI 编码时运行,而不是之后再单独审计。自 v3.19 起,它也会在 AI 编码之前运行:secure_prompt 会改写任务本身,让安全要求出现在提示词中,而不是事后分析里。

为什么选择 GuardVibe

大多数安全工具都是为企业安全团队打造的。GuardVibe 则是为你打造的——为使用 AI 快速构建并发布 Web 应用的开发者打造。

  • 624 条安全规则、39 个工具,专为 AI Agent 生成的技术栈打造
  • 零配置门槛——运行 npx guardvibe 即可开始扫描
  • 无需账户——100% 在本地运行,无需 API 密钥,也不依赖云端
  • 了解你的技术栈——不是通用 SAST,而是了解 Next.js、Supabase、Stripe、Clerk 以及你实际使用工具的规则
  • CVE 版本情报——检测 package.json 中 249 个已知存在漏洞的包版本,每天从 GHSA / OSV.dev / CISA KEV 更新
  • AI Agent 和 MCP 安全——检测 MCP 服务漏洞、工具描述中的提示词注入(OWASP MCP Top 10)、由模型控制的沙箱禁用标记、过度的 AI 权限、间接提示词注入
  • 自动修复建议——fix_code 工具会返回具体补丁和结构化编辑,AI Agent 可机械地应用这些修改。覆盖范围:硬编码凭据 → 迁移至环境变量;公开前缀 LLM 密钥(NEXT_PUBLIC_/VITE_/EXPO_PUBLIC_/REACT_APP_)→ 移除前缀;CORS 通配符 → 环境变量允许列表;dangerouslyAllowBrowser 标记 → 移除;沙箱绕过标记(unsafe/noSandbox/allowEval)→ 移除;Agent 循环 → 添加 maxSteps;React 原始 HTML 属性 → <ReactMarkdown>;缺失的身份验证检查 → 插入身份验证防护;SQL 注入 → 参数化查询;缺失的速率限制器 / CSRF / 安全标头 → 代码片段模板。
  • 提交前钩子——在不安全代码进入代码仓库前拦截它
  • 可用于 CI/CD——GitHub Actions 工作流支持将 SARIF 上传到 Security 选项卡
  • 适合 Agent 的输出——为 AI Agent 提供 JSON 格式,为人类提供 Markdown 格式,为 CI/CD 提供 SARIF 格式
  • 插件系统——可通过社区规则包或高级规则包扩展

v3.66.x 新增内容

  • 修复了 zod、undici、body-parser、multer、GraphQL Tools 和 MSAL Node 的漏洞覆盖缺口——v3.66.0 新增 VG1268,检测低于 4.6.6 版本的 zod 无界数组问题累积导致的内存耗尽(CVE-2023-54404);VG1269,检测 @graphql-tools/utils mergeIncrementalResult 原型污染的残余受影响版本(CVE-2026-114604);VG1270,检测 undici 过多 content-encodings 导致进程崩溃的残余受影响版本(CVE-2026-109869);VG1271,检测 body-parser 尾随字节导致的解码器崩溃(CVE-2026-111181);VG1272,检测 multer 待处理的异步 fileFilter 导致崩溃的残余受影响版本(CVE-2026-113872);以及 VG1273,检测 @azure/msal-node 授权码流程参数泄露(CVE-2026-109461)。共有 249 条 CVE 版本固定规则。

v3.65.x 新增内容

  • 修复了 Next.js、DOMPurify、Sentry 和 toml 的漏洞覆盖缺口——v3.65.0 新增 VG1263,检测 Next.js Image Optimization RCE、use cache 类型化数组 RCE 和 Server Actions DoS 的残余受影响版本(GHSA-2464-fhr4-w9xw、GHSA-673q-mjm6-r5xr、CVE-2026-94482);新增 VG1264 和 VG1265,分别检测 DOMPurify SAFE_FOR_TEMPLATES 影子 DOM 绕过和 IN_PLACE 钩子脱离子树导致的 XSS(GHSA-cg2g-xh64-v4q7、GHSA-mrv2-3pqr-j5jr);新增 VG1266,检测 @sentry/nextjs 在隧道路由下的中间件绕过(CVE-2026-114139);以及新增 VG1267,检测 toml 二次复杂度和无界整数 DoS 问题集群(CVE-2026-114141 / 114143 / 114144)。共有 243 条 CVE 版本固定规则。

v3.64.x 新增内容

  • 修复了 Storybook 和 ApostropheCMS 的漏洞覆盖缺口——v3.64.0 新增 VG1261,检测 Storybook 8.x–10.x 以及 @storybook/core、core-server、experimental-addon-test、addon-vitest 和 addon-mcp 包中,因缺少来源验证而导致恶意网站可注入代码的开发服务器漏洞(CVE-2026-114125,严重);新增 VG1262,检测 ApostropheCMS 拒绝服务问题集群——预身份验证导入上传、泄露的 CSV 临时文件和原型成员删除(CVE-2026-113711 / 113658 / 113666)。共有 238 条 CVE 版本固定规则。

v3.63.x 新增内容

  • MCP SDK、follow-redirects、markdown-it、Vite 和 Angular router 漏洞缺口已补齐——v3.63.0 新增 VG1256:MCP TypeScript SDK HTTP 服务端内存耗尽、跨会话任务访问和跨客户端消息传递漏洞(CVE-2026-111768 / 111767 / 111770);VG1257:follow-redirects 在跨源重定向时泄露凭据标头(CVE-2026-111756 / 111755);VG1258:markdown-it 二次时间渲染 DoS 漏洞(CVE-2026-111758 / 111759);VG1259:Vite / launch-editor 开发服务端在 Windows 上的命令注入漏洞(CVE-2026-112942 / 112943);以及 VG1260:Angular router SSR DoS 漏洞(CVE-2026-111751 / 111752)。共 236 条 CVE 版本固定规则。

v3.62.x 新增内容

  • Qwik 和 TinaCMS CLI 漏洞缺口已补齐——v3.62.0 新增 VG1254:攻击者只需发送一个未经身份验证、在 qwik-json 请求体中携带资源 thenable 的请求,即可导致 Qwik 服务崩溃(CVE-2026-84994);以及 VG1255:TinaCMS CLI 在生成的客户端中通过未转义的 Git 分支名称执行代码注入(CVE-2026-108259)。共 231 条 CVE 版本固定规则。

v3.61.x 新增内容

  • TinaCMS、JHipster、PraisonAI、Actual 和 Backstage 漏洞缺口已补齐——v3.61.0 新增 VG1249:Backstage Sentry Scaffolder 操作的 SSRF 和集成令牌泄露漏洞(CVE-2026-106459);VG1250:Actual Sync Server CORS 代理的 GitHub 允许列表前缀绕过漏洞,可泄露私有仓库(CVE-2026-57449);VG1251:JHipster 生成的应用在 generator-jhipster 和 react-jhipster 中存在响应式 sort SQL 注入和 Blob ContentType 存储型 XSS 漏洞(CVE-2026-107375、CVE-2026-107303);VG1252:PraisonAI AgentOS 未经身份验证即可通过网络访问的默认配置漏洞(CVE-2026-61426);以及 VG1253:TinaCMS 管理预览 iframe 劫持 tinacms 和 @tinacms/app 内容 API 的源站漏洞(CVE-2026-108261,严重)。共 229 条 CVE 版本固定规则。

v3.60.x 新增内容

  • TanStack Start、OpenNext Cloudflare、Claude Code、Ghost 和 Backstage 漏洞缺口已补齐——v3.60.0 新增 VG1244:TanStack Start 服务器函数响应中的未经身份验证反射型 XSS 漏洞,影响 start-server-core、react-start、solid-start 和 vue-start(CVE-2026-102989);VG1245:OpenNext Cloudflare 缓存拦截中间件可通过百分号编码路径绕过(CVE-2026-100409);VG1246:Claude Code 插件哈希固定绕过漏洞,影响 2.1.64–2.1.178 版本(CVE-2026-86063);VG1247:Ghost 的一组八项公告,已在 6.67.0 中修复(书签卡片和主题翻译 RCE、存储型 XSS、邀请令牌泄露);以及 VG1248:Backstage confluence-to-markdown Scaffolder 操作路径遍历漏洞(CVE-2026-106560)。共 224 条 CVE 版本固定规则。

v3.59.x 新增内容

  • 模板引擎、Shell 引号处理、Backstage 和保密合约漏洞缺口已补齐——v3.59.0 新增 VG1239:Handlebars 在已停止维护的 3.x 系列中绕过自有属性原型检查(CVE-2026-106445);VG1240:shell-quote 的 quote() 在换行符处的操作符命令注入漏洞,影响 1.1.0–1.8.3 版本(CVE-2026-9277);VG1241:Backstage Scaffolder 任务状态验证残余窗口漏洞(CVE-2026-106500);VG1242:OpenZeppelin Confidential Contracts 加密句柄泄露漏洞(GHSA-29h2-jr22-frmh);以及 VG1243:Backstage Bitbucket 拉取请求操作路径验证绕过漏洞(CVE-2026-106486)。共 219 条 CVE 版本固定规则。

v3.58.x 新增内容

  • CMS、文档查看器、钱包和 AI 工作流漏洞缺口已补齐——v3.58.0 新增 VG1234:TinaCMS 可自托管版本的身份验证绕过漏洞,可接受来自任意 TinaCloud 应用的令牌(CVE-2026-63506);VG1235:File Viewer 旧版 DOC 渲染器 DOM XSS 漏洞(CVE-2026-91127);VG1236:BSV 钱包工具箱未检查由存储提供的输出脚本(CVE-2026-56744);VG1237:Flowise Python 验证器绕过和 NodeVM puppeteer 沙箱逃逸漏洞(CVE-2026-73487、CVE-2026-73483);以及 VG1238:Backstage OIDC 提供商允许使用未经验证的电子邮件地址登录(CVE-2026-106488)。共 214 条 CVE 版本固定规则。

v3.57.x 新增内容

  • 补齐 JWT、数据库驱动和 MessagePack 方面的漏洞 — v3.57.0 新增 VG1229,涵盖 fast-jwt 的算法混淆、接受未签名令牌和绕过声明验证器问题(CVE-2026-107722、CVE-2026-107720、CVE-2026-107723、CVE-2026-107724);VG1230,涵盖 mariadb 连接器的 SQL 注入和内存泄露残余风险窗口(CVE-2026-107385、CVE-2026-107384、CVE-2026-107383);VG1231,涵盖 msgpack5 流式解码器的栈耗尽和截断的 map32 导致崩溃问题(CVE-2026-107300、CVE-2026-107302);VG1232,涵盖 Vendure Admin Dashboard 存储型 XSS(CVE-2026-63459);以及 VG1233,涵盖 libp2p gossipsub StrictSign 对等节点冒充问题(CVE-2026-86038)。共 209 条 CVE 版本固定规则。

v3.56.x 新增内容

  • 补齐 Backstage 和 Handlebars 方面的漏洞 — v3.56.0 新增 VG1224,涵盖 Backstage Scaffolder 任务数据泄露和操作输入授权绕过问题(CVE-2026-106501、CVE-2026-106503);VG1225,涵盖 Backstage TechDocs mkdocs.yml 代码执行和 SSRF 问题(CVE-2026-106558、CVE-2026-106510、CVE-2026-106455 及另外三项);VG1226,涵盖 Backstage backend-defaults 服务凭据限制绕过问题(CVE-2026-106492);VG1227,涵盖 Backstage 目录占位符解析 SSRF 问题(CVE-2026-106498);以及 VG1228,涵盖 Handlebars 通过 AST 类型混淆和绕过自有属性原型检查实现的 JavaScript 注入问题(CVE-2026-106446、CVE-2026-106445)。共 204 条 CVE 版本固定规则。

v3.55.x 新增内容

  • 补齐 Payload CMS、Quasar、Next.js 和 sharp 方面的漏洞 — v3.55.0 新增 VG1219,涵盖在 3.90.0 中修复的 Payload 核心漏洞集群(未经授权的文档更新、绕过身份验证集合字段访问限制、SQL 注入、首次注册时的 RCE 和上传问题 — CVE-2026-105859、CVE-2026-105845 及另外十二项);VG1220,涵盖 Payload 插件和数据库适配器问题(表单构建器 RCE CVE-2026-105857、导入/导出原型污染 CVE-2026-105844、SQLite/Postgres SQL 注入 CVE-2026-105856,以及 MCP API 密钥、多租户、S3、MongoDB 和电商问题);VG1221,涵盖 Quasar SSR meta 标签 XSS、User-Agent ReDoS、开发错误页面环境信息泄露和 Icon Genie 路径遍历问题(CVE-2026-106102 至 106107);VG1222,涵盖 Next.js Image Optimization SSRF 的残余风险窗口 16.3.6–16.3.7(CVE-2026-94483);以及 VG1223,涵盖 sharp 0.35.4 中捆绑的 librsvg 残余风险窗口(GHSA-wq5f-xc86-pv6w)。共 199 条 CVE 版本固定规则。

v3.54.x 新增内容

  • 补齐 vm2、GraphQL Tools、Nx、shell-quote 和 MCP SDK 方面的漏洞 — v3.54.0 新增 VG1213,涵盖 vm2 3.11.7–3.12.1 沙箱逃逸残余风险窗口(CVE-2026-93605、CVE-2026-100721 及另外六项,在 3.12.2 中修复);VG1214,涵盖联邦网关中 @graphql-tools/utils mergeDeep 原型污染导致的 DoS(CVE-2026-104852);VG1215,涵盖 @graphql-tools/executor-legacy-ws 禁用 TLS 证书验证的问题(CVE-2026-103921);VG1216,涵盖通过 git 修订版本和 @nx/docker 发布配置实施的 Nx 命令注入,以及可被所有人访问的守护进程套接字问题(CVE-2026-104854、CVE-2026-104859);VG1217,涵盖 shell-quote 在注释标记后调用 quote() 时的命令注入问题(CVE-2026-102422);以及 VG1218,涵盖 MCP TypeScript SDK OAuth 客户端向服务器指定的授权服务器发送凭据的问题(CVE-2026-104850)。共 194 条 CVE 版本固定规则。

v3.53.x 新增内容

  • 补齐 CISA KEV 中 Strapi、Capacitor、compression、ProseMirror 和 Vue SSR 方面的漏洞 — v3.53.0 新增 VG1208,涵盖 Strapi 未经身份验证的私有字段过滤导致管理员密码重置令牌泄露的问题(CVE-2023-22894,已列入 CISA KEV);VG1209,涵盖 Capacitor Android/iOS 通过内部 HTTP 代理路径以应用源加载远程内容的问题(CVE-2026-103922);VG1210,涵盖响应提前关闭时 compression 内存泄露导致的 DoS(CVE-2026-87776);VG1211,涵盖通过粘贴的 HTML 在 prosemirror-view 中实施的 XSS(CVE-2026-104847);以及 VG1212,涵盖 @vue/server-renderer 中动态属性名包含回车符时导致的 SSR XSS(GHSA-g2v6-rqmx-r4w6)。共 188 条 CVE 版本固定规则。

v3.52.x 新增内容

  • 补齐广泛安装的依赖漏洞 — v3.52.0 新增 VG1203 source-map-js 索引源映射偏移事件循环 DoS(CVE-2026-93749)、VG1204 proxy-addr 通过匹配所有客户端的 IPv4 映射 IPv6 信任子网进行 IP 欺骗(CVE-2026-90711)、VG1205 simple-git 不安全操作防护绕过——尾随命令配置、配置包含、缩写长选项和 VISUAL 编辑器(CVE-2026-102826/102827/102828/102829)、VG1206 Seroval fromJSON thenable 吸收和无界 TypedArray 分配(CVE-2026-104846/104845),以及 VG1207 Tinypool 原型污染利用链导致 RCE(CVE-2026-104848/104849)。共 183 条 CVE 版本固定规则。

v3.51.x 新增内容

  • 补齐 figlet、Mockoon、libp2p 和开发工具漏洞 — v3.51.0 新增 VG1198 figlet whitespaceBreak 无限循环 DoS(CVE-2026-96780)、VG1199 @yeger/turbo-graph 通过 /api/run 执行未经身份验证且暴露于网络的任务(CVE-2026-59160)、VG1200 Payload 替代文本插件因省略 overrideAccess 导致的授权绕过(CVE-2026-59965)、VG1201 带通配符 CORS 的 Mockoon 未经身份验证的管理 API(CVE-2026-59148),以及 VG1202 libp2p PeerStore 接受攻击者为受害者 Peer ID 签名的 PeerRecord(CVE-2026-86039)。共 183 条 CVE 版本固定规则。

v3.50.x 新增内容

  • 审计每条 CVE 规则的覆盖范围 — 现在会在每个已发布的 npm 版本中,将每条版本规则与其引用的公告进行比对。v3.50.0 补上了审计发现的三个未覆盖版本窗口:VG1195 Next.js 10.x–11.x 中针对 AVIF/libheif 图像优化器 RCE 的漏洞(GHSA-2xp9-vwfh-vxw4,严重)、VG1196 已停止维护的 @angular/router 版本系列(19.x 及更早版本)中针对 SSR 矩阵参数 DoS 的漏洞(CVE-2026-101896),以及 VG1197 mcp-from-openapi / FrontMCP $ref SSRF 漏洞的原始影响窗口(CVE-2026-39885)。

v3.49.x 新增内容

  • 补齐 basic-ftp、A2UI、Trigger.dev、@fastify/busboy 和 probe-image-size 漏洞 — v3.49.0 新增 VG1190 basic-ftp 二次复杂度目录列表解析器 DoS(CVE-2026-102990)、VG1191 @a2ui/web_core openUrl 执行 Agent 提供的按钮中的 javascript: URI(CVE-2026-10032,严重)、VG1192 Trigger.dev 默认密钥/跨租户 SQL 注入/重放 IDOR/Webhook SSRF 漏洞组合(6 条公告,严重)、VG1193 @fastify/busboy 原型命名标头和超大边界 DoS(CVE-2026-19481、CVE-2026-19484),以及 VG1194 probe-image-size 二次复杂度 SVG 解析器 DoS(CVE-2026-104861)。

v3.48.x 新增内容

  • 补齐 NestJS、Astro、vm2、Piscina 和 devalue 漏洞 — v3.48.0 新增 VG1185 @nestjs/platform-fastify 绝对形式中间件绕过(GHSA-9c5c-9qcx-q35q)、VG1186 @astrojs/node 畸形 Host 端口导致崩溃(CVE-2026-102984)、VG1187 vm2 沙箱逃逸漏洞组合的残余影响窗口(12 条公告,严重)、VG1188 Piscina ThreadPool 选项原型污染导致 RCE(CVE-2026-102992,严重),以及 VG1189 devalue 共享内存/uneval 扩展/stringifyAsync 拒绝漏洞组合(3 条公告)。

v3.47.x 新增内容

  • 补齐 Axios、Fastify、gRPC、NestJS 和 Angular SSR 漏洞 — v3.47.0 新增 VG1180 NestJS 微服务嵌套消息模式导致崩溃(CVE-2026-102281)、VG1181 axios 原型污染利用链/fetch maxRedirects/HTTP/2/ReDoS 漏洞组合的残余影响窗口(7 条公告)、VG1182 @grpc/grpc-js getAuthContext 未授权证书(CVE-2026-101916)、VG1183 Fastify 未找到路由时的身份验证绕过和验证绕过漏洞组合(4 条公告),以及 VG1184 Angular 路由器 SSR 数值矩阵参数 DoS(CVE-2026-101896)。

v3.46.x 新增内容

  • 修复 Next.js og-image 远程代码执行和广泛安装的依赖项漏洞 — v3.46.0 新增 VG1175 Next.js next/og ImageResponse 远程代码执行的遗留风险窗口(GHSA-vcvr-r3jv-pc5j,严重)、VG1176 Nodemailer addressparser 在 9.1.0 之前存在的二次回溯 DoS(2 项公告)、VG1177 engine.io 协议版本不匹配导致的崩溃(CVE-2026-102599)、VG1178 webpack-dev-middleware publicPath 路径遍历(CVE-2026-76844),以及 VG1179 Electron 沙箱继承、webview worker、协议 CORS 和 preload 缓存相关问题(5 项公告)。

v3.45.x 新增内容

  • 修复广泛安装的依赖项漏洞 — v3.45.0 新增 VG1170 Cline Hub 仪表板跨源 WebSocket 劫持(CVE-2026-59723)、VG1171 @xhmikosr/decompress 符号链接链路径遍历(CVE-2026-101894,严重)、VG1172 嵌套和逗号链接的大括号导致的 brace-expansion 栈耗尽 DoS(2 项公告)、VG1173 undici WebSocket 崩溃、BalancedPool TLS 检查失效和缓存投毒(3 项公告),以及 VG1174 joi isoDate() 二次正则表达式 DoS(GHSA-6h2x-m376-mqjq)。

v3.44.x 新增内容

  • 修复 SSR、包管理器和开发工具漏洞 — v3.44.0 新增 VG1165 Angular SSR 对格式错误的 DOCTYPE 无限循环 DoS(CVE-2026-101895,即修复上月 SSR 公告问题的版本)、VG1166 pnpm 12 预发布版锁文件符号链接逃逸(GHSA-2rx9-3g3h-c2jv)、VG1167 claude-code-templates Studio 服务端未经身份验证的命令注入(CVE-2026-73222)、VG1168 OpenClaw Feishu 绕过每个账户的禁用设置(2 项公告),以及 VG1169 DOCX 编辑器字体名称 CSS 注入和打印 XSS(GHSA-x7m8-jrm8-hpvx)。

v3.43.x 新增内容

  • 补齐解析器、工作流和 MCP 漏洞 — v3.43.0 新增 VG1160 smol-toml 六字节无限循环 DoS(CVE-2026-85730)、VG1161 n8n 表达式沙箱逃逸 / SSRF / ReDoS / OAuth 注册漏洞集群(5 条安全公告)、VG1162 FrontMCP / mcp-from-openapi $ref SSRF 修复绕过(CVE-2026-59973)、VG1163 node-opcua 客户端套接字泄漏(CVE-2026-68904)和 VG1164 Plate DOCX 导出 SSRF(CVE-2026-65842)。
  • 补齐本月影响范围最广的漏洞 — v3.42.0 新增 VG1153 nanoid 大小溢出,导致后续每个 ID 都变成同一个常量字符串(CVE-2026-73086)、VG1154 mysql2 明文密码身份验证降级、VG1159 Nodemailer addressparser 二次方级 DoS、VG1157 toml 原型污染 + 递归崩溃、VG1158 SVGO removeScripts XSS 绕过,以及 9 月 pnpm 路径遍历 / 代理密钥漏洞集群(VG1155)和 Orval $ref SSRF(VG1156)的残留受影响范围。
  • 清空 30 天积压漏洞 — 过去一个月所有尚未覆盖、且出现在有实际使用量的软件包中的高危 / 严重安全公告,现均已添加规则(v3.40.0–v3.41.0):js-yaml、browserslist、multer、engine.io、@xmldom/xmldom、faker、adm-zip、@tiptap/core、@angular/platform-server SSR、@sap/cds-mtxs、mariadb 等。旧版手写 xmldom、RSC 和 MikroORM 规则已重新生成,因此不会再标记版本范围已超出修复版本的问题。
  • 按影响范围处理积压漏洞 — 每日运行现在会根据实际安装该软件包的项目数量,对尚未覆盖的安全公告排序。v3.40.0 补齐了过去一个月影响范围最广的漏洞:VG1141 js-yaml 合并键导致 CPU 耗尽、VG1136 browserslist 自定义统计数据原型写入、VG1135 engine.io WebTransport 崩溃、VG1137 faker helpers.fake() 代码执行、VG1134 mariadb 在 TLS 验证前使用密码,以及 link-preview-js、TOON 和 LiquidJS 相关漏洞。
  • 精准匹配安全公告版本的规则 — 每次发布 npm 版本时,都会根据 GitHub Advisory Database 检查所有 CVE 版本固定规则:不会标记修复版本之后的版本范围(v3.37.2);不再标记不在所引用安全公告范围内的版本,并补上遗漏项;同时移除了 3 条没有关联安全公告的规则(v3.38.0)。
  • 每日威胁情报流水线 — 每天跟踪 GHSA / OSV.dev / CISA KEV 规则集。最新发布版本(v3.39.0)新增 VG1129 Orval 生成客户端代码注入 RCE 漏洞集群(11 条安全公告,包括 CVE-2026-62681 等)、VG1130 Astro AVIF/libheif 图像优化 RCE(GHSA-26w7-cxv4-gfx2,CVSS 9.8)、VG1131 Vendure 外部身份验证账户接管(CVE-2026-63472)、VG1132 MapLibre GL DOM.sanitize() 零点击 XSS(CVE-2026-85061,CVSS 10.0)和 VG1133 yayson 原型污染。v3.37.0 新增 VG1128 ws 内存耗尽 DoS + 未初始化内存泄露(CVE-2026-48779 / CVE-2026-45736),并修正 VG917 的插入符 / 波浪号匹配。v3.36.0 新增 VG1124 @bytebase/dbhub MCP 服务 DNS 重绑定导致的 SQL 执行 + 只读绕过(CVE-2026-61742/-61788)、VG1125 Unleash 缺少 await 导致的权限绕过 + 跨项目 IDOR(CVE-2026-77426)、VG1126 Elysia multipart 二次方级 CPU DoS(CVE-2026-56669)和 VG1127 request-filtering-agent 进程崩溃(CVE-2026-62985)。v3.35.0 新增 VG1119 SunEditor 净化器绕过导致的存储型 XSS(CVE-2026-59167,CVSS 10.0)、VG1120 sharp 捆绑的 libheif 库 RCE 残留受影响范围(GHSA-rgj7-g3m4-5g8c,0.33.3–0.35.3)、VG1121 @roomi-fields/notebooklm-mcp MCP 工具路径遍历(CVE-2026-61647)、VG1122 9router LLM 路由器身份验证绕过漏洞集群(CVE-2026-56681/-56675/-56676/-56679)和 VG1123 deepstream PATCH_MULTI 权限绕过残留漏洞(CVE-2026-63116)。v3.34.0 新增 VG1115 Next.js AVIF/libheif RCE + Windows 主机上的 RCE(GHSA-2xp9-vwfh-vxw4 / CVE-2026-75604,CVSS 9.5)、VG1116 @clerk/clerk-react 5.x 组织 / 账单 / 重新验证授权绕过(CVE-2026-42349)、VG1117 @zereight/mcp-gitlab 未经身份验证即可读取文件 / SSRF / DNS 重绑定(CVE-2026-61560/-61559/-61568)和 VG1118 PostCSS sourceMappingURL 残留受影响范围(GHSA-fxqj-rqcc-2cmp / GHSA-r28c-9q8g-f849)。v3.32-3.33 新增 VG1109-VG1114:crypto-js WordArray.random() 熵不足、jsii-diff 命令注入、keyv/cacheable「ChainDrop」npm 供应链蠕虫、React2Shell react-server-dom-* RCE、@trigger.dev/core 原型污染,以及 axios Basic 身份验证注入漏洞。此前还新增了 Auth.js v5 beta 默认开放漏洞、Next.js/PostCSS 7 月残留漏洞、@asyncapi/* 供应链 IOC、Clerk 5.x 中间件绕过、jscrambler/@injectivelabs IOC、n8n-mcp 跨租户隔离漏洞、Next.js 2026 年 5 月的 13 条安全公告集群、Drizzle ORM SQL 标识符注入(CVE-2026-39356)、@tanstack/* Mini Shai-Hulud 供应链攻击、Kysely JSON 路径遍历等。
  • 符合 OWASP MCP Top 10 — VG1068 会标记描述、指令或 systemPrompt 字段包含提示词注入标记(ignore previous instructions、you are now、jailbreak mode、system prompt:、override safety 等)的 MCP / AI 工具定义;可与 VG1063 搭配,后者会检测 Agent 运行时中的 dangerouslyDisableSandbox: true
  • 行内忽略 — // guardvibe-ignore VG001 可按行屏蔽单个发现项
  • CLI 优先 — npx guardvibe audit、npx guardvibe scan、npx guardvibe doctor 均可独立运行,无需 MCP
  • 内嵌修复计划 — 每次审计后,remediation_plan 都会生成分节修复清单
  • 评分涵盖所有部分 — 安全评分现在会综合考虑代码、依赖项、配置、机密信息、身份验证覆盖情况和污点分析
  • 排除 Git 忽略的机密信息 — 密钥扫描时会自动跳过与 .gitignore 匹配的文件
  • 识别污点净化器 — 数据流分析可识别常见净化器(DOMPurify、转义函数、参数化查询),并停止传播

GuardVibe 的对比优势

GuardVibe 专为 AI 编码工作流打造。传统工具非常适合企业 CI/CD 流水线,而 GuardVibe 则填补了不同的空白。

能力GuardVibe传统 SAST依赖项扫描器
在 AI Agent 中运行(MCP)原生支持不支持不支持
零配置设置npx guardvibe需要账户和配置内置(功能有限)
Vibecoding 技术栈规则(Next.js、Supabase、Clerk、tRPC、Hono)100+ 条专用规则通用模式不适用
AI/大模型安全(提示词注入、MCP、工具滥用)68 条规则实验性支持/无无
AI 宿主安全(CVE-2025-59536、CVE-2026-21852)guardvibe doctor不支持不支持
为 AI Agent 提供自动修复建议fix_code 工具CLI 自动修复不支持
CVE 版本检测249 个软件包,每日更新覆盖广泛覆盖广泛
合规映射(SOC2、PCI-DSS、HIPAA)内置付费套餐无
SARIF CI/CD 导出支持支持有限支持
规则数量624 条(专注型,其中 68 条原生支持 AI)5000+ 条(覆盖广泛)不适用

适用场景:GuardVibe:你正在使用 AI Agent 构建项目,并希望将安全扫描集成到编码工作流中——无需仪表盘、账户或 CI 设置。

适用场景:传统工具:你需要深入的 AST 分析、企业级仪表盘、组织范围的策略执行,或覆盖数百种语言。

快速开始

Claude Code
npx guardvibe init claude

创建 .mcp.json MCP 配置(固定为当前版本)、.claude/settings.json 自动扫描钩子,以及 CLAUDE.md 安全规则。设置完成后重启 Claude Code。

Cursor
npx guardvibe init cursor

创建 .cursor/mcp.json 和包含安全规则的 .cursorrules。设置完成后重启 Cursor。

Gemini CLI
npx guardvibe init gemini

创建 ~/.gemini/settings.json MCP 配置和 GEMINI.md 安全规则。

Codex(OpenAI)
codex mcp add guardvibe -- npx -y guardvibe
VS Code(GitHub Copilot)

在项目中创建 .vscode/mcp.json:

{
  "servers": {
    "guardvibe": {
      "command": "npx",
      "args": ["-y", "guardvibe"]
    }
  }
}

注意: VS Code 使用 "servers",而不是 "mcpServers"。

Windsurf

添加到 ~/.codeium/windsurf/mcp_config.json:

{
  "mcpServers": {
    "guardvibe": {
      "command": "npx",
      "args": ["-y", "guardvibe"]
    }
  }
}
一次性配置所有平台
npx guardvibe init all       # Claude + Cursor + Gemini
提交前钩子
npx guardvibe hook install   # Blocks commits with critical/high findings
npx guardvibe hook uninstall # Remove hook
CI/CD(GitHub Actions)
npx guardvibe ci github          # Generates .github/workflows/guardvibe.yml (SARIF scan)
npx guardvibe ci github --pr     # + a diff-aware PR review workflow that posts inline comments

GuardVibe 扫描内容

应用代码

Next.js App Router、Server Actions、Server Components、React、Express、Hono、tRPC、GraphQL、FastAPI、Go

身份验证与授权

Clerk、Auth.js(NextAuth)、Supabase Auth、OAuth/OIDC(state 参数、PKCE)——中间件检查、密钥暴露、会话处理、SSR Cookie 身份验证、管理员方法保护

数据库与 ORM

Supabase(RLS、anon 与 service role)、Prisma(原始查询注入、CVE)、Drizzle(SQL 注入——包括 CVE-2026-39356 标识符注入)、MikroORM(CVE-2026-44680 运行时标识符注入)、Kysely(CVE-2026-44635 JSON 路径遍历)、Turso/LibSQL(客户端暴露、SQL 注入)、Convex(身份验证绕过、内部函数暴露)

支付

Stripe(Webhook 签名、重放保护、密钥)、Polar.sh、LemonSqueezy

第三方服务

Resend(电子邮件 HTML 注入)、Upstash Redis、Pinecone、PostHog、Google Analytics(PII 跟踪)、Uploadthing(身份验证、文件类型/大小)

AI / 大模型安全

提示词注入检测、大模型输出接收点、系统提示词泄露、MCP 服务 SSRF/路径遍历/命令注入、MCP 工具描述中的提示词注入标记(符合 OWASP MCP Top 10,VG1068)、由模型控制的沙箱禁用标志(dangerouslyDisableSandbox,VG1063)、AI Agent 不受限制的 Shell/数据库访问、dangerouslyAllowBrowser、缺少 maxTokens、未设置 maxSteps 的 Agent 循环、AI API 密钥暴露给客户端、通过外部数据造成的间接提示词注入、RAG/向量投毒、公开前缀的大模型密钥泄露(NEXT_PUBLIC_*、VITE_*、EXPO_PUBLIC_*)

AI 主机安全

guardvibe doctor — 统一的主机加固扫描器,可检测 CVE-2025-59536(通过 .claude/settings.json 注入钩子)、CVE-2026-21852(通过覆盖 ANTHROPIC_BASE_URL 窃取 API 密钥)、MCP 配置审计、环境扫描和权限分析。支持 Claude、Cursor、VS Code、Gemini、Windsurf。提供针对特定主机的平台定制修复步骤。

OWASP API 安全

BOLA/IDOR(对象级授权失效)、批量赋值(展开请求正文、Object.assign)、缺少分页、速率限制、管理端点授权、详细错误信息泄露

现代技术栈

Zod .passthrough() 批量赋值、z.any() 绕过、文件上传验证、server-only 导入防护、Webhook 重放保护、CSP 标头、unsafe-inline/unsafe-eval 检测、Cron 端点身份验证

移动端

React Native、Expo — AsyncStorage 密钥、深层链接令牌暴露、硬编码 API URL、ATS 配置

Firebase

Firestore 安全规则、Firebase Admin SDK 暴露、存储规则、自定义令牌验证

CVE 版本情报(249 个 CVE,每日刷新)

框架: Next.js(CVE-2024-34351、CVE-2024-46982、CVE-2025-29927、CVE-2026-23869、CVE-2026-44573 / 44574 / 44575 / 44578 / 44579 / 45109,2026 年 5 月集群)、React + react-server-dom-(CVE-2025-55182、CVE-2026-23870)、Express、Hono 低于 4.12.18 的集群、@vitejs/plugin-rsc、Strapi content-type-builder(CVE-2026-22599) 身份验证: Clerk 中间件绕过(GHSA-vqx2)、Clerk has() 组织/计费/重新验证绕过(GHSA-w24r)、Clerk clerkFrontendApiProxy SSRF(CVE-2026-34076)、NextAuth.js(2 个 CVE)、jsonwebtoken ORM / SQL: Drizzle SQL 标识符注入(CVE-2026-39356)+ Drizzle sql.raw 插值(VG1073)、MikroORM SQL 注入(CVE-2026-44680)、Prisma 原始查询调用形式、Kysely JSON 路径遍历(CVE-2026-44635) AI 生态: @anthropic-ai/sdk(CVE-2026-34451 + memory 工具路径逃逸)、Vercel AI SDK 文件类型绕过(CVE-2025-48985)、LangSmith 不可信提示词清单(CVE-2026-45134)、OpenClaude 沙箱绕过(CVE-2026-42074)、@nyariv/sandboxjs Function.caller 逃逸(CVE-2026-43898) HTTP / 解析: Axios 低于 1.15.2 的集群(SSRF + 原型污染 + DoS + CRLF)+ axios 代理身份验证重定向泄露(VG1071)、Hono setCookie 属性注入(VG1072,覆盖固定版本 ^4.12.21)、fast-uri 路径遍历 + 主机混淆(CVE-2026-6321 / 6322)、fast-xml-parser CDATA 注入、xmldom CDATA、protobuf.js 多 CVE 集群、undici(2 个 CVE)、ws 工具 / 供应链: node-ipc 恶意软件抗议(VG1069)、Miasma @redhat-cloud-services 命名空间被入侵 IOC(VG1074)、Session messenger 数据窃取端点 IOC(VG1075)、@tanstack/ Mini Shai-Hulud(84 个恶意版本,2026 年 5 月)、@wdio/browserstack-service 命令注入(CVE-2026-25244)、@babel/plugin-transform-modules-systemjs 任意代码执行(CVE-2026-44728)、@opentelemetry exporter-prometheus DoS(CVE-2026-44902)、systeminformation Linux 命令注入(CVE-2026-44724)、velocityjs 原型污染、defu、sharp、lodash、node-fetch、tar、xml2js、crypto-js、angular-expressions RCE、i18next-http-backend、vm2 沙箱逃逸

部署与配置

Vercel(vercel.json、Cron 密钥、标头)、Next.js 配置、Docker、Docker Compose、Fly.io、Render、Netlify、Cloudflare

基础设施

Dockerfile 安全、GitHub Actions CI/CD、Terraform(S3、IAM、RDS、安全组)

密钥与环境

API 密钥(AWS、GitHub、Stripe、OpenAI、Resend、Turso)、.env 管理、.gitignore 覆盖、高熵检测、NEXT_PUBLIC 暴露

合规控制映射

将安全发现映射到 SOC2、PCI-DSS、HIPAA、GDPR、ISO27001 和 EU AI Act(EUAIACT)控制项。识别与特定合规要求相关的代码级漏洞。不能替代专业合规审计。

供应链

恶意 postinstall 脚本、未固定版本的 GitHub Actions、CI npm 来源证明 / --ignore-scripts 加固(VG1070)、拼写仿冒检测、node-ipc 抗议软件版本(VG1069)、Miasma @redhat-cloud-services 命名空间泄露 IOC(VG1074、RHSB-2026-006)、Session Messenger 数据外泄端点 IOC(VG1075、filev2.getsession.org)、@tanstack/* Mini Shai-Hulud 大规模恶意软件版本(2026 年 5 月)、@wdio/browserstack-service 通过 git 分支名称实现命令注入(CVE-2026-25244)、锁文件投毒模式

提示词级安全(左移)

AI 生成代码中的大多数漏洞都始于提示词:“给我的应用添加登录功能”并未说明密码哈希、会话处理或速率限制,因此模型会选择默认设置,而 CVE 往往就藏在这些默认设置中。secure_prompt 将安全关卡前移到代码生成之前:它会分析原始提示词,检测其涉及的技术栈和攻击面,将其与 GuardVibe 的规则集进行匹配,并返回一条指令,供宿主大模型用于改写提示词,将安全要求嵌入其中。

这不是提示词美化工具。它的行为是确定性的(不使用大模型、不访问网络),绝不会重构意图,首要原则是不造成损害:对于已经具体且具备安全意识的提示词,它会返回 NO_MOD 判定,并原样传递。

  • NO_MOD — 提示词已经具体且具备安全意识 → 不作更改,直接使用原始提示词
  • LIGHT_MOD — 意图明确,但缺少安全约束 → 仅注入要求
  • HEAVY_MOD — 提示词含糊,且与安全相关 → 注入要求 + 提出澄清问题(绝不擅自编造答案)

改写前(用户输入的内容):

add login to my app

改写后(宿主大模型应用 secure_prompt 指令后执行的内容):

Add login to my app, with these security requirements:
- [VG001] Use environment variables or a secrets manager — never hardcode credentials.
- [VG1008] Always verify the caller has admin privileges before allowing role elevation.
- [VG105] Always specify allowed algorithms explicitly in jwt.verify().

Before implementing, confirm: which framework/stack is this for, and which auth
provider should be used (e.g. Clerk, Auth.js/NextAuth, Supabase Auth, custom JWT)?

用户意图不变,但模型现在会根据预先说明的防护要求生成身份验证代码,而不是等 GuardVibe 事后再发现遗漏。

工具(39 个 MCP 工具)

工具功能
check_code分析代码片段中的安全问题
check_project扫描多个文件并进行安全评分(A-F)
scan_directory扫描磁盘上的项目目录
scan_staged对 Git 暂存文件进行提交前扫描 — 感知差异(仅阻止新暂存的行;整文件扫描请使用 diff_aware:false)
scan_dependencies检查所有依赖项是否存在已知 CVE(OSV)— 为每个存在漏洞的包标注可达性(它是否实际导入到源代码中?)
scan_secrets检测泄露的机密信息、API 密钥和令牌
check_dependencies根据 OSV 检查单个包
check_package_health检测拼写仿冒、维护状态和采用情况指标
compliance_report将安全发现映射到合规控制项(SOC2、PCI-DSS、HIPAA、GDPR、ISO27001、EU AI Act)
export_sarif导出 SARIF v2.1.0,以便集成 CI/CD
get_security_docs安全最佳实践和指南
fix_code为 AI Agent 提供自动修复建议和具体补丁
secure_this闭环处理 — 扫描并仅应用经验证可生效的修复(每项修复都会重新扫描,若出现回归则回滚),返回已验证的代码和完成标准门槛
audit_config审计项目配置文件,检查跨文件安全配置错误
generate_policy检测项目技术栈并生成定制的安全策略(CSP、CORS、RLS)
review_pr审查 PR 差异中的安全问题,并按严重程度进行门控
scan_secrets_history扫描 Git 历史记录中的泄露机密信息(包括仍存在和已移除的内容)
policy_check根据 .guardviberc 中定义的合规策略检查项目
analyze_dataflow跟踪从用户输入到危险接收点的污点数据流
analyze_cross_file_dataflow跨文件污点分析 — 跟踪跨模块边界的污点数据
check_command在执行前分析 Shell 命令的安全风险
scan_config_change比较配置文件版本以检测安全降级
repo_security_posture评估整体代码库安全状况并映射敏感区域
explain_remediation获取详细的修复指导,包括利用场景和修复策略
scan_file实时单文件扫描 — 专为编辑后钩子设计
scan_changed_files仅扫描 Git 更改的文件 — 适用于 PR 和增量 CI;感知差异(仅扫描新增行;整文件扫描请使用 diff_aware:false)
security_stats累积安全仪表板 — 显示扫描、修复和评级趋势
guardvibe_doctor主机安全审计 — 检查 CVE-2025-59536、CVE-2026-21852、MCP 配置和环境变量扫描器
audit_mcp_config审计 MCP 服务配置,检查钩子注入、file:// 滥用和敏感路径
scan_host_config扫描 Shell 配置文件和 .env 文件,检查基础 URL 劫持和凭据窃取
verify_fix验证安全修复是否正确应用 — 返回 fixed/still_vulnerable/new_issues
security_workflow获取适用于当前任务(编写代码、提交前检查、PR 审查等)的推荐工具工作流
auth_coverage身份验证覆盖图 — 枚举路由、解析中间件匹配器、检测身份验证守卫并报告覆盖率 %
deep_scan由大模型驱动的深度分析 — 检查 IDOR、业务逻辑、竞态条件和身份验证绕过。默认使用 Claude Haiku 4.5(每次扫描约几美分)。传入 model: 'sonnet' 可进行更深入的分析。CLI:npx guardvibe deep-scan <file> --focus idor
full_audit唯一真实数据源 — 一次调用运行所有检查,返回 PASS/FAIL/WARN 判定、评分、覆盖率 % 和确定性结果哈希
remediation_plan修复计划 — 审计后生成分章节的修复检查清单
verify_remediation修复验证 — 比较修复前后的审计结果,并标记跳过的章节
secure_prompt提示词级安全(左移) — 在编写代码前分析编码提示词;进行确定性分类(NO_MOD/LIGHT_MOD/HEAVY_MOD),检测技术栈和攻击面,并通过重写指令嵌入按严重程度排序的 GuardVibe 要求
scan_hallucinated_packagesSlopsquat / AI 幻觉检测器 — 完全离线且以确定性方式标记虚假导入(已导入但未出现在任何清单中)和拼写仿冒包;可选择启用在线层以验证 npm 注册表信息(404 = 不存在,全新且下载量低 = slopsquat 模式)。CLI:npx guardvibe slopscan [path] --offline
所有扫描工具都支持 format: "json",可输出机器可读的结果。
Slopsquat / 幻觉生成的软件包检测

AI 助手会编造软件包名称——约 20% 的 AI 生成代码引用了不存在的软件包,攻击者还会注册这些幻觉生成的名称(“slopsquatting”)。常规 SCA 扫描会将已知且已发布的软件包与漏洞数据库进行比对;它无法发现尚不存在、从未安装或昨天才发布的名称。scan_hallucinated_packages / slopscan 正是针对代码生成和 PR 阶段的这一盲区:

  • 离线(确定性、隔离网络): phantom_import(源代码中导入了某个软件包,但所有 package.json 中都未声明——这是 LLM 的典型特征)以及热门软件包的拼写仿冒。检测以语句为锚点,并能识别注释和模板,因此文档或字符串中的示例导入不会被误计。
  • 在线(可选、优雅降级): 依据 npm 注册表核实真实性——nonexistent(404)、新发布且下载量低的软件包(slopsquat 注册模式)、已弃用/不再维护的软件包。

离线检测层也包含在 full_audit 部分中(审计期间不会运行在线检测,以确保结果哈希确定)。可通过 .guardviberc 将有意使用的未发布/工作区名称加入允许列表:

{ "slopscan": { "online": true, "allow": ["@myorg/internal-pkg"] } }

安全规则(25 个模块,共 624 条规则)

类别规则数覆盖范围
OWASP 核心39SQL 注入、XSS、CSRF、命令注入、CORS、SSRF、硬编码密钥
Next.js App Router18Server Actions、密钥泄露、身份验证绕过、CSP、重定向
身份验证(Clerk / Auth.js / Supabase Auth)17中间件、密钥、会话存储、角色检查、SSR Cookie
数据库(Supabase / Prisma / Drizzle)13原始查询、客户端暴露、服务角色泄露、NoSQL 注入、Drizzle 标识符注入(CVE-2026-39356)
OWASP API 安全11BOLA/IDOR、批量赋值、分页、速率限制、错误信息泄露
现代技术栈47Zod、tRPC、Hono、GraphQL、Uploadthing、Turso、Convex、OAuth、CSP、Webhook、AI SDK、React Server Action 验证(React2Shell)
部署配置21Vercel、Next.js 配置、Docker Compose、Fly、Render、Netlify、Cloudflare、K8s 密钥
支付(Stripe / Polar / Lemon)9Webhook 签名、密钥暴露、价格篡改
服务(Resend / Upstash / Pinecone / PostHog)11API 密钥泄露、PII 跟踪、邮件注入
Web 安全20Webhook、CSP、.env 安全、AI 密钥暴露、Cookie 处理
React Native / Expo10AsyncStorage 密钥、深度链接、ATS、硬编码 URL
Firebase7Firestore 规则、Admin SDK、存储、自定义令牌
AI / LLM 安全33提示词注入、MCP SSRF、权限过大、间接注入
AI 宿主安全14CVE-2025-59536 钩子注入、CVE-2026-21852 基础 URL 劫持、MCP 配置审计
AI 工具运行时14MCP 工具输出净化、混淆描述、安全绕过
CVE 版本情报249package.json 中已知的易受攻击版本——包括 Vite 开发服务器命令注入(CVE-2024-52011)、React Router 7 漏洞集群(CVE-2026-33245/42211/42342)、DOMPurify XSS(CVE-2026-47423)、Better Auth 身份验证绕过(CVE-2026-45337)、Axios 供应链后门
Shell / Bash5管道传递给 bash、chmod 777、rm -rf、sudo 密码
SQL4不带 WHERE 的 DROP/DELETE、堆叠查询、GRANT ALL
供应链19恶意安装脚本、锁文件完整性、依赖混淆、拼写仿冒检测
Go6SQL 注入、命令注入、模板转义
Dockerfile7root 用户、ENV 中的密钥、未指定标签的镜像、非 root 用户
CI/CD(GitHub Actions)8密钥插值、未固定版本的 Actions、全部写入权限
Terraform6公开的 S3、开放的安全组、IAM 通配符
高级安全31ReDoS、CRLF 注入、竞态条件、XXE、暴力破解、审计日志
其他服务5AWS、GCP、MongoDB、Convex、Sentry、Twilio

CLI 命令

# Scanning
npx guardvibe scan [path]            # Scan a directory for security issues
npx guardvibe scan . --format json   # JSON output for automation
npx guardvibe check <file>           # Scan a single file
npx guardvibe diff [base]            # Scan changed files — reports only newly-introduced issues
npx guardvibe diff [base] --all-lines # Include pre-existing findings in changed files too

# Close the loop — scan, apply verified fixes, re-verify
npx guardvibe secure-this <file>          # Dry run: show the fixes that would land + remaining manual work
npx guardvibe secure-this <file> --write  # Apply only the fixes that re-verify clean (rolled back on regression)
npx guardvibe secure-this <file> --format json

# Full security audit
npx guardvibe audit [path]           # Full audit with PASS/FAIL verdict + hash
npx guardvibe audit . --format json  # JSON output for CI pipelines
npx guardvibe audit --skip-deps      # Skip dependency CVE check
npx guardvibe audit --full           # Disable MCP-output truncation (full finding set)

# Host security audit
npx guardvibe doctor                 # Host hardening audit (project scope)
npx guardvibe doctor --scope host    # + shell profiles, global MCP configs
npx guardvibe doctor --scope full    # + home dir configs
npx guardvibe doctor --format json   # JSON output

# LLM-powered deep scan (IDOR, business logic, race conditions, auth bypass)
npx guardvibe deep-scan <file>                  # Default: Haiku 4.5, all focus areas
npx guardvibe deep-scan <file> --focus idor     # Narrow to IDOR
npx guardvibe deep-scan <file> --model sonnet   # Deeper analysis (more expensive)
npx guardvibe deep-scan <file> --max-bytes 5000 # Truncate input for cost control
# Requires ANTHROPIC_API_KEY or OPENAI_API_KEY env var

# Setup
npx guardvibe init <platform>       # Setup MCP server (claude, cursor, gemini, all)
npx guardvibe hook install           # Install pre-commit hook
npx guardvibe hook uninstall         # Remove pre-commit hook
npx guardvibe ci github              # Generate GitHub Actions workflow

# Pre-commit / CI
npx guardvibe-scan                   # Scan staged files (for pre-commit)
npx guardvibe-scan --format sarif --output results.sarif  # CI mode

# Options (scan commands)
#   --format <type>     scan / diff: markdown|json|sarif
#                       check:       markdown|json|sarif|buddy|agent
#       agent = guardvibe.agent.v1 — per finding: { id, severity, confidence, exactEdit, manualFix, verify }
#       so an AI agent can apply the exact edit and run the verify step to prove the fix
#       (an unsupported format errors rather than silently falling back to markdown)
#   --output <file>     Write results to file
#   --fail-on <level>   critical|high|medium|low|none — exit 1 when a finding at/above this level exists
#       check, audit, and the pre-commit gate (guardvibe-scan / scan --staged) gate on
#       critical by DEFAULT; scan and diff are reports (exit 0) unless --fail-on is passed
#   --full              Bypass response-size caps (50 JSON / 30 markdown / 200-file taint)

插件系统

通过自定义或社区规则包扩展 GuardVibe。

npm install guardvibe-rules-awesome

系统会自动发现与 guardvibe-rules-*、@guardvibe/rules-* 或 @guardvibe-pro/rules-* 匹配的插件。

编写插件

插件是一个导出 GuardVibePlugin 对象的 npm 包:

// index.ts
import type { GuardVibePlugin } from "guardvibe/plugins";

const plugin: GuardVibePlugin = {
  name: "my-rules",
  version: "1.0.0",
  description: "My custom security rules",
  rules: [
    {
      id: "CUSTOM001",
      name: "My Custom Rule",
      severity: "high",       // "critical" | "high" | "medium" | "low" | "info"
      owasp: "A01:2025 Broken Access Control",
      description: "What this rule detects and why it's dangerous",
      pattern: /vulnerable_pattern_here/g,   // RegExp with global flag
      languages: ["javascript", "typescript"], // which file types to scan
      fix: "How to fix the vulnerability",
      fixCode: "// Copy-paste secure code example",
      compliance: ["SOC2:CC6.1"],  // optional compliance mapping
    },
  ],
};

export default plugin;
插件规则架构
字段类型必填描述
idstring是唯一规则 ID(例如:"CUSTOM001")
namestring是易于理解的规则名称
severitystring是critical、high、medium、low 或 info
owaspstring是OWASP 类别映射
descriptionstring是规则检测的内容
patternRegExp是用于匹配存在漏洞代码的正则表达式(使用 /g 标志)
languagesstring[]是要扫描的文件类型
fixstring是问题的修复方法
fixCodestring否可直接复制粘贴的安全代码示例
compliancestring[]否SOC2/PCI-DSS/HIPAA 控制项 ID
加载插件

插件从以下三个来源加载:

  1. 自动发现: 所有与 guardvibe-rules-* 或 @guardvibe/rules-* 匹配的已安装 npm 包
  2. 配置指定: .guardviberc plugins 数组中列出的包
  3. 本地路径: .guardviberc plugins 数组中的相对路径
// .guardviberc
{
  "plugins": [
    "guardvibe-rules-awesome",
    "./my-local-rules"
  ]
}

配置

在项目根目录中创建 .guardviberc 文件:

{
  "rules": {
    "disable": ["VG030"],
    "severity": {
      "VG002": "medium"
    }
  },
  "scan": {
    "exclude": ["fixtures/", "coverage/"],
    "maxFileSize": 1048576
  },
  "plugins": ["guardvibe-rules-awesome"]
}

行内抑制

const key = process.env.API_KEY; // guardvibe-ignore VG001

// guardvibe-ignore-next-line VG002
app.get("/api/health", (req, res) => res.json({ ok: true }));

支持 //、# 和 `` 注释样式。

GuardVibe 会扫描自身

我们会在提交前钩子中对 GuardVibe 自身的代码库运行扫描。每次提交在进入代码仓库前都会经过扫描——GuardVibe 也会为你的项目启用同样的工作流。

工作原理

You write code with AI
    |
AI agent calls GuardVibe MCP tools
    |
GuardVibe scans locally (no cloud, no API)
    |
Returns findings with severity, OWASP mapping, and fix suggestions
    |
AI agent fixes issues before they reach production

性能

在真实的 AI 构建项目(837 个文件,Next.js + Supabase + Clerk)上测试:

  • 扫描时间:约 1.2 秒(837 个文件)
  • 误报率:接近零——具备上下文感知检测能力(React Native、Supabase 客户端/服务端、静态 innerHTML、Git 感知密钥)
  • 检测率:已知漏洞模式的检测率为 100%
  • 安全评分:生产项目中为 A(99/100)

故障排除

MCP 连接问题

如果你的 AI Agent 无法连接到 GuardVibe:

  1. 重启 IDE/Agent。 MCP 服务由宿主应用启动。运行 npx guardvibe init 后,重启 Claude Code、Cursor 或 Gemini CLI,使配置生效。
  2. 检查配置路径。 再次运行 npx guardvibe init claude,并确认输出中显示了正确的配置文件位置(Claude Code 使用项目根目录中的 .mcp.json,Cursor 使用 .cursor/mcp.json)。
  3. 重新运行 init 以升级。 升级 GuardVibe 时,请重新运行 npx guardvibe init claude——.mcp.json 会在初始化时固定到特定版本(例如 [email protected]),以便快速、确定性地启动。从 v3.1.2 起,重新运行也会自动更新过期的固定版本(Upgraded GuardVibe pin (3.1.27 → 3.1.28));从 v3.1.27 起,PostToolUse 钩子命令也会固定到相同版本(此前为 @latest),重新运行时也会升级过期的钩子。npx guardvibe hook install 和 npx guardvibe ci github 也适用相同规则(从 v3.1.3 起)——二者都会在安装/生成时固定版本,并可通过重新运行进行升级。
  4. 低于 3.1.1 的用户不会看到自动更新横幅。 GuardVibe 从 v3.1.1 起开始每天一次向 stderr 输出“有更新版本可用”的通知。如果你的安装版本早于该版本,则不会看到此通知——运行一次 npx -y guardvibe@latest init <host>,以固定到最新版本,并在后续会话中开始接收通知。
  5. 确认 Node.js 版本。 GuardVibe 要求 Node.js >= 18.0.0。运行 node --version 检查。
  6. 检查 npx 缓存。 如果你升级了 GuardVibe,但缓存中仍是旧版本,请运行 npx -y guardvibe@latest 以强制使用最新版本。
Node.js 版本要求

GuardVibe 要求 Node.js >= 18.0.0。较早版本会出现语法错误或缺少 API。建议使用 Node.js 22 LTS。

误报

如果某条规则在安全代码上触发:

  • 行内抑制: 在同一行添加 // guardvibe-ignore VG001,或在上一行添加 // guardvibe-ignore-next-line VG001。支持 //、# 和 `` 注释样式。
  • 配置排除: 在 .guardviberc 的 rules.disable 中添加规则 ID:
    { "rules": { "disable": ["VG030"] } }
    
  • 路径排除: 在 .guardviberc 的 scan.exclude 中添加目录:
    { "scan": { "exclude": ["fixtures/", "test-data/"] } }
    
预提交钩子问题
  • 钩子未运行: 确认钩子文件位于 .git/hooks/pre-commit,且具有可执行权限(chmod +x .git/hooks/pre-commit)。
  • 钩子阻止有效提交: 使用 git commit --no-verify 临时跳过钩子,然后调查发现的问题。
  • 移除钩子: 运行 npx guardvibe hook uninstall。

安全模型

GuardVibe 专为敏感和专有代码库设计:

  • 100% 本地执行。 所有扫描都在你的机器上进行。不会向任何服务发送代码、发现结果或元数据。
  • 无需账户,无需 API 密钥,无遥测。 无需注册,没有云端仪表板,也不会以任何方式跟踪使用情况。
  • 一次可选的网络请求。 scan_dependencies 和 check_dependencies 工具会查询 OSV API,检查已知 CVE。这是选择加入的——只有在明确使用这些工具时才会调用。其他工具均不会发起网络请求。
  • 适用于隔离网络环境。 所有代码分析规则都完全离线运行。只有依赖项漏洞检查需要网络访问。

配置(.guardviberc)

在项目根目录中创建 .guardviberc JSON 文件,自定义 GuardVibe 的行为。

完整示例
{
  "rules": {
    "disable": ["VG030", "VG045"],
    "severity": {
      "VG002": "medium",
      "VG010": "low"
    }
  },
  "scan": {
    "exclude": ["fixtures/", "coverage/", "dist/", "vendor/"],
    "maxFileSize": 1048576
  },
  "plugins": [
    "guardvibe-rules-awesome",
    "./my-local-rules"
  ],
  "compliance": {
    "frameworks": ["SOC2", "HIPAA"],
    "failOn": "high",
    "exceptions": [
      {
        "ruleId": "VG030",
        "reason": "Accepted risk per security review 2026-03",
        "approvedBy": "security-team",
        "expiresAt": "2026-12-31",
        "files": ["src/legacy/**"]
      }
    ],
    "requiredControls": ["SOC2:CC6.1"]
  },
  "scoring": {
    "densityModel": "exponential"
  }
}
配置字段
字段类型默认值说明
rules.disablestring[][]扫描时跳过的规则 ID
rules.severityRecord<string, string>{}覆盖特定规则的严重级别
scan.excludestring[][]要跳过的目录/文件的 Glob 模式
scan.maxFileSizenumber512000最大文件大小(字节;超过此大小的文件将被跳过)
pluginsstring[][]要作为插件加载的 npm 包名称或本地路径
compliance.frameworksstring[]--要映射的合规框架(SOC2、PCI-DSS、HIPAA、GDPR、ISO27001)
compliance.failOnstring"high"导致合规检查失败的最低严重级别
compliance.exceptionsPolicyException[][]已批准且带有到期日期的例外项
compliance.requiredControlsstring[]--无论是否有例外项都必须通过的控制项
scoring.densityModel"linear" | "exponential""linear"分数衰减曲线。linear 与 v3.0.50 之前的版本一致(密度达到 5 时骤降)。exponential 在密度超过 5 后仍保留分辨率,对大型代码库的衰减更平滑。两种模式均适用严重级别上限(1 个或以上严重问题 → 最高 C/60;1 个或以上高危问题 → 最高 B/75)。

安全

GuardVibe 高度重视供应链安全:

  • npm provenance — 每个发布版本都通过 Sigstore 进行加密签名,将软件包与此 GitHub 仓库及提交记录关联起来。使用 npm audit signatures 验证
  • 已启用 2FA — npm 账户受双重身份验证保护
  • 分支保护 — main 分支已禁用强制推送,并启用了管理员强制执行
  • 标签保护 — 版本标签(v*)无法删除或强制推送
  • 最小化 CI 权限 — GitHub Actions 工作流仅使用 permissions: contents: read
  • 运行时依赖精简且经过全面审计 — 只有三个直接依赖:MCP SDK、Zod 和 TypeScript 编译器(用于基于 AST 的数据流分析)。Zod 和 TypeScript 是零子依赖的纯 JS 软件包。MCP SDK 会为其可选的 HTTP 传输引入少量广泛使用且经过审计的传递依赖(例如 express、cors、ajv)——GuardVibe 本身通过 stdio 运行。整个依赖树中没有任何原生绑定,所有代码分析均在本地完全离线运行

如需报告漏洞,请发送电子邮件至 [email protected],或创建 GitHub issue。

许可证

Apache 2.0 — 开源、专利安全、适合企业使用。由 GokLab 构建。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。