Skip to content

Harden release workflow shell inputs - #86

Merged
terjekv merged 1 commit into
mainfrom
agent/fix-code-scanning
Aug 29, 2026
Merged

Harden release workflow shell inputs#86
terjekv merged 1 commit into
mainfrom
agent/fix-code-scanning

Conversation

@terjekv

@terjekv terjekv commented Aug 29, 2026

Copy link
Copy Markdown
Contributor

Summary

  • pass the resolved release tag to check-release.sh through a step-scoped environment variable
  • pass the verified release tag to publish-github-release.sh through a step-scoped environment variable
  • record the release-workflow hardening in the Unreleased security changelog

Security impact

This addresses the two template-injection findings reproducible in .github/workflows/release.yml. GitHub expressions are no longer interpolated directly into generated shell source; the shell receives each value as data through RELEASE_TAG and retains the existing quoting.

Release behavior, permissions, trusted-publishing provenance, server compatibility, MSRV, dependencies, and public APIs are unchanged.

Verification

  • zizmor 1.16.3 --offline .github/workflows/release.yml reports no template-injection findings
  • ./scripts/test-release-provenance.sh
  • ./scripts/test-github-release.sh
  • cargo fmt --all -- --check
  • git diff --check

@terjekv
terjekv merged commit 8ce27e6 into main Aug 29, 2026
16 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant