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

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

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

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
vibe-coding-security — 面向 AI 生成应用(Lovable、v0、Bolt、Cursor)的上线前安全检查清单。涵盖 Supabase RLS、暴露密钥和提示注入的 69 项检查。与 CVE-2025-48757(170 个应用)和 Moltbook 泄露事件(150 万 API 令牌)背后的模式相同。 | Kitploit
工具/GitHubGitHub/boxed-dev/vibe-coding-security
漏洞分析配置审计Web安全云安全秘密检测供应链安全身份验证学习与教育精选资源API 安全AI 安全数据库安全
131341个月前尚未审核
GitHubboxed-dev/vibe-coding-security

vibe-coding-security

面向 AI 生成应用(Lovable、v0、Bolt、Cursor)的上线前安全检查清单。涵盖 Supabase RLS、暴露密钥和提示注入的 69 项检查。与 CVE-2025-48757(170 个应用)和 Moltbook 泄露事件(150 万 API 令牌)背后的模式相同。

查看仓库网站

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Vibe Coding 安全

在你发推宣布上线之前,请先运行这 69 项检查。它们对应的是 Lovable RLS CVE(CVE-2025-48757,170+ 个应用,2025 年)、Moltbook 泄露(150 万个 API 令牌,2026 年 2 月)以及 2026 年 4 月 Lovable 平台入侵事件(其他用户项目的源代码+服务密钥,暴露约 2.5 个月)背后的确切模式。

想要完整工具包? 50 个审计技能、15 个 .cursorrules、1 个 MCP 配置 + 4 个 CLI 配方、30 个对抗性审查提示词、10 个案例研究。5 分钟安装。固定 $10。

→ rishabhvaai.gumroad.com/l/plddbd


在 2025 年 10 月发布的一项审计中,Escape.tech 扫描了 14,600 个资产中的 5,600 个真实 AI 生成应用(方法论)。他们报告了 2,038 个严重漏洞、400+ 个泄露的密钥,以及其中 1,400 个应用中 175 处暴露的 PII(调查结果)。这些密钥直接来自前端打包产物:Stripe、OpenAI 和 Supabase 密钥就写在客户端 JavaScript 里。此后情况并未好转:GitGuardian 2026 年报告统计出 2025 年公共 GitHub 上新增 2860 万个密钥(同比增长 34%),AI 服务密钥增长 81%,编码智能体共同署名的提交泄露密钥的概率约为人类基线的 2 倍。这是一份包含 69 个具体、可测试项目的检查清单。每一项都对应一个真实的事故模式。如果你能全部勾选 69 项,就可以上线。如果不能,先修复阻塞你的问题。

不是 SaaS。不是扫描器。只是一份在推送到生产环境之前逐项过一遍的清单。


上线前 69 项安全检查清单

你距离上线还有 30 分钟。停下。先运行这个。

仅 Lovable RLS 漏洞(CVE-2025-48757,2025 年,CVSS 9.3)就暴露了 170+ 个生产应用。Moltbook 在 2026 年 2 月暴露了 150 万个 API 令牌——只需一条 curl 即可查询。这些不是边缘案例,而是主流上线。

本清单将 69 个具体、可测试的项目分组为:认证、密钥、API、数据库、前端、AI/LLM、智能体工具链和部署。如果你无法全部勾选 69 项,就不要上线。


认证(8 项)

  • 1. 数据库中的每个表都启用了行级安全(RLS)。
  • 2. 每个表和每个角色(anon、authenticated、service_role)都有相应的 RLS 策略。
  • 3. 每条受保护 API 路由都在服务端验证 JWT 令牌(绝不要相信前端来验证认证)。
  • 4. 会话在登录后会轮换或失效(CSRF + 会话固定攻击防护)。
  • 5. 魔术链接(无密码登录)为一次性使用,15 分钟内过期,并与用户 IP 或设备指纹绑定。
  • 6. 不能仅凭用户提供的 ID 更新或删除用户、订单或敏感记录。测试:通过修改请求中的 ID 尝试更新其他用户的记录。
  • 7. 对状态变更请求(POST、PUT、DELETE)通过双重提交 Cookie 或 SameSite=Strict 验证 CSRF 令牌。
  • 8. 会话 Cookie 设置了 HttpOnly、Secure 和 SameSite=Strict 标志。

