TruffleHog V3 密钥查找工具 支持639种密钥类型检测

TruffleHog V3 密钥查找工具 支持639种密钥类型检测

TruffleHog v3 简介

5 年前,我编写了原始的 TruffleHog 工具来检测提交给 Git 的 API 密钥、密码和秘密。这是一个很棒的研究工具,但在很多方面都不尽如人意。

从那以后,我们筹集了数百万美元来构建开源安全工具,从下一代 TruffleHog 开始,它速度更快,检测到 10 倍以上的秘密,并通过动态检查自动验证其支持的 100% 的秘密。

TruffleHog V3 密钥查找工具 支持639种密钥类型检测

v3 有什么新功能?

TruffleHog v3 是对 Go 的完全重写,具有许多新的强大功能。

  • 我们添加了 600 多个凭证检测器,支持针对其各自 API 进行主动验证
  • 我们还添加了对扫描 GitHub、GitLab、文件系统和 S3 的原生支持

什么是凭证验证?

对于检测到的每一个潜在凭证,我们都煞费苦心地针对我们认为它所属的 API 实施了程序验证。验证消除了误报。例如,AWS 凭证检测器对 AWS API执行GetCallerIdentityAPI 调用,以验证 AWS 凭证是否处于活动状态。

安装方法

几个选项:

1. go

git clone https://github.com/trufflesecurity/trufflehog.git

cd trufflehog; go install

2.从发布二进制文件下载安装

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

转载请注明出处及链接

Leave a Reply

您的电子邮箱地址不会被公开。