Goatnuts1/leaktrap
GitHub: Goatnuts1/leaktrap
LeakTrap 是一款零依赖的本地安全扫描 CLI,用通俗语言帮助开发者快速排查 AI 生成应用中暴露的密钥、数据库权限漏洞和缺失的身份验证等常见数据泄露风险。
Stars: 0 | Forks: 0
# LeakTrap 🛡️
[](https://www.npmjs.com/package/leaktrap)
[](LICENSE)
[](https://nodejs.org)

**用通俗易懂的语言扫描由 AI 构建的应用,找出 vibe-coded 应用中存在的数据泄露问题——例如暴露的密钥、损坏的行级安全性、缺失的身份验证等。**
你在 Lovable、Bolt、v0、Replit 或 Cursor 上构建了很棒的东西。在将其发送给真实用户之前,请运行以下命令:
```
npx leaktrap
```
无需安装,无需注册,无需账户。它会扫描你的项目,并为你提供一个**生产就绪度评分**,以及非安全专业人员也能轻松看懂的通俗修复建议。
## 为什么会有这个项目
AI 代码构建器非常强大——但同时也会大规模地发布不安全的默认设置。2026 年的一项独立测试发现,**约 91% 的 vibe-coded 应用至少存在一个安全漏洞**,而且真实发生的安全事件已经证明,浏览器代码中会暴露有效的 Stripe/OpenAI 密钥,仅仅因为缺少一个 Supabase RLS 开关,整个用户数据库就会泄露(CVE-2025-48757 影响了约 170 个应用;其中一次泄露暴露了约 150 万个 API 密钥)。
能够捕捉这些漏洞的工具(Snyk、Veracode)是为安全工程师设计和定价的。而 LeakTrap 是为那些只想知道一件事的人打造的:**我的应用可以安全发布了吗?如果不能,我到底该修复什么?**
## 检查内容
| # | 检查项目 | 为什么重要 |
|---|-------|----------------|
| 1 | **浏览器代码中暴露的 API 密钥** | 前端代码中的 `sk_live_…` = 任何人都可以盗用你的资金 |
| 2 | **Supabase 行级安全漏洞** | 没有 RLS = 你的整个数据库都会通过 anon key 暴露在公网 |
| 3 | **未经身份验证的 endpoint** | 没有身份验证的写入路由 = 任何人都可以直接调用它 |
| 4 | **路径遍历** | 文件路径中的 `../../.env` = 攻击者可以读取你的机密信息 |
| 5 | **提交到代码库的机密信息** | 包含在 `.env` 或源代码中并被提交到 git 的密钥 |
| 6 | **开放的 CORS** | `Origin: *` 加上凭证 = 其他网站可以冒充你的用户进行操作 |
它是**专门针对 vibe-code 的故障模式**进行调整的——高信噪比,低误报率。公开/可发布的密钥(如 `pk_live_`、`NEXT_PUBLIC_`、anon keys)已被加入白名单,因此你不会收到误报警报。
## 用法
```
npx leaktrap # scan the current folder
npx leaktrap ./my-app # scan a specific path
npx leaktrap --json # machine-readable output
npx leaktrap --fail-on high # exit 1 for CI if any high+ issue (default: critical)
```
将其添加到 CI 中,让泄露问题不再被发布到生产环境:
```
# .github/workflows/leaktrap.yml
- run: npx leaktrap --fail-on high
```
## 输出示例
```
🔴 Score: 0/100 — Do not ship
2 critical 6 high 0 medium 0 low
1. [CRITICAL] Stripe live secret key found in browser-shipped code
src/config.js:1
Anyone who opens your site's source can copy it and run up charges.
Fix: Move this to a server route, read it from an env var, and ROTATE
the key immediately — assume it is already compromised.
```
## LeakTrap 是什么(以及不是什么)
- ✅ 针对最常见的 AI 代码泄露,提供快速、诚实的第一道防线检查。
- ✅ 免费且开源 (MIT)。在本地运行。你的代码永远不会离开你的机器。
- ❌ 它不是完整的渗透测试,也无法替代安全工程师来处理高风险的应用。
检查结果是**经过优先级排序的信号**,而不是最终证明。修复严重问题,重新运行,你就能更有信心地发布应用。
## 想要自动化吗?
免费的 CLI 只能在你记得运行它时捕捉问题。**[leaktrap.dev](https://leaktrap.dev)** 额外提供了以下功能:
- 🔧 **一键修复 PR** —— 不仅仅是告诉你“问题在这里”,还会直接提供修复补丁
- 🔁 **每次 push 时的监控** —— 在引入新泄露的瞬间立即捕捉到它
- 📋 **可共享的报告** —— 方便代理机构向客户交付应用
[加入等候名单 →](https://leaktrap.dev)
## 贡献
非常欢迎提供新的检查想法和误报报告——请提供一个最小示例并开启一个 issue。检查逻辑位于 [`src/checks/`](src/checks/) 中,代码刻意写得非常易于阅读。
MIT © LeakTrap
标签:GNU通用公共许可证, LNA, MITM代理, Node.js, SOC Prime, StruQ, 代码安全审计, 动态分析, 安全合规, 开发工具, 文档结构分析, 暗色界面, 网络代理, 自定义脚本, 错误基检测, 静态代码分析