Skip to content

Pin GitHub Actions to commit SHAs for supply chain security #75

@coderabbitai

Description

@coderabbitai

Description

Currently, most workflows in this repository use floating major-version tags for GitHub Actions (e.g., actions/checkout@v4, actions/setup-node@v3). While convenient, this approach poses a supply chain security risk: a tag can be force-pushed by the action author (or a compromised account), potentially introducing malicious code into our CI/CD pipelines.

Proposed Solution

Pin all GitHub Action references to their full commit SHAs with inline comments indicating the version:

# Instead of:
uses: actions/checkout@v4

# Use:
uses: actions/checkout@34e114876b0b11c390a56381ad16ebd13914f8d5  # v4.2.2

Benefits

  • Immutability: Commit SHAs cannot be altered, ensuring the exact code is executed
  • Transparency: Version comments maintain readability
  • Security: Eliminates risk of tag-based supply chain attacks

Scope

This affects multiple workflow files in .github/workflows/:

  • template-sync.yml
  • And other workflow files across the repository

References

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions