cfn-lint

Lint AWS CloudFormation templates with security rules

aws-cloudformation/cfn-lint · Infrastructure as Code Security · scanned v1.59.0 (released 2026-10-28) · commit cf5360c6ce4c · last scan 2026-11-02

7
declared dependencies
0 / 0
critical / high advisories
0
advisories with a fixed version
6.0
OpenSSF Scorecard (of 10); Scorecard CLI run by this workflow
no Linux binary
release verification

Changes since last week

2 resolved.

Resolved advisories (2)

Known vulnerabilities

No known advisories matched the declared dependencies.

Not counted: 2 matches (action reference to a moving tag or branch). Neither identifies a version installed from a registry.

Second opinion: OSV-Scanner

OSV-Scanner found 0 advisories in the same files; 0 of Grype's matches are confirmed by it (marked ✓ above). 0 advisories were reported only by OSV-Scanner.

Release integrity

Verdict: no Linux binary.

Verified means a signature, provenance, or attestation was checked against an identity in aws-cloudformation/cfn-lint's own GitHub Actions workflows.

Repository security (OpenSSF Scorecard)

Score 6.0/10, assessed 2026-11-02 (Scorecard CLI run by this workflow). Scorecard viewer

All checks
CheckScoreReason
CII-Best-Practices0no effort to earn an OpenSSF best practices badge detected
Fuzzing0project is not fuzzed
Pinned-Dependencies0dependency not pinned by hash detected -- score normalized to 0
SAST0SAST tool is not run on all commits -- score normalized to 0
Signed-Releases0Project has not signed or included provenance with any releases.
Token-Permissions0detected GitHub workflow tokens with excessive permissions
Branch-Protection3branch protection is not maximal on development and all release branches
Code-Review5Found 17/29 approved changesets -- score normalized to 5
CI-Tests722 out of 29 merged PRs checked by a CI test -- score normalized to 7
Binary-Artifacts10no binaries found in the repo
Contributors10project has 19 contributing companies or organizations
Dangerous-Workflow10no dangerous workflow patterns detected
Dependency-Update-Tool10update tool detected
License10license file detected
Maintained1030 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 10
Packaging10packaging workflow detected
Security-Policy10security policy file detected
Vulnerabilities100 existing vulnerabilities detected

GitHub Actions workflow audit (zizmor)

29 potential issues in 6 workflow files at this release: 28 high, 0 medium, 0 low severity (medium or high confidence only). Each is a pattern to review, not a confirmed vulnerability.

All findings
SeverityRuleLocationNote
Highunpinned-uses
unpinned action reference
.github/workflows/cd-pypi.yaml:16this step
Highunpinned-uses
unpinned action reference
.github/workflows/cd-pypi.yaml:17this step
Highunpinned-uses
unpinned action reference
.github/workflows/cd-pypi.yaml:36this step
Highunpinned-uses
unpinned action reference
.github/workflows/cd-release.yaml:15this step
Highunpinned-uses
unpinned action reference
.github/workflows/cd-release.yaml:17this step
Hightemplate-injection
code injection via template expansion
.github/workflows/cd-release.yaml:21this step
Highunpinned-uses
unpinned action reference
.github/workflows/cd-release.yaml:27this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:18this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:19this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:34this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:49this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:50this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:70this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:71this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-branch.yaml:80this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr-data.yaml:15this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr-data.yaml:16this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:17this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:18this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:33this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:49this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:50this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:70this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:71this step
Highunpinned-uses
unpinned action reference
.github/workflows/ci-pr.yaml:80this step
Highunpinned-uses
unpinned action reference
.github/workflows/maintenance-v1.yaml:15this step
Highunpinned-uses
unpinned action reference
.github/workflows/maintenance-v1.yaml:18this step
Highunpinned-uses
unpinned action reference
.github/workflows/maintenance-v1.yaml:34this step
Informationalsuperfluous-actions
action functionality is already included by the runner
.github/workflows/cd-release.yaml:27this step

Dependencies (7)

By ecosystem: github 7.

Licenses (as declared in the SBOM): unknown 7.