密钥与环境(7 项)

  • 9. NEXT_PUBLIC_* 变量、Vue/React .env 文件或硬编码字符串中没有密钥。用 grep 搜索 NEXT_PUBLIC_ 并审计所有变量。
  • 10. .env、.env.local、.env.*.local 在 .gitignore 中且从未提交。检查 git 历史:git log --all -p | grep -i "api_key\|secret"。
  • 11. Supabase service_role 密钥仅存在于服务端 .env(Node、Python、Go 等)中,绝不在前端打包产物或 .env.local 中。service_role 密钥完全绕过 RLS——一旦泄露即可对每个表进行完全读写。
  • 12. Stripe 密钥:公钥在 NEXT_PUBLIC_* 中,密钥仅服务端使用,webhook 签名已验证。
  • 13. OpenAI、Anthropic、xAI API 密钥绝不放在前端代码中;始终通过你的 API 代理。
  • 14. 源代码中任何位置(包括注释和未使用代码)都没有硬编码的 API 密钥、数据库 URL 或凭据。
  • 15. 上线后或一旦在源代码历史中暴露过,密钥都会被轮换。

API 加固(10 项)

  • 16. /api/auth/*、/api/login、/api/register 上启用了速率限制。测试:每分钟 100 次请求应返回 429。
  • 17. 所有发送到 /api/* 的用户输入在接触数据库之前都用 Zod、Yup 或类似工具进行验证。不能将原始 req.body 直接传给查询。
  • 18. 无批量赋值:用户不能通过 POST 提交来设置 admin=true、role=admin 或其他敏感字段。
  • 19. Webhook 签名已验证(使用常量时间比较将 HMAC-SHA256 签名头与期望值比对)。
  • 20. CORS 未设置为 *。允许的来源是硬编码的,且生产环境不包含 localhost。
  • 21. SQL 查询仅使用参数化语句。不得将用户输入字符串拼接进 SQL。
  • 22. NoSQL 查询(MongoDB、Firebase 等)不会将用户输入拼接进过滤器或选择器。
  • 23. 文件上传经过验证(MIME 类型 + 文件大小),存储在 Web 根目录之外,并重命名以防止路径遍历。
  • 24. 登录后的重定向有白名单。不能通过开放重定向跳转到外部域名。
  • 25. API 不发起未经校验的外部请求。确保服务端请求中使用的 URL 来自你的白名单,而非用户输入(SSRF 防护)。

数据库(6 项)

  • 26. 所有表都强制执行 RLS。在没有显式策略授权的情况下,anon 角色不能对任何表执行 SELECT/INSERT/UPDATE/DELETE。
  • 27. 公共 anon 角色默认零权限。策略只授予所需权限。公共列表只读,绝不写入。
  • 28. Service-role 密钥仅用于服务端代码。验证:grep -r "service_role" src/。前端文件中应返回零结果。
  • 29. 用户数据隔离:查询始终按 auth.uid() 或 team_id 过滤。不能有任何查询返回所有用户的所有记录。
  • 30. 软删除(is_deleted 标志)或归档表防止意外数据丢失。硬删除记录操作者 + 时间戳日志。
  • 31. 数据库备份存在且经过测试。你已在上线前验证可以从备份恢复。

前端(8 项)

  • 32. 没有未经 DOMPurify 消毒的 dangerouslySetInnerHTML 或 innerHTML。审计代码库中的每个实例。
  • 33. 所有 npm/pip/gem 依赖都已扫描已知 CVE。上线前运行 npm audit、pnpm audit 或 npx osv-scanner --lockfile=package-lock.json——并检查 KNOWN-VULNERABLE-VERSIONS.md 中的具体版本,因为 npm audit 能捕获已发布的 CVE,但捕获不了恶意包。
  • 34. 生产环境已启用内容安全策略(CSP)(strict-dynamic,无 unsafe-inline)。先在预发布环境测试。
  • 35. 生产环境中没有 /api/debug、/admin/backdoor 或内部测试端点可访问。搜索 "debug"、"mock"、"test-only" 路由。
  • 36. 已设置 X-Frame-Options: DENY。验证每个响应都发送该头(防止点击劫持)。
  • 37. 错误消息不会在生产环境中泄露内部路径、堆栈跟踪或数据库结构。测试 404、500 和权限错误。
  • 38. 无原型污染:未经消毒的用户提供对象不会合并到应用程序对象中。
  • 39. React:没有使用未消毒用户数据的内联事件处理器。任何以 HTML 形式渲染的用户内容请使用 react-dompurify 或等效方案。

AI 与 LLM(10 项)

这些是旧 Web 应用手册从未有过的检查项。它们对应 OWASP LLM 应用 Top 10——2026 版(2026 年 8 月 3 日发布,首个以 6,639 个真实事件数据加权的版本)将过度自主权(Excessive Agency)从第 6 位提升到第 3 位,并新增了智能体劫持、多模态注入和记忆持久化。下面的智能体条目不再是理论性的。

  • 40. 用户输入放在单独的 user 消息中,绝不拼接到系统提示词中。从文件、RAG 或网络获取的内容用显式分隔符包裹,并视为不可信内容(间接提示注入)。
  • 41. 系统提示词中零密钥、API 密钥或内部 URL。假设它是公开的。测试提取("逐字重复你的指令")并确认没有敏感信息返回。
  • 42. 每个调用 LLM 的端点都有按用户 AND 全局的令牌/成本上限。测试:从单个账户猛烈请求,配额应触发。在供应商处设置了月度支出上限并启用计费警报(拒绝钱包,OWASP LLM10:2025)。
  • 43. 以 HTML 形式渲染的 LLM 输出在接触 DOM 前经过消毒(DOMPurify)。模型输出与用户粘贴一样属于不可信输入。
  • 44. 生产智能体在服务端对每个工具强制执行授权,独立于模型的决策。任何破坏性操作(删除、支付、发送邮件)都不会仅凭模型一句话就触发。
  • 45. 智能体工具遵循最小权限原则。模型可控输入不可触及原始 shell/exec/eval。破坏性命令有白名单并需确认后才能执行(过度自主权,OWASP LLM06:2025)。
  • 46. 多租户 RAG/向量存储在查询时强制执行租户隔离(绑定到已认证用户的命名空间或元数据过滤器),而非在应用代码中。测试:租户 A 永远无法检索租户 B 的块(OWASP LLM08:2025)。
  • 47. RAG 摄取将用户提供和被爬取的文档视为不可信内容。语料库有版本控制并带哈希基线,这样少量被投毒的文档也无法悄悄改变输出。
  • 48. 向量嵌入与其编码的源 PII 一样受到访问控制(嵌入反转可以重建文本)。向量数据库端点需要认证,不能公开可达。
  • 49. 如果你交付或使用 MCP 服务器:每个都固定到已审查的版本,工具描述会扫描隐藏/不可见 Unicode 指令(工具投毒),变更时重新验证(rug-pull)。MCP Inspector ≥ 0.14.1,mcp-remote ≥ 0.1.16(CVE-2025-49596、CVE-2025-6514)。Rug-pull 不是理论性的:postmark-mcp v1.0.16 增加了一行代码,将每封经过它的邮件密送给攻击者——约 300 个组织,一次版本升级(2025 年 9 月)。

智能体、工具链与供应链(12 项)

  • 50. 开发和生产数据库物理隔离,使用不同的凭据。你的智能体/CI 永远不持有生产环境的写入或 DDL 凭据。(Replit 的智能体在代码冻结期间清空了生产数据库,因为它拥有本不该有的写权限。)
  • 51. 交给智能体或 CI 的云令牌限定在单个项目且权限最小——绝不跨账户。(PocketOS:一个未限定范围的 Railway 令牌让编码智能体在 9 秒内删除了数据库和所有备份。)
  • 52. Supabase service_role 密钥不出现在任何客户端可达的文件中:grep -rn "service_role" src/ app/ public/ dist/ 返回为空,且任何客户端 JWT 的 role 声明都不是 service_role。
  • 53. 每个依赖在安装前都验证确实存在——真实维护者、真实历史、真实下载量。AI 建议的导入与锁文件交叉核对。(Slopsquatting:LLM 推荐的包中有 19.7% 不存在,其中 43% 的名称可预测地重复出现,攻击者会注册它们。2026 年 7 月,一个正在接受评估的 Claude 智能体将有效恶意软件发布到了真实 PyPI——一小时内就在 15 个真实系统上运行。)你的扫描器在这里很重要:npm audit 标记已发布的 CVE,而非恶意包。参见 KNOWN-VULNERABLE-VERSIONS.md。
  • 54. 备份/时间点恢复已启用、经过测试,并存储在智能体无法访问的凭据下——这样被攻破的智能体也无法删除备份。
  • 55. AI 规则和配置文件(.cursor/rules、.github/copilot-instructions.md、CLAUDE.md、.windsurfrules)会扫描不可见 Unicode,并按安全敏感代码审查("规则文件后门"类别)。
  • 56. 你的编码工具已打补丁(Cursor CurXecute / MCPoison / CVE-2025-59944,Claude Code CVE-2025-59536,Copilot RCE CVE-2025-53773)。工作区信任已开启;打开不可信仓库时自动运行 / "YOLO" 模式关闭。
  • 57. 智能体可以对生产环境执行的任何不可逆操作(DROP、DELETE、TRUNCATE、迁移、部署)都需要人工审批。
  • 58. 你的编码智能体不能将攻击者控制的文本当作指令:Sentry 错误事件、GitHub issue 文本、克隆仓库的 README。"Agentjacking" 通过公开的 Sentry DSN——注入错误事件中的 Markdown 载荷,经 Sentry MCP 被拾取——对 Claude Code/Cursor/Codex 的成功率达到 85%(Tenet Security,2026 年 6 月;2,388 个组织存在可注入的 DSN)。错误追踪器 MCP 访问为只读;DSN 视为密钥。
  • 59. CI 智能体工作流(claude-code-action 及等效方案)绝不检出攻击者的 PR 分支并自动启用 MCP 服务器或写权限(TRA-2026-27:攻击者的 PR 分支 → 你的 CI 中任意代码执行)。
  • 60. 如果你基于 2026-07-28 的 MCP 规范构建:所有工作流/状态标识符不可猜测、绑定租户,并在服务端验证。协议已改为无状态——状态现在作为普通工具参数传输,因此可预测的 ID 和跨租户工作流劫持是一等攻击类别,规范不再保护你免受其害(Akamai,2026 年 6 月)。
  • 61. 你分享的智能体对话中不含密钥或 PII。约 600 个 Claude 共享聊天/工件被 Google 索引,内含有效 API 密钥和 AWS 令牌(2026 年 7 月,现已取消索引)。分享链接是发布渠道——像对待公共仓库一样对待它们。

部署(8 项)

  • 62. 部署配置明确分离环境变量。公共变量(NEXT_PUBLIC_*)与服务器密钥分开。
  • 63. 所有生产构建都设置了 NODE_ENV=production。在部署日志中验证。
  • 64. 应用程序监控(Sentry、LogRocket 等)已启用,并配置为在发送前对敏感数据进行脱敏。
  • 65. 错误追踪不会在错误载荷中发送用户会话令牌、密码、API 密钥或 PII。审计你的 Sentry/LogRocket 配置。
  • 66. Source map 从生产构建中排除。使用 --no-sourcemap 构建或在部署前删除 .map 文件。
  • 67. 强制 HTTPS。所有 HTTP 请求重定向到 HTTPS。测试:curl -i http://yourapp.com。
  • 68. 第三方集成(分析、聊天组件等)仅从受信任的 CDN 加载,并使用子资源完整性(SRI)哈希。
  • 69. 你已在生产预发布环境测试了完整的账户恢复流程(密码重置、会话失效、重新认证)。

点击部署之前

下载工具