{"date":"2026-10-12","repo":{"name":"github.com/trufflesecurity/trufflehog","commit":"3bcf19f51e91a9655d84ddb623728c7620be482a"},"scorecard":{"version":"v5.6.0","commit":"61e84743356275f6ffca23b1b2f2cb945e19eb96"},"score":7.9,"checks":[{"name":"Maintained","score":10,"reason":"30 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10","details":null,"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#maintained","short":"Determines if the project is \"actively maintained\"."}},{"name":"Code-Review","score":10,"reason":"all changesets reviewed","details":null,"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#code-review","short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged."}},{"name":"Security-Policy","score":10,"reason":"security policy file detected","details":["Info: security policy file detected: SECURITY.md:1","Info: Found linked content: SECURITY.md:1","Info: Found disclosure, vulnerability, and/or timelines in security policy: SECURITY.md:1","Info: Found text in security policy: SECURITY.md:1"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#security-policy","short":"Determines if the project has published a security policy."}},{"name":"Dangerous-Workflow","score":10,"reason":"no dangerous workflow patterns detected","details":null,"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#dangerous-workflow","short":"Determines if the project's GitHub Action workflows avoid dangerous patterns."}},{"name":"Token-Permissions","score":0,"reason":"detected GitHub workflow tokens with excessive permissions","details":["Info: jobLevel 'actions' permission set to 'read': .github/workflows/codeql-analysis.yml:28","Info: jobLevel 'contents' permission set to 'read': .github/workflows/codeql-analysis.yml:29","Info: jobLevel 'contents' permission set to 'read': .github/workflows/detector-corpora-test.yml:24","Info: jobLevel 'contents' permission set to 'read': .github/workflows/detector-tests.yml:14","Info: jobLevel 'actions' permission set to 'read': .github/workflows/detector-tests.yml:13","Info: jobLevel 'actions' permission set to 'read': .github/workflows/test.yml:16","Info: jobLevel 'contents' permission set to 'read': .github/workflows/test.yml:17","Info: jobLevel 'actions' permission set to 'read': .github/workflows/test.yml:59","Info: jobLevel 'contents' permission set to 'read': .github/workflows/test.yml:60","Warn: no topLevel permission defined: .github/workflows/codeql-analysis.yml:1","Warn: no topLevel permission defined: .github/workflows/detector-corpora-test.yml:1","Warn: no topLevel permission defined: .github/workflows/detector-tests.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/lint.yml:10","Info: topLevel 'pull-requests' permission set to 'read': .github/workflows/lint.yml:11","Warn: no topLevel permission defined: .github/workflows/performance.yml:1","Info: found token with 'none' permissions: .github/workflows/release-bot.yml:1","Warn: topLevel 'contents' permission set to 'write': .github/workflows/release.yml:9","Warn: topLevel 'packages' permission set to 'write': .github/workflows/release.yml:10","Warn: no topLevel permission defined: .github/workflows/secrets.yml:1","Info: topLevel 'contents' permission set to 'read': .github/workflows/smoke.yml:7","Warn: no topLevel permission defined: .github/workflows/test.yml:1","Info: no jobLevel write permissions found"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#token-permissions","short":"Determines if the project's workflows follow the principle of least privilege."}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#cii-best-practices","short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge."}},{"name":"Binary-Artifacts","score":9,"reason":"binaries present in source code","details":["Warn: binary detected: pkg/decoders/utf16_test.dll:1"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#binary-artifacts","short":"Determines if the project has generated executable (binary) artifacts in the source repository."}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: GNU Affero General Public License v3.0: LICENSE:0"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#license","short":"Determines if the project has defined a license."}},{"name":"Fuzzing","score":10,"reason":"project is fuzzed","details":["Info: GoBuiltInFuzzer integration found: pkg/decoders/escaped_unicode_equivalence_test.go:167","Info: GoBuiltInFuzzer integration found: pkg/engine/ahocorasick/ahocorasickcore_test.go:622"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#fuzzing","short":"Determines if the project uses fuzzing."}},{"name":"Pinned-Dependencies","score":7,"reason":"dependency not pinned by hash detected -- score normalized to 7","details":["Warn: containerImage not pinned by hash: Dockerfile:1: pin your Docker image by updating golang:bullseye to golang:bullseye@sha256:2cdc80dc25edcb96ada1654f73092f2928045d037581fa4aa7c40d18af7dd85a","Warn: containerImage not pinned by hash: Dockerfile:11: pin your Docker image by updating alpine:3.24 to alpine:3.24@sha256:294b683cb724975bec92580e1e685676bd4b50bda910ddb8c51d4cabeaec77e6","Warn: containerImage not pinned by hash: Dockerfile.goreleaser:1: pin your Docker image by updating alpine:3.24 to alpine:3.24@sha256:294b683cb724975bec92580e1e685676bd4b50bda910ddb8c51d4cabeaec77e6","Warn: containerImage not pinned by hash: hack/Dockerfile.protos:3","Warn: pipCommand not pinned by hash: hack/Dockerfile.protos:21","Warn: goCommand not pinned by hash: hack/Dockerfile.protos:29","Warn: downloadThenRun not pinned by hash: scripts/lint.sh:28","Warn: goCommand not pinned by hash: .github/workflows/test.yml:33","Info:  32 out of  32 GitHub-owned GitHubAction dependencies pinned","Info:  18 out of  18 third-party GitHubAction dependencies pinned","Info:   0 out of   1 downloadThenRun dependencies pinned","Info:   0 out of   4 containerImage dependencies pinned","Info:   1 out of   3 goCommand dependencies pinned","Info:   0 out of   1 pipCommand dependencies pinned"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#pinned-dependencies","short":"Determines if the project has declared and pinned the dependencies of its build process."}},{"name":"Branch-Protection","score":5,"reason":"branch protection is not maximal on development and all release branches","details":["Info: 'allow deletion' disabled on branch 'main'","Info: 'force pushes' disabled on branch 'main'","Warn: 'branch protection settings apply to administrators' is disabled on branch 'main'","Warn: 'stale review dismissal' is disabled on branch 'main'","Warn: required approving review count is 1 on branch 'main'","Warn: codeowners review is not required on branch 'main'","Warn: 'last push approval' is disabled on branch 'main'","Warn: no status checks found to merge onto branch 'main'","Info: PRs are required in order to make changes on branch 'main'"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#branch-protection","short":"Determines if the default and release branches are protected with GitHub's branch protection settings."}},{"name":"Signed-Releases","score":8,"reason":"5 out of the last 5 releases have a total of 5 signed artifacts.","details":["Info: signed release artifact: trufflehog_3.99.2_checksums.txt.sig: https://github.com/trufflesecurity/trufflehog/releases/tag/v3.99.2","Info: signed release artifact: trufflehog_3.99.1_checksums.txt.sig: https://github.com/trufflesecurity/trufflehog/releases/tag/v3.99.1","Info: signed release artifact: trufflehog_3.99.0_checksums.txt.sig: https://github.com/trufflesecurity/trufflehog/releases/tag/v3.99.0","Info: signed release artifact: trufflehog_3.98.1_checksums.txt.sig: https://github.com/trufflesecurity/trufflehog/releases/tag/v3.98.1","Info: signed release artifact: trufflehog_3.98.0_checksums.txt.sig: https://github.com/trufflesecurity/trufflehog/releases/tag/v3.98.0","Warn: release artifact v3.99.2 does not have provenance: https://api.github.com/repos/trufflesecurity/trufflehog/releases/406886545","Warn: release artifact v3.99.1 does not have provenance: https://api.github.com/repos/trufflesecurity/trufflehog/releases/406696287","Warn: release artifact v3.99.0 does not have provenance: https://api.github.com/repos/trufflesecurity/trufflehog/releases/404992303","Warn: release artifact v3.98.1 does not have provenance: https://api.github.com/repos/trufflesecurity/trufflehog/releases/404654652","Warn: release artifact v3.98.0 does not have provenance: https://api.github.com/repos/trufflesecurity/trufflehog/releases/403970973"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#signed-releases","short":"Determines if the project cryptographically signs release artifacts."}},{"name":"Packaging","score":10,"reason":"packaging workflow detected","details":["Info: Project packages its releases by way of GitHub Actions.: .github/workflows/release.yml:14"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#packaging","short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall."}},{"name":"SAST","score":10,"reason":"SAST tool is run on all commits","details":["Info: SAST configuration detected: CodeQL","Info: all commits (30) are checked with a SAST tool"],"documentation":{"url":"https://github.com/ossf/scorecard/blob/61e84743356275f6ffca23b1b2f2cb945e19eb96/docs/checks.md#sast","short":"Determines if the project uses static code analysis."}}]}
