[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$f2a04g3ycgo14v":3},{"code":4,"message":5,"data":6,"timestamp":49},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":28,"summary_md":29,"topic":30,"github_topics":33,"license":45,"homepage":46,"updated_at":47,"history":48},"trufflesecurity\u002Ftrufflehog",5,"Find, verify, and analyze leaked credentials","Go",28687,2661,715,3584,[16,22],{"id":17,"title":18,"points":19,"comments":20,"posted_at":21},30910893,"TruffleHog v3 – Detect and automatically verify over 600 credential types",84,8,"2022-04-04",{"id":23,"title":24,"points":25,"comments":26,"posted_at":27},43552505,"TruffleHog: Find, verify, and analyze leaked credentials",1,0,"2025-04-02","扫描代码、历史与云存储中的泄露凭据，并验证这些凭据是否仍然有效。","## 解决什么问题\n\n泄露的密钥几乎无处不在：凌晨调试时的一次提交、贴在 PR 评论里的 token、藏在旧 commit 中以为删掉了的密码。基于正则的扫描器会把所有“看起来像密钥”的东西都报出来，团队很快被误报淹没，最后干脆不看告警。TruffleHog 的思路是往前走一步：对扫到的凭据尝试真实登录，告诉你它是不是还活着。\n\n## 有什么不同\n\n核心区别是把“验证”当作分类手段。它不是靠一套正则规则去猜，而是每种 detector 都知道如何确认某类凭据是否有效；对于少数高频泄露类型，还会进一步查清这个密钥属于谁、有哪些权限、能访问哪些资源。这样一条告警就从噪声变成了可处置事件——已失效的 AWS key 和带管理员权限的活跃 key，严重程度完全不同。和常见的 gitleaks、GitHub 内置 secret scanning 这类在提交\u002FPR 阶段拦截的工具相比，TruffleHog 更重、扫得更深，能回溯完整 git 历史。它还覆盖 git 之外的地方：聊天记录、wiki、对象存储、文件系统、issue 与 PR 评论，这些是多数提交级扫描器不看的位置。输出上也比较务实，支持 JSON 流式输出和 SARIF，可直接接入 GitHub code scanning，让问题跨次扫描跟踪为新增\u002F已修复。\n\n## 适合谁\n\n安全工程师和平台团队，用于应急响应、尽职调查，或定期对整个组织的仓库和 S3 桶做全面筛查；手头积压大量疑似泄露、需要判断哪些今天就必须处理时尤其合适。只想在每次 commit 时做快速阻断检查的团队应另找轻量方案——验证步骤需要联网，速度也慢，不适合当作亚秒级门禁。\n\n## 上手成本\n\n单个 Go 二进制，README 提供了 Homebrew、Docker、release 二进制和安装脚本等多种方式。验证过程需要访问外网，这意味着工具会拿扫到的凭据去请求第三方服务，上线前需要拿到相应授权。许可证为 AGPL-3.0，如果要嵌入商业产品或做成 SaaS 需要仔细评估。项目另有商业版 Enterprise，开源部分的投入由商业收入支撑；README 中“800+ 种分类、约 20 类凭据可做深度分析”等说法来自厂商，本文未做独立验证。制品有 cosign 签名，发布流程比较规范。\n\n## 点评\n\n这不是一个新项目，2016 年就存在，已经是密钥扫描领域的默认选项之一，约 28.7k star。热度仍在上升：Go 月度榜本月 +718、位列第 5，不过在统计窗口内没上过每日 trending 榜。一个十年老项目出现在月度增长榜前列，更像是重新被需要，而不是一阵炒作。需要坦诚的局限是范围——它找的是凭据，不是所有安全问题，而且验证优势依赖网络往返，有些环境根本不允许。真有密钥治理需求的团队值得采用；只有一个小仓库、只需要个提交钩子的话，就过重了。",{"slug":31,"name":32},"security","安全",[34,35,36,37,38,39,40,41,31,42,43,44],"credentials","devsecops","dynamic-analysis","precommit","scanning","secret","secret-management","secrets","security-tools","trufflehog","verification","AGPL-3.0","https:\u002F\u002Ftrufflesecurity.com","2026-10-24T20:06:35Z",[],1792887622]