
新发布Jul 24, 2026
keyFinder v2.2.1
被动式 API 密钥和秘密发现浏览器扩展,适用于 Chrome 和 Firefox。80+ 检测模式,零配置。
KeyFinder
被动式 API 密钥与机密信息发现工具,适用于 Chrome 和 Firefox
KeyFinder 是一款适用于 Chrome 和 Firefox 的浏览器扩展,能被动扫描您访问的每个页面,检测泄露的 API 密钥、令牌、机密信息和凭据。它在后台静默运行,无需任何配置。
检测内容
KeyFinder 内置 80 多种检测模式,涵盖以下提供商的机密信息:
| 类别 | 提供商 |
|---|---|
| 云服务 | AWS(访问密钥、秘密密钥、会话令牌、Cognito)、Google Cloud(API 密钥、OAuth、服务账号)、Azure(存储密钥、SAS 令牌、连接字符串) |
| 源码控制 | GitHub(PAT、OAuth、细粒度令牌)、GitLab(PAT、Pipeline、Runner 令牌)、Bitbucket |
| 支付 | Stripe(秘密、公钥、受限、Webhook)、PayPal Braintree、Square |
| 通讯 | Slack(Bot、User、App 令牌、Webhooks)、Discord(Bot 令牌、Webhooks)、Telegram、Twilio、SendGrid |
| AI/机器学习 | OpenAI、Anthropic、HuggingFace、Replicate |
| 数据库 | MongoDB、PostgreSQL、MySQL、Redis 连接字符串 |
| SaaS | Shopify、Sentry、New Relic、PlanetScale、Linear、Notion、Datadog、Algolia、Mapbox |
| 基础设施 | HashiCorp Vault、Terraform、Docker Hub、NPM、Cloudflare、DigitalOcean、Doppler、Pulumi、Grafana |
| 加密 | RSA、EC、OpenSSH、PGP、DSA 私钥 |
| 通用 | JWT、Bearer 令牌、基本认证、API 密钥赋值、凭据 URL、高熵字符串 |
工作原理
KeyFinder 在每个页面上扫描 10 个不同的攻击面:
- 脚本
src地址 - 检查所有脚本源 URL 中的关键词和查询参数中的令牌 - 内联脚本 - 扫描
<script>标签内容中的秘密模式 - 外部脚本 - 获取并扫描同源 JavaScript 文件
- Meta 标签 - 检查
<meta>标签是否泄露 API 密钥和令牌 - 隐藏表单字段 - 检查
<input type="hidden">的值 - 数据属性 - 扫描
data-*属性中的敏感值 - HTML 注释 - 解析注释节点,寻找意外提交的机密信息
- URL 参数 - 分析链接和 href 中查询字符串的令牌
- Web 存储 - 扫描 localStorage 和 sessionStorage
- 网络响应 - 拦截 XHR 和 Fetch 响应中的泄露机密信息
此外,还应用 香农熵分析 来检测可能属于未记录秘密格式的随机高熵字符串。
功能特性
- 零依赖 - 纯原生 JavaScript,无 jQuery,无外部库
- Manifest V3 - 基于 Service Worker 架构,适用于现代 Chrome 和 Firefox
- 被动扫描 - 每次页面加载时自动运行
- SPA 感知 - 使用 MutationObserver 重新扫描动态注入的 DOM
- 每选项卡提示徽章 - 当选项卡检测到结果时,显示红点图标叠加层
- 自定义关键词 - 添加自己的搜索词进行扫描(经验证,最多 50 个)
- 运营控制台仪表板 - 扁平终端风格界面:按严重性排序的结果、点击过滤的严重性磁贴、最新结果滚动条、实时搜索(
/聚焦,Esc清除) - 一键分类 - 点击任何匹配项直接复制机密信息、相对时间戳(悬停显示绝对时间)、逐项删除结果
- 导出 - 将过滤后的结果下载为 JSON 或 CSV(含公式注入清理器)
- 加固的桥接 - 每个页面在 MAIN 与 ISOLATED 之间的 CustomEvent 通道上使用 nonce
- 有限存储 - 最多 5000 条结果,采用 FIFO 淘汰策略;跨选项卡序列化写入
- 低资源占用 - 极少的 CPU 和内存消耗
- 所有框架 - 扫描 iframe 和嵌入内容
安装
Chrome
Firefox
从源码安装
git clone https://github.com/momenbasel/keyFinder.git
Chrome:
- 打开
chrome://extensions - 启用 开发者模式
- 点击 加载已解压的扩展程序,选择
keyFinder文件夹
Firefox:
- 打开
about:debugging> "此 Firefox" - 点击 临时加载附加组件
- 选择
keyFinder文件夹中的manifest.firefox.json
使用方式
- 安装 扩展
- 正常浏览 网页 - KeyFinder 在后台扫描每个页面
- 点击 扩展图标 查看统计信息和管理关键词
- 点击 查看结果 打开完整结果仪表板
- 按严重性、提供商或类型过滤 - 或点击严重性磁贴立即过滤;按
/进行搜索 - 导出 结果为 JSON 或 CSV 用于报告
添加自定义关键词
点击扩展图标,在输入框中输入关键词,然后点击 添加。该关键词将用于扫描每个页面的脚本 URL、内联代码和键值赋值。
默认关键词:key, api_key, apikey, api-key, secret, token, access_token, auth, credential, password, client_id, client_secret
架构
keyFinder/
manifest.json # Chrome MV3 清单
manifest.firefox.json # Firefox MV3 清单
popup.html # 扩展弹出窗口 UI
results.html # 结果仪表板
js/
background.js # Service Worker - 存储和消息处理
patterns.js # 80+ 秘密检测正则模式
content.js # ISOLATED 世界页面扫描器 - DOM、脚本、网络
interceptor-loader.js # ISOLATED 加载器 - 设置 nonce、注入 MAIN 世界拦截器
interceptor.js # MAIN 世界 XHR/Fetch 钩子 + window 全局扫描
popup.js # 弹出窗口逻辑
results.js # 仪表板逻辑,含过滤和导出
css/
popup.css # 弹出窗口样式
results.css # 仪表板样式
icons/
icon16.png
icon48.png
icon128.png
scripts/
build.sh # 构建 Chrome 和 Firefox zip 包
安全
参见 SECURITY.md 了解威胁模型、披露政策和已知限制。发布说明见 CHANGELOG.md。
免责声明
本工具仅供 安全研究和授权测试 使用。请仅用于识别您自己应用程序或授权渗透测试中的泄露机密信息。您需自行承担行为责任。
专业服务
keyFinder 由 GreyCore Labs 构建和维护,这是一家在美国注册的进攻性安全公司。如果您希望为自己的产品提供同样的关注:
许可协议
MIT