Skip to content

fix(security): pin etils-actions/pypi-auto-publish to commit SHA in publish workflow#710

Open
XananasX7 wants to merge 1 commit into
google-deepmind:mainfrom
XananasX7:fix/security-pin-actions
Open

fix(security): pin etils-actions/pypi-auto-publish to commit SHA in publish workflow#710
XananasX7 wants to merge 1 commit into
google-deepmind:mainfrom
XananasX7:fix/security-pin-actions

Conversation

@XananasX7

Copy link
Copy Markdown

Summary

The pytest_and_autopublish.yml workflow uses etils-actions/pypi-auto-publish@v1 — a mutable tag reference on a third-party action. If the v1 tag is silently redirected (compromised maintainer, tag deletion + recreation, repo takeover), malicious code executes in the job that holds PYPI_API_TOKEN, enabling a supply-chain attack on every downstream user of this package.

Fix

Pin to the immutable commit SHA of the current v1 tag (@e3c4b4af…), with the tag preserved as a comment. All other tag-pinned actions (checkout, setup-python) also pinned to SHAs.

Follows the GitHub security hardening guide.

…to SHAs

Tag-pinned third-party actions (etils-actions/pypi-auto-publish@v1) in
publish workflows can be redirected to malicious code. A compromised tag
would execute with PYPI_API_TOKEN access, enabling a supply-chain attack
on every downstream user. Pin to immutable commit SHA.
@google-cla

google-cla Bot commented Jun 28, 2026

Copy link
Copy Markdown

Thanks for your pull request! It looks like this may be your first contribution to a Google open source project. Before we can look at your pull request, you'll need to sign a Contributor License Agreement (CLA).

View this failed invocation of the CLA check for more information.

For the most up to date status, view the checks section at the bottom of the pull request.

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