【免费下载链接】keyFinder
Passive API key and secret discovery browser extension for Chrome and Firefox. 80+ detection patterns, zero config.
KeyFinder 是一款面向 Chrome 和 Firefox 的被动式 API 密钥泄漏检测浏览器扩展:安装后它在后台静默运行,扫描你访问的每一个页面,把误写在前端代码里的 API key、Token、凭据等敏感信息一网打尽。它内置 80+ 种密钥检测模式、零配置即用,无需任何命令行操作。无论你是安全工程师、开发者,还是关心隐私的普通用户,这篇文章都会带你从原理到上手,一次讲清楚如何用 KeyFinder 揪出网页中隐蔽的密钥泄漏。
一、密钥为什么会泄漏到网页里?
API key 和 Token 是现代 Web 应用的"家底",而它们暴露到前端的方式,远比想象中普遍:
- 内联脚本:开发者把 key 直接粘进
<script>标签里,随页面公开下发 - URL 参数:Token 出现在查询字符串中,被收藏、转发或写进日志
- HTML 注释:一段"先注释掉、回头再删"的密钥,从此再没人记得
- 浏览器存储:localStorage / sessionStorage 里存着长效凭证
- 接口响应:后端图省事,把内部凭据一并返回给前端
人工逐页排查一个站点已经很痛苦,跨站排查更是不现实。这正是 KeyFinder 要解决的痛点。
二、80+ 检测模式:从 AWS 到 OpenAI 一网打尽
KeyFinder 开箱自带80+ 种密钥检测模式,核心规则集中在 js/patterns.js,覆盖 9 大类:
| 类别 | 可识别的典型内容 |
|---|---|
| ☁️ 云平台 | AWS 访问密钥、Google Cloud API Key、Azure 存储密钥 |
| 📦 代码托管 | GitHub / GitLab / Bitbucket 各类 Token |
| 💳 支付 | Stripe、PayPal、Square 密钥 |
| 💬 通信 | Slack、Discord、Telegram、Twilio 令牌 |
| 🤖 AI / 大模型 | OpenAI、Anthropic、HuggingFace 密钥 |
| 🗄️ 数据库 | MongoDB、PostgreSQL、Redis 连接串 |
| 🧩 SaaS 工具 | Sentry、Datadog、Algolia、Mapbox 等 |
| 🏗️ 基础设施 | Vault、Terraform、Docker Hub、NPM Token |
| 🔐 私钥与通用 | RSA / OpenSSH 私钥、JWT、高熵随机串 |
除了已知格式匹配,KeyFinder 还会对候选字符串做香农熵(Shannon Entropy)分析,识别出"没有固定格式、但随机性异常高"的未知密钥——哪怕是一种没有公开文档的秘密格式,也有可能被它标记出来。
三、10 个扫描面:如何做到"一键揪出"
每打开一个页面,KeyFinder 都会在本地被动扫描10 个攻击面:
- 脚本标签的
srcURL(查询参数里的 Token) - 内联
<script>代码内容 - 同源外部 JavaScript 文件
<meta>标签<input type="hidden">隐藏表单字段data-*自定义属性- HTML 注释
- 链接与 href 中的查询参数
- localStorage / sessionStorage
- XHR 与 Fetch 网络响应
页面扫描逻辑在 js/content.js,网络响应拦截由 js/interceptor.js 完成,存储与消息处理则交给 js/background.js 这个 Service Worker。还有两个值得一提的细节:
- SPA 友好:通过 MutationObserver 对页面动态注入的 DOM 重新扫描,单页应用的密钥泄漏不会漏网
- 逐标签页红点提示:当前页签发现密钥时,扩展图标上会出现红点,不用打开面板就能一眼察觉
四、三步上手:从安装到第一份报告
方式一:官方商店安装(推荐)在 Chrome Web Store 或 Firefox Add-ons 商店中搜索 KeyFinder,点击安装即可。
方式二:从源码加载
git clone https://gitcode.com/gh_mirrors/ke/keyFinderChrome 用户在chrome://extensions开启"开发者模式",点击"加载已解压的扩展程序"并选择keyFinder目录(清单文件为 manifest.json);Firefox 用户通过about:debugging加载 manifest.firefox.json。
方式三:正常浏览即可安装后无需任何配置,照常打开网站,扫描自动进行。初次使用时仪表盘是一个清爽的空状态:
五、结果仪表盘:过滤、定位、导出一条龙
发现结果后,点击"View Findings"即可打开结果仪表盘(results.html,逻辑在 js/results.js):
仪表盘把繁琐的排查变成了一次"扫视":
- 按严重度统计:CRITICAL / HIGH / MEDIUM / LOW 四档瓦片,点击即筛选
- 严重度排序表格:一眼看清命中的服务商(AWS、Stripe、OpenAI…)、匹配模式和来源位置
- 一键复制:点击命中的密钥值即可复制,方便与密钥轮换流程衔接
- 键盘党友好:按
/聚焦搜索框,Esc清空 - JSON / CSV 导出:CSV 自带公式注入防护,可安全导入 Excel
而扩展弹窗(popup.html + js/popup.js)则负责实时统计与自定义关键词观察列表——你可以加入最多 50 个自己的搜索词(比如内部系统里的internal_api_token),让它与内置模式一起在每个页面被扫描:
六、隐私与安全:所有数据只留在本地
一个检测密钥泄漏的工具,自己"泄漏数据"就本末倒置了。KeyFinder 的设计思路非常克制:
- 零网络外传:不发起任何外部请求,扫描结果只保存在本地设备,详见 PRIVACY.md
- 最小权限:仅申请
activeTab与storage两项权限(见 manifest.json) - 防伪造通信:页面与扩展之间使用逐页 nonce 校验,恶意页面难以伪造检测结果注入
- 结果上限:最多保留 5000 条,FIFO 自动淘汰最旧记录,不会无限增长
- CSV 注入防护:导出时中和以
=、+、-、@开头的单元格,避免 Excel 公式注入
完整的威胁模型与已知限制说明,可查阅 SECURITY.md。
七、谁适合用它?
| 角色 | 典型用法 |
|---|---|
| 渗透测试 / 安全工程师 | 快速定位目标站点页面与接口响应中的泄漏密钥 |
| 前端 / 全栈开发 | 上线前自查,找出误提交到前端的 key 并轮换 |
| DevOps / SRE | 审计管理后台、第三方页面是否暴露内部 Token |
| 普通用户 | 安心浏览,红点提醒当前页面存在异常密钥 |
⚠️合规提示:KeyFinder 仅面向安全研究与授权测试使用,请只在自己的应用或获得站点授权时运行,并为自己的一切行为负责。
八、写在最后
KeyFinder 把"人工找密钥"变成了"被动、零配置的检测":80+ 种检测模式、10 个扫描面、熵值分析兜底、数据全程本地化——安装即生效。想更进一步了解它,可以从项目文档入手:
- 项目概览与完整特性:README.md
- 版本更新记录:CHANGELOG.md(当前 v2.2.1,基于 Manifest V3 完整重写)
- 隐私政策:PRIVACY.md
- 安全策略与威胁模型:SECURITY.md
下次打开网页时,不妨瞟一眼扩展图标——那个小小的红点,可能正在提醒你:这个页面有密钥泄漏。🔍
【免费下载链接】keyFinder
Passive API key and secret discovery browser extension for Chrome and Firefox. 80+ detection patterns, zero config.
相关推荐
Bracket 自托管赛程管理系统:三步生成完整对阵表
Bracket 自托管赛程管理系统:三步生成完整对阵表 办比赛时,用表格手动排对阵、调时间和场地是最耗神的事:每加一个选手,对阵表就要重排一遍。Bracket
后端前端KeyFinder 能检测到什么:从 AWS 到 OpenAI 的 80+ 密钥检测模式全解析
KeyFinder 能检测到什么:从 AWS 到 OpenAI 的 80+ 密钥检测模式全解析 KeyFinder 是一款面向 Chrome 和 Firefox
KeyFinder 是什么:被动式 API 密钥泄漏探测浏览器扩展完全指南
KeyFinder 是什么:被动式 API 密钥泄漏探测浏览器扩展完全指南 KeyFinder 是一款面向 Chrome 和 Firefox 的开源浏览器扩展,
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考