实用工具
输入
结果
结果会显示在这里。把配置文件或报错堆栈粘贴进聊天、Issue 或 Gist 的那一刻,里面的任何凭据就不再受你控制了。这个工具用移植自 gitleaks(gitleaks/gitleaks,MIT)的 50 条检测规则扫描粘贴的文本,覆盖代码和配置里最常出现的凭据:OpenAI、Anthropic、AWS、GitHub、GitLab、Stripe、Slack、Google Cloud、Hugging Face、阿里云、JWT、私钥,以及看起来像密钥的通用赋值。每条结果都给出行号、列号和规则名,密钥本身只显示首尾各四个字符。
它是怎么工作的
- 和 gitleaks 一样,只有文本中出现某条规则的关键词时才运行该规则;匹配到的值还必须超过该规则的香农熵下限,这样 xxxxxxxx 之类的占位符会被过滤掉。
- gitleaks 的全局和单条规则白名单同样生效,所以 AWS 文档里的示例密钥、${VARIABLE} 变量引用、{{ template }} 模板占位符和常见停用词都不会被报告。
- 包含 gitleaks:allow 的行会被跳过;如果某个通用规则的结果已经被更具体的规则覆盖,就会去掉重复,每个密钥只报一次。
- 扫描在浏览器里完成;输出中永远不会出现完整的密钥,本站也不会保留你扫描过的内容。
你的数据去了哪里
哪也没去。本工具完全在你的浏览器里运行:你粘贴的文本由页面处理,不会传输到任何服务器,也不会写进任何日志。
本工具会接触密钥和凭证,因此任何一次运行都不会被保存,连你自己的历史里也不会有。
它要花多少
本工具完全免费,不需要登录,也不消耗积分。
常见问题
- 为什么文件里的一个密码没有被标出来?
- 和 gitleaks 一样,通用规则只匹配由字母、数字和 . = - 等少数符号组成的值,并且变量名里要含有 key、secret、token、password 之类的词。带 # 或 ! 的值、看起来像普通单词的密码都匹配不到。没有发现问题并不代表文本一定是干净的。
- 和直接运行 gitleaks 有什么区别?
- 它采用了 gitleaks 222 条默认规则中的 50 条和它的检测逻辑,但扫描的是一段粘贴的文本,而不是整个仓库及其历史。依赖文件路径的规则被去掉了,因为一段文本没有路径。扫描仓库请直接运行 gitleaks,或者开启 GitHub 的推送保护。
- 发现了一个有效的密钥,接下来怎么办?
- 先去服务商那里吊销或轮换它——一旦被分享或提交过,光从文件里删掉是不够的。然后检查服务商的日志里有没有你不认识的调用,再把密钥挪到环境变量或密钥管理服务里。
背后的开源项目
本工具是独立实现,并未打包第三方库。gitleaks/gitleaks(MIT)在代码层面做的是同一件事——如果你需要在自己的程序里实现它,从那里开始,而不是调用一个网页。
gitleaks/gitleaks也常被称作
- 密钥泄露检测
- api key 泄露检查
- gitleaks 在线
- 敏感信息扫描
- env 文件 密钥检查
- secret scanner