github (7)
NameVersionLicenseDeclared in
actions/checkoutv7.github/workflows/cd-pypi.yaml
actions/setup-pythonv7.github/workflows/cd-pypi.yaml
codecov/codecov-actionv7.github/workflows/ci-branch.yaml
peter-evans/create-pull-requestv8.github/workflows/maintenance-v1.yaml
pypa/gh-action-pip-auditv1.1.0.github/workflows/ci-branch.yaml
pypa/gh-action-pypi-publishrelease/v1.github/workflows/cd-pypi.yaml
softprops/action-gh-releasev3.github/workflows/cd-release.yaml

History

WeekVersionDependenciesCriticalHighMediumLowUnknownChanges
2026-11-02v1.59.07000002 resolved
2026-11-01v1.59.0710010—

SBOM minimum elements

Scored by sbomlyze on the generated source SBOM. A source SBOM usually lacks supplier and hash data, so these scores mostly reflect what the project's manifests declare.

StandardScoreChecks passedFailed checks
NTIA 2021715/7Supplier Name, Dependency Relationship
CISA 2025505/10Software Producer, Dependency Relationship, License Information, Component Hash, SBOM Author
BSI TR-03183444/9Component Creator, Distribution Licences, SHA-512 Hash, Dependency Relationship, SBOM Creator Contact

Evidence

Downloads for this week: CycloneDX SBOM · Grype report

Permanent copy of the raw SBOM, Grype, OSV-Scanner, and govulncheck output and release checks: release report-2026-11-02, folder supply-chain-shard-*/aws-cloudformation__cfn-lint/.

7 manifests and lockfiles scanned

.github/workflows/cd-pypi.yaml, .github/workflows/cd-release.yaml, .github/workflows/ci-branch.yaml, .github/workflows/ci-pr-data.yaml, .github/workflows/ci-pr.yaml, .github/workflows/maintenance-v1.yaml, pyproject.toml

Full JSON for this project · Atom feed of weekly changes

Badges

shields.io endpoints refreshed with each weekly scan. They report this week's result for the latest release, nothing more.

[![release verification](https://img.shields.io/endpoint?url=https%3A%2F%2Frezmoss.github.io%2Fawesome-security-pipeline%2Fbadges%2Faws-cloudformation%2Fcfn-lint%2Frelease.json)](https://rezmoss.github.io/awesome-security-pipeline/projects/aws-cloudformation/cfn-lint/index.html)

How this report is made

Every Sunday a GitHub Actions workflow resolves each catalog tool to its latest release and runs the checks below. Every tool is installed from its own latest release and verified against its published checksum or digest. Nothing from the scanned projects is built or executed; release binaries are analyzed as files.

How the weekly supply-chain report is producedEvery Sunday the catalog's tools are resolved to their latest release. Manifests and workflows go to Syft, Grype, OSV-Scanner, sbomlyze, and zizmor; the release binary and its signatures go to govulncheck, Cosign, slsa-verifier, and GitHub attestation verification; the repository goes to OpenSSF Scorecard. Results are compared with the previous week and published here.Catalog78 tools in READMELatest releaseGitHub API, every SundayManifests & workflowssparse checkout, no testsRelease binaryLinux amd64 + signaturesRepositoryGitHub & OpenSSF dataSyftSBOMGrype + OSV-Scannerknown advisoriessbomlyzediff + minimum elementszizmorworkflow auditgovulncheckvulnerable code in binaryCosign · slsa-verifier · ghrelease verificationOpenSSF Scorecardrepository practicesCompare with last weekdata branch historyThis reportoverview + project pages
ToolWhat it does hereVersion this week
SyftGenerates a CycloneDX SBOM from each release's manifests and lockfiles.1.55.0
GrypeMatches the SBOM against known vulnerabilities.0.121.0
OSV-ScannerChecks the same files against the OSV database to confirm or add matches.2.7.0
govulncheckFor Go tools, finds which advisories have vulnerable code compiled into the released Linux binary.1.9.0
zizmorAudits the project's GitHub Actions workflows for injection, unpinned actions, and excessive permissions.1.31.1
OpenSSF ScorecardScores repository security practices such as code review, branch protection, and pinned dependencies.5.6.0
CosignVerifies Sigstore signatures on the release binary or its checksums file.3.1.4
slsa-verifierVerifies SLSA build provenance published with the release.2.7.1
GitHub CLI attestationsVerifies GitHub artifact attestations for the release binary.—
sbomlyzeDiffs each SBOM against last week and scores NTIA, CISA, and BSI minimum elements. Maintained by this repository's maintainer.0.6.0