目录导航
TruffleHog v3 简介
5 年前,我编写了原始的 TruffleHog 工具来检测提交给 Git 的 API 密钥、密码和秘密。这是一个很棒的研究工具,但在很多方面都不尽如人意。
从那以后,我们筹集了数百万美元来构建开源安全工具,从下一代 TruffleHog 开始,它速度更快,检测到 10 倍以上的秘密,并通过动态检查自动验证其支持的 100% 的秘密。

v3 有什么新功能?
TruffleHog v3 是对 Go 的完全重写,具有许多新的强大功能。
- 我们添加了 600 多个凭证检测器,支持针对其各自 API 进行主动验证。
- 我们还添加了对扫描 GitHub、GitLab、文件系统和 S3 的原生支持。
什么是凭证验证?
对于检测到的每一个潜在凭证,我们都煞费苦心地针对我们认为它所属的 API 实施了程序验证。验证消除了误报。例如,AWS 凭证检测器对 AWS API执行GetCallerIdentity
API 调用,以验证 AWS 凭证是否处于活动状态。
安装方法
几个选项:
1. go
git clone https://github.com/trufflesecurity/trufflehog.git
cd trufflehog; go install
2.从发布二进制文件下载安装
- trufflehog_3.0.5_darwin_amd64.tar.gz19.5 MB
- trufflehog_3.0.5_darwin_arm64.tar.gz19.3 MB
- trufflehog_3.0.5_linux_amd64.tar.gz19.7 MB
- trufflehog_3.0.5_linux_arm64.tar.gz18.3 MB
- trufflehog_3.0.5_windows_amd64.tar.gz20 MB
- trufflehog_3.0.5_windows_arm64.tar.gz18.6 MB
3. Docker
注意:Apple M1 硬件用户应该运行以
docker run --platform linux/arm64
获得更好的性能。
大多数用户
docker run -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --repo https://github.com/trufflesecurity/test_keys
Apple M1 用户
该linux/arm64
映像在 M1 上运行比 amd64 映像更好。更好的是运行本机 darwin 二进制可用,但没有容器映像。
docker run --platform linux/arm64 -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --repo https://github.com/trufflesecurity/test_keys
用法
TruffleHog 对您可能要扫描的每个数据源都有一个子命令:
- git
- github
- gitlab
- S3
- 文件系统
- 文件和标准输入(即将推出)
每个子命令都可以具有您可以通过-h
提供给子命令的标志看到的选项:
$ trufflehog git --help
用法: TruffleHog git [<flags>] <uri>
在git仓库中查找凭证:
Flags:
--help 显示上下文相关的帮助(也可以尝试——help-long和——help-man)。
--debug 在调试模式下运行
--version 打印trufflehog版本。
-j, --json JSON格式输出。
--json-legacy 使用3.0版本前的JSON格式,仅适用于git, gitlab和github源代码。
--concurrency=1 并行工作人员的数量。
--no-verification 不要验证结果。
--only-verified 只输出验证过的结果。
--print-avg-detector-time 输出在每个探测器上花费的平均时间。
--no-update 不要查看更新。
-i, --include-paths=INCLUDE-PATHS
扫描中包含的文件的路径,用换行符分隔的正则表达式。
-x, --exclude-paths=EXCLUDE-PATHS
用换行符分隔要在扫描中排除的文件的正则表达式的文件路径。
--since-commit=SINCE-COMMIT
开始从提交扫描。
--branch=BRANCH 分支扫描.
--max-depth=MAX-DEPTH 提交扫描的最大深度。
--allow 向后compat的无操作标志.
--entropy 向后compat的无操作标志。
--regex 向后compat的无操作标志。
Args:
<uri> Git repository URL. https:// or file:// schema expected.
例如,要扫描 git
存储库:
trufflehog git https://github.com/trufflesecurity/trufflehog.git
扫描组织
尝试使用以下命令扫描整个 GitHub 组织:
docker run -it -v "$PWD:/pwd" trufflesecurity/trufflehog:latest github --org=trufflesecurity
项目地址
GitHub:https://github.com/trufflesecurity/trufflehog
转载请注明出处及链